> ## Documentation Index
> Fetch the complete documentation index at: https://docs.magnific.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Flows - Get run status

> Retrieve the current status and results of a flow execution run.

Use this endpoint to **poll** the status of a run after calling the
`POST /v1/ai/flows/{flow-id}/run` endpoint. The `run_id` path parameter
corresponds to the `workflow_run_identifier` returned in the run response.

**Polling strategy:**
- Wait 2-3 seconds after starting the run before the first poll
- Poll every 3-5 seconds
- When `status` is `completed`, the `result` field contains download URLs
- When `status` is `failed`, the `error_message` field describes the failure

**Asset URLs** in the `result` field are temporary and valid for **12 hours**.

**Statuses:**
| Status | Description |
|--------|-------------|
| `pending` | Run is queued but has not started yet |
| `running` | Flow is executing |
| `completed` | Finished successfully, `result` is available |
| `completed_with_errors` | Execution finished but some nodes failed |
| `failed` | Execution failed, see `error_message` |
| `cancelled` | Execution was cancelled |




## OpenAPI

````yaml get /v1/ai/flows/runs/{run-id}
openapi: 3.0.0
info:
  description: >-
    The Magnific API is your gateway to a vast collection of high-quality
    digital resources for your applications and projects. As a leading platform,
    it offers a wide range of graphics, including vectors, photos,
    illustrations, icons, PSD templates, and more, all curated by talented
    designers from around the world.
  title: Magnific API
  version: 1.0.0
servers:
  - description: B2B API Production V1
    url: https://api.magnific.com
security:
  - magnificApiKey: []
paths:
  /v1/ai/flows/runs/{run-id}:
    get:
      tags:
        - flows
      summary: Flows - Get run status
      description: >
        Retrieve the current status and results of a flow execution run.


        Use this endpoint to **poll** the status of a run after calling the

        `POST /v1/ai/flows/{flow-id}/run` endpoint. The `run_id` path parameter

        corresponds to the `workflow_run_identifier` returned in the run
        response.


        **Polling strategy:**

        - Wait 2-3 seconds after starting the run before the first poll

        - Poll every 3-5 seconds

        - When `status` is `completed`, the `result` field contains download
        URLs

        - When `status` is `failed`, the `error_message` field describes the
        failure


        **Asset URLs** in the `result` field are temporary and valid for **12
        hours**.


        **Statuses:**

        | Status | Description |

        |--------|-------------|

        | `pending` | Run is queued but has not started yet |

        | `running` | Flow is executing |

        | `completed` | Finished successfully, `result` is available |

        | `completed_with_errors` | Execution finished but some nodes failed |

        | `failed` | Execution failed, see `error_message` |

        | `cancelled` | Execution was cancelled |
      operationId: get_flow_run
      parameters:
        - description: >
            Unique identifier (SQID) of the flow run. This is the

            `workflow_run_identifier` value returned by the `POST
            /v1/ai/flows/{flow-id}/run` endpoint.
          in: path
          name: run-id
          required: true
          schema:
            example: omps2OH829
            type: string
      responses:
        '200':
          content:
            application/json:
              examples:
                completed:
                  summary: Completed run with image results
                  value:
                    data:
                      run_id: omps2OH829
                      status: completed
                      app_id: uqzQLDr2Aw
                      started_at: '2026-02-25T12:00:00.000Z'
                      completed_at: '2026-02-25T12:02:00.000Z'
                      error_message: null
                      result:
                        images:
                          - id: abc123
                            url: >-
                              https://pikaso.cdnpk.net/private/production/1234567890/render.png?token=exp_1234567890~hmac_abc123
                            tool: text-to-image
                            duration: null
                            width: 1024
                            height: 1024
                            created_at: '2026-02-25T12:02:00.000Z'
                        videos: []
                        audios: []
                running:
                  summary: Run still in progress
                  value:
                    data:
                      run_id: omps2OH829
                      status: running
                      app_id: uqzQLDr2Aw
                      started_at: '2026-02-25T12:00:00.000Z'
                      completed_at: null
                      error_message: null
                      result: null
                failed:
                  summary: Failed run
                  value:
                    data:
                      run_id: omps2OH829
                      status: failed
                      app_id: uqzQLDr2Aw
                      started_at: '2026-02-25T12:00:00.000Z'
                      completed_at: '2026-02-25T12:01:30.000Z'
                      error_message: >-
                        Node 'image-upscaler' failed: input image exceeds
                        maximum resolution
                      result: null
              schema:
                $ref: '#/components/schemas/get_flow_run_200_response'
          description: OK - Run status and result.
        '401':
          content:
            application/json:
              examples:
                invalid_api_key:
                  summary: API key is not valid
                  value:
                    message: Invalid API key
                missing_api_key:
                  summary: API key is not provided
                  value:
                    message: Missing API key
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_400_response'
          description: >-
            Unauthorized - The client must authenticate itself to get the
            requested response.
        '403':
          content:
            application/json:
              examples:
                user_not_authorized:
                  summary: User has not privileges to access some resource
                  value:
                    message: User is not authorized to access this resource
                user_not_owner:
                  summary: Collection author id is different from current user's id
                  value:
                    message: User is not owner of requested collection
                item_is_premium:
                  summary: The user cannot download this item because it is premium
                  value:
                    message: The user cannot download this item because it is premium
                creator_not_authorized:
                  summary: Creator has not privileges to access some resource
                  value:
                    message: Creator is not authorized to access this resource
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_400_response'
          description: >-
            Forbidden - The client does not have permission to access the
            requested resource.
        '404':
          content:
            application/json:
              examples:
                ai_resource_not_found:
                  summary: AI resource with provided id does not exist
                  value:
                    message: AI resource not found
                collection_not_found:
                  summary: Collection with provided id does not exist
                  value:
                    message: Collection not found
                resource_not_found:
                  summary: Resource with provided id does not exist
                  value:
                    message: Resource not found
                resources_not_found:
                  summary: Resources not found
                  value:
                    message: Resources not found
                user_not_found:
                  summary: User with provided id does not exist
                  value:
                    message: User not found
                video_not_found:
                  summary: Video with provided id does not exist
                  value:
                    message: Video not found
                video_assets_not_found:
                  summary: Video with provided id has not associated assets
                  value:
                    message: Video not found
                icon_not_found:
                  summary: Icon with provided id does not exist
                  value:
                    message: Icon not found
                author_not_found:
                  summary: Author with provided id does not exist
                  value:
                    message: Author not found
                developer_not_found:
                  summary: Developer with provided email does not exist
                  value:
                    message: Developer not found
                country_not_found:
                  summary: Country with provided code does not exist
                  value:
                    message: Country not found
                generic_not_found:
                  summary: Not Found
                  value:
                    message: Not found
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_400_response'
          description: Not Found - The server can not find the requested resource.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_500_response'
          description: >-
            Internal Server Error - The server has encountered a situation it
            doesn't know how to handle.
        '503':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_503_response'
          description: Service Unavailable
components:
  schemas:
    get_flow_run_200_response:
      example:
        data:
          error_message: error_message
          result:
            images:
              - duration: 0.8008281904610115
                width: 6
                created_at: '2026-02-11T10:14:15.000Z'
                id: LSFgqqrswO
                url: >-
                  https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
                tool: text-to-image
                height: 1
              - duration: 0.8008281904610115
                width: 6
                created_at: '2026-02-11T10:14:15.000Z'
                id: LSFgqqrswO
                url: >-
                  https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
                tool: text-to-image
                height: 1
            audios:
              - duration: 0.8008281904610115
                width: 6
                created_at: '2026-02-11T10:14:15.000Z'
                id: LSFgqqrswO
                url: >-
                  https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
                tool: text-to-image
                height: 1
              - duration: 0.8008281904610115
                width: 6
                created_at: '2026-02-11T10:14:15.000Z'
                id: LSFgqqrswO
                url: >-
                  https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
                tool: text-to-image
                height: 1
            videos:
              - duration: 0.8008281904610115
                width: 6
                created_at: '2026-02-11T10:14:15.000Z'
                id: LSFgqqrswO
                url: >-
                  https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
                tool: text-to-image
                height: 1
              - duration: 0.8008281904610115
                width: 6
                created_at: '2026-02-11T10:14:15.000Z'
                id: LSFgqqrswO
                url: >-
                  https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
                tool: text-to-image
                height: 1
          completed_at: '2026-02-25T12:02:00.000Z'
          run_id: omps2OH829
          started_at: '2026-02-25T12:00:00.000Z'
          app_id: uqzQLDr2Aw
          status: completed
      properties:
        data:
          $ref: '#/components/schemas/run-detail'
      required:
        - data
      type: object
    get_all_style_transfer_tasks_400_response:
      example:
        message: message
      properties:
        message:
          type: string
      type: object
    get_all_style_transfer_tasks_500_response:
      example:
        message: Internal Server Error
      properties:
        message:
          example: Internal Server Error
          type: string
      type: object
    get_all_style_transfer_tasks_503_response:
      example:
        message: Service Unavailable. Please try again later.
      properties:
        message:
          example: Service Unavailable. Please try again later.
          type: string
      type: object
    run-detail:
      description: Status and result of a single flow execution run.
      example:
        error_message: error_message
        result:
          images:
            - duration: 0.8008281904610115
              width: 6
              created_at: '2026-02-11T10:14:15.000Z'
              id: LSFgqqrswO
              url: >-
                https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
              tool: text-to-image
              height: 1
            - duration: 0.8008281904610115
              width: 6
              created_at: '2026-02-11T10:14:15.000Z'
              id: LSFgqqrswO
              url: >-
                https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
              tool: text-to-image
              height: 1
          audios:
            - duration: 0.8008281904610115
              width: 6
              created_at: '2026-02-11T10:14:15.000Z'
              id: LSFgqqrswO
              url: >-
                https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
              tool: text-to-image
              height: 1
            - duration: 0.8008281904610115
              width: 6
              created_at: '2026-02-11T10:14:15.000Z'
              id: LSFgqqrswO
              url: >-
                https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
              tool: text-to-image
              height: 1
          videos:
            - duration: 0.8008281904610115
              width: 6
              created_at: '2026-02-11T10:14:15.000Z'
              id: LSFgqqrswO
              url: >-
                https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
              tool: text-to-image
              height: 1
            - duration: 0.8008281904610115
              width: 6
              created_at: '2026-02-11T10:14:15.000Z'
              id: LSFgqqrswO
              url: >-
                https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
              tool: text-to-image
              height: 1
        completed_at: '2026-02-25T12:02:00.000Z'
        run_id: omps2OH829
        started_at: '2026-02-25T12:00:00.000Z'
        app_id: uqzQLDr2Aw
        status: completed
      properties:
        run_id:
          description: >-
            Unique identifier (SQID) for this execution run. Matches the
            `workflow_run_identifier` returned by the run endpoint.
          example: omps2OH829
          type: string
        status:
          $ref: '#/components/schemas/run-status'
        app_id:
          description: >-
            SQID of the flow that was executed. (Field name retained from the
            underlying execution payload.)
          example: uqzQLDr2Aw
          type: string
        started_at:
          description: >-
            ISO 8601 timestamp when execution started. Null while the run is
            pending.
          example: '2026-02-25T12:00:00.000Z'
          format: date-time
          nullable: true
          type: string
        completed_at:
          description: >-
            ISO 8601 timestamp when execution completed. Null while the run is
            still in progress.
          example: '2026-02-25T12:02:00.000Z'
          format: date-time
          nullable: true
          type: string
        error_message:
          description: >-
            Error details when the execution fails or completes with errors.
            Null on success.
          nullable: true
          type: string
          example: null
        result:
          $ref: '#/components/schemas/run_detail_result'
      required:
        - app_id
        - completed_at
        - error_message
        - result
        - run_id
        - started_at
        - status
      type: object
    run-status:
      description: |
        Execution status of the flow run:
        - `pending`: Run is queued but has not started yet
        - `running`: Flow is executing
        - `completed`: Finished successfully, result is available
        - `completed_with_errors`: Execution finished but some nodes failed
        - `failed`: Execution failed entirely
        - `cancelled`: Execution was cancelled
      enum:
        - pending
        - running
        - completed
        - completed_with_errors
        - failed
        - cancelled
      example: completed
      type: string
    run_detail_result:
      description: >
        Execution output. Contains arrays of generated assets grouped by media
        type.

        Null while the run is still in progress or if the execution failed.


        Asset URLs are **temporary** and valid for 12 hours.
      example:
        images:
          - duration: 0.8008281904610115
            width: 6
            created_at: '2026-02-11T10:14:15.000Z'
            id: LSFgqqrswO
            url: >-
              https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
            tool: text-to-image
            height: 1
          - duration: 0.8008281904610115
            width: 6
            created_at: '2026-02-11T10:14:15.000Z'
            id: LSFgqqrswO
            url: >-
              https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
            tool: text-to-image
            height: 1
        audios:
          - duration: 0.8008281904610115
            width: 6
            created_at: '2026-02-11T10:14:15.000Z'
            id: LSFgqqrswO
            url: >-
              https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
            tool: text-to-image
            height: 1
          - duration: 0.8008281904610115
            width: 6
            created_at: '2026-02-11T10:14:15.000Z'
            id: LSFgqqrswO
            url: >-
              https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
            tool: text-to-image
            height: 1
        videos:
          - duration: 0.8008281904610115
            width: 6
            created_at: '2026-02-11T10:14:15.000Z'
            id: LSFgqqrswO
            url: >-
              https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
            tool: text-to-image
            height: 1
          - duration: 0.8008281904610115
            width: 6
            created_at: '2026-02-11T10:14:15.000Z'
            id: LSFgqqrswO
            url: >-
              https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
            tool: text-to-image
            height: 1
      nullable: true
      properties:
        images:
          description: Generated image assets.
          items:
            $ref: '#/components/schemas/webhook-result-item'
          type: array
        videos:
          description: Generated video assets.
          items:
            $ref: '#/components/schemas/webhook-result-item'
          type: array
        audios:
          description: Generated audio assets.
          items:
            $ref: '#/components/schemas/webhook-result-item'
          type: array
      type: object
    webhook-result-item:
      description: A single generated asset from the flow execution.
      example:
        duration: 0.8008281904610115
        width: 6
        created_at: '2026-02-11T10:14:15.000Z'
        id: LSFgqqrswO
        url: >-
          https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
        tool: text-to-image
        height: 1
      properties:
        id:
          description: Unique identifier of the generated asset.
          example: LSFgqqrswO
          type: string
        url:
          description: Download URL for the generated asset.
          example: >-
            https://pikaso.cdnpk.net/private/production/3280037299/render.png?token=...
          format: uri
          type: string
        tool:
          description: >-
            The AI tool that produced this asset (e.g. `text-to-image`,
            `image-upscaler`).
          example: text-to-image
          type: string
        duration:
          description: Duration in seconds (for video/audio assets). Null for images.
          nullable: true
          type: number
        width:
          description: Width in pixels.
          nullable: true
          type: integer
        height:
          description: Height in pixels.
          nullable: true
          type: integer
        created_at:
          description: ISO 8601 creation timestamp of the asset.
          example: '2026-02-11T10:14:15.000Z'
          format: date-time
          type: string
      type: object
  securitySchemes:
    magnificApiKey:
      description: >
        Your Magnific API key. Required for authentication. [Learn how to obtain
        an API key](https://docs.magnific.com/quickstart)
      in: header
      name: x-magnific-api-key
      type: apiKey

````