# Get Activity Retry History By Identifiers

Retrieve the retry history for a specific activity by release ID, phase identifier, and activity identifier

Endpoint: GET /rmg/api/orchestration/execution/release/{releaseId}/phase/{phaseIdentifier}/activity/{activityIdentifier}/retry-history
Version: 1.0
Security: x-api-key

## Path parameters:

  - `releaseId` (string, required)
    The ID of the release

  - `phaseIdentifier` (string, required)
    The identifier of the phase

  - `activityIdentifier` (string, required)
    The identifier of the activity

## Query parameters:

  - `activityExecutionId` (string)
    The ID of the activity execution

  - `cursor` (string)
    Cursor Based Pagination

  - `limit` (number)
    The number of records expected

  - `maxRetryIndex` (integer)
    Maximum retry index to include (optional filter)

  - `orgIdentifier` (string)
    Organisation Identifier

  - `projectIdentifier` (string)
    Project Identifier

## Header parameters:

  - `Harness-Account` (string, required)
    Account Identifier

## Response 200 fields (application/json):

  - `retries` (array, required)
    List of retry attempts for the activity

  - `retries.activityExecutionId` (string, required)
    The ID of the activity execution

  - `retries.phaseId` (string)
    The ID of the phase this activity belongs to

  - `retries.activityName` (string, required)
    The name of the activity

  - `retries.identifier` (string, required)
    The identifier of the activity

  - `retries.retryIndex` (integer, required)
    The retry index (0 for original, 1+ for retries)

  - `retries.status` (string, required)
    Status of orchestration execution activities
    Enum: "SCHEDULED", "RUNNING", "OUTPUT_WAITING", "SUCCEEDED", "FAILED", "ABORTED", "ON_HOLD", "RETRIED", "IGNORED", "SKIPPED", "QUEUED"

  - `retries.createdAt` (integer, required)
    Creation timestamp in milliseconds

  - `retries.startTs` (integer)
    Start timestamp in milliseconds

  - `retries.endTs` (integer)
    End timestamp in milliseconds

  - `retries.failureInfo` (object)
    Information about a failure that occurred

  - `retries.failureInfo.msg` (string, required)
    The failure message describing what went wrong

  - `retries.failureInfo.code` (string)
    The failure code indicating the type of failure

  - `retries.canRetry` (boolean)
    Whether this activity can be retried (true if status is not RETRIED, false otherwise)

  - `retries.yaml` (string, required)
    YAML representation of the activity

  - `retries.triggerInfo` (object)
    Trigger information for an activity

  - `retries.triggerInfo.identifier` (string,null)
    Identifier of the person who triggered the activity

  - `retries.triggerInfo.name` (string,null)
    Name of the person who triggered the activity

  - `retries.triggerInfo.email` (string,null)
    Email of the person who triggered the activity

  - `retries.pipeline` (object)
    Pipeline execution information for activities

  - `retries.pipeline.executionId` (string, required)
    ID of the pipeline execution

  - `retries.pipeline.identifier` (string, required)
    Pipeline identifier for PIPELINE type activities in format org/project/pipelineIdentifier

  - `retries.subprocess` (object)
    Subprocess execution information for activities

  - `retries.subprocess.releaseId` (string, required)
    ID of the subprocess release

  - `retries.subprocess.identifier` (string, required)
    Process identifier for SUBPROCESS type activities

  - `last` (boolean, required)
    Whether this is the last page of results

  - `nextRequest` (object, required)

  - `nextRequest.cursor` (string)

  - `nextRequest.limit` (integer)

## Response 400 fields (application/json):

  - `message` (string, required)
    error message detail

  - `code` (string)
    canonical error code name
    Enum: "BAD_REQUEST", "UNAUTHORIZED", "FORBIDDEN", "NOT_FOUND", "INTERNAL_SERVER_ERROR"


