Sign in to run requests with your own sandbox key. Sign in

List credit-report PDFs for an execution

GET /api/v1/executions/{id}/report_artifacts
executions:read

Metadata only; the whole list is returned in one response (not paginated — page / per_page are ignored). Download each file with getReportArtifact, which needs executions:read:full. Requires executions:read.

Path parameters

NameTypeDescription
idrequired integer

Execution id. Scoped to the calling api_client; a foreign id returns 404.

Responses

  • 200 Artifact list application/json
    • data array of Artifact
      • id integer Artifact id; pass it as `artifact_id` to the matching download endpoint.
      • object string One of report_artifact notice_artifact
      • execution_id integer
      • filename string
      • content_type string
      • byte_size integer
      • generated_at string (date-time), nullable
      • downloadable boolean `false` when the record exists but its file is no longer stored. Downloading it then returns `404 not_found`.
    • meta Meta Meta for collections that are NOT paginated (artifact lists). The whole collection is always returned in one response and the `page` / `per_page` query parameters are ignored. The pagination fields are still present for shape compatibility but hold constant values: `page` is always 1, `total_pages` is always 1, and `per_page` equals `total_count`.

      Schema: StaticCollectionMeta

      • request_id string required Correlation id for this request. Also sent as the `X-Request-Id` response header; quote it when contacting support.
      • object string required
      • total_count integer required Number of items in `data`.
      • page integer Always 1. One of 1
      • per_page integer Always equal to `total_count`.
      • total_pages integer Always 1. One of 1
    200 example
    {
      "data": [
        {
          "id": 9911,
          "object": "report_artifact",
          "execution_id": 1842,
          "filename": "Equifax_Credit_Report.pdf",
          "content_type": "application/pdf",
          "byte_size": 184223,
          "generated_at": "2026-09-09T14:00:07Z"
        }
      ],
      "meta": {
        "object": "report_artifact",
        "total_count": 1,
        "page": 1,
        "per_page": 1,
        "total_pages": 1,
        "request_id": "7d4c2f48-9a1b-4c3d-8e2f-1a2b3c4d5e6f"
      }
    }
  • 401 Missing, malformed, expired or revoked bearer token. The WWW-Authenticate header carries the RFC 6750 challenge. application/json

    Schema: ErrorEnvelope

    401 example
    {
      "error": {
        "code": "unauthorized",
        "message": "A valid bearer token is required.",
        "details": [],
        "request_id": "7d4c2f48-9a1b-4c3d-8e2f-1a2b3c4d5e6f",
        "doc_url": "https://cascades.crscreditapi.com/docs/api/errors/unauthorized"
      }
    }
  • 403 Token does not hold the required scope. details lists the scope(s) that were checked. application/json

    Schema: ErrorEnvelope

    403 example
    {
      "error": {
        "code": "insufficient_scope",
        "message": "This token does not have the required scope.",
        "details": [
          {
            "field": "scope",
            "message": "executions:write"
          }
        ],
        "request_id": "7d4c2f48-9a1b-4c3d-8e2f-1a2b3c4d5e6f",
        "doc_url": "https://cascades.crscreditapi.com/docs/api/errors/insufficient_scope"
      }
    }
  • 404 Resource does not exist or belongs to another tenant / api_client application/json

    Schema: ErrorEnvelope

    404 example
    {
      "error": {
        "code": "not_found",
        "message": "The requested resource was not found.",
        "details": [],
        "request_id": "7d4c2f48-9a1b-4c3d-8e2f-1a2b3c4d5e6f",
        "doc_url": "https://cascades.crscreditapi.com/docs/api/errors/not_found"
      }
    }
  • 429 Rate limit exceeded (60 req/min per IP on /api/v1, 600 req/hour per token prefix, or 300 req/5 min per IP globally). The body is the standard error envelope and Retry-After gives the seconds until the window resets. application/json

    Schema: ErrorEnvelope

    429 example
    {
      "error": {
        "code": "rate_limited",
        "message": "Rate limit exceeded. Retry later.",
        "details": [],
        "request_id": "7d4c2f48-9a1b-4c3d-8e2f-1a2b3c4d5e6f",
        "doc_url": "https://cascades.crscreditapi.com/docs/api/errors/rate_limited"
      }
    }
Was this page helpful?