Data download endpoint for outbound files

GET /api/v3.0/{engagementSid}/files/{outboundFileCategory}/{uniqueFileName}

Download a file from Integration Hub. This endpoint allows you to retrieve files that have been created by Adra.

Response Format

  • Returns file as binary stream
  • Content-Type matches the original file format
  • Headers include:
    • Content-Length: File size in bytes
    • Content-Type: File MIME type
    • Last-Modified: Timestamp of last modification
    • ETag: File version identifier

Common Use Cases

  1. Downloading created reports
  2. Retrieving journal entries

Error Handling

  • 404: File not found or deleted
  • 403: Insufficient permissions
  • 401: Invalid or expired token

Best Practices

  • Cache files using ETag header
  • Implement retry logic with exponential backoff
  • Handle large files with streaming

Headers

  • x-gw-stloc-hint string

    Optional HTTP header to optimize request routing and reduce latency. Possible values: EUWE-01 (West Europe), AUEA-01 (Australia East), USEA-01 (East US), NO01 (Norway East).

  • If-Modified-Since string(date-time)

    Browser cache instruction (optional)

  • If-None-Match string

    Browser cache instruction (optional).

  • If-Unmodified-Since string(date-time)

    Browser cache instruction (optional).

  • If-Match string

    Browser cache instruction (optional).

Path parameters

  • engagementSid string Required

    Short identifier for engagement (as in URLs)

  • outboundFileCategory string Required

    Value is MatcherReport.

  • uniqueFileName string Required

    The name of the file

Responses

  • 200 */*

    Success

    Hide headers attributes Show headers attributes
    • ETag string

      The file's ETag (hash)

    • Last-Modified string(date-time)

      The file's modified date

  • 304

    Not modified

    Hide headers attributes Show headers attributes
    • ETag string

      The file's ETag (hash)

    • Last-Modified string(date-time)

      The file's modified date

  • 400 application/problem+json

    Bad Request: see problem details for more information

    Hide response attributes Show response attributes object
    • type string | null
    • title string | null
    • status integer(int32) | null
    • detail string | null
    • instance string | null
  • 401 application/problem+json

    Unauthorized: Missing an authorization header or token, or the token has expired

    Hide response attributes Show response attributes object
    • type string | null
    • title string | null
    • status integer(int32) | null
    • detail string | null
    • instance string | null
  • 403 application/problem+json

    Forbidden: You don't have access to the engagement, the engagement doesn't have IH or you don't have IH access on the engagement, or the client is trying to access an unauthorized tenant resource

    Hide response attributes Show response attributes object
    • type string | null
    • title string | null
    • status integer(int32) | null
    • detail string | null
    • instance string | null
  • 404 application/problem+json

    Not found

    Hide response attributes Show response attributes object
    • type string | null
    • title string | null
    • status integer(int32) | null
    • detail string | null
    • instance string | null
  • 412 application/problem+json

    Precondition Failed: Access control list (ACL) validation failed

    Hide response attributes Show response attributes object
    • type string | null
    • title string | null
    • status integer(int32) | null
    • detail string | null
    • instance string | null
  • 500 application/problem+json

    Internal Server Error

    Hide response attributes Show response attributes object
    • type string | null
    • title string | null
    • status integer(int32) | null
    • detail string | null
    • instance string | null
  • default application/problem+json

    Error

    Hide response attributes Show response attributes object
    • type string | null
    • title string | null
    • status integer(int32) | null
    • detail string | null
    • instance string | null
GET /api/v3.0/{engagementSid}/files/{outboundFileCategory}/{uniqueFileName}
curl \
 --request GET 'https://integrationhub.adra.com/api/v3.0/{engagementSid}/files/{outboundFileCategory}/{uniqueFileName}' \
 --header "Authorization: Bearer $ACCESS_TOKEN" \
 --header "x-gw-stloc-hint: string" \
 --header "If-Modified-Since: 2025-05-04T09:42:00Z" \
 --header "If-None-Match: string" \
 --header "If-Unmodified-Since: 2025-05-04T09:42:00Z" \
 --header "If-Match: string"
Response examples (200)
# Headers
ETag: string
Last-Modified: 2025-05-04T09:42:00Z

# Payload
@file
Response examples (400)
{
  "type": "string",
  "title": "string",
  "status": 42,
  "detail": "string",
  "instance": "string"
}
Response examples (401)
{
  "type": "string",
  "title": "string",
  "status": 42,
  "detail": "string",
  "instance": "string"
}
Response examples (403)
{
  "type": "https://adra.com/errors/forbidden",
  "title": "Forbidden",
  "detail": "You don't have access to the engagement, the engagement doesn't have IH or you don't have IH access on the engagement",
  "status": 403
}
{
  "type": "https://adra.com/errors/forbidden",
  "title": "Forbidden",
  "detail": "The client is trying to access an unauthorized tenant resource",
  "status": 403
}
Response examples (404)
{
  "type": "string",
  "title": "string",
  "status": 42,
  "detail": "string",
  "instance": "string"
}
Response examples (412)
{
  "type": "string",
  "title": "string",
  "status": 42,
  "detail": "string",
  "instance": "string"
}
Response examples (500)
{
  "type": "string",
  "title": "string",
  "status": 42,
  "detail": "string",
  "instance": "string"
}
Response examples (default)
{
  "type": "string",
  "title": "string",
  "status": 42,
  "detail": "string",
  "instance": "string"
}