AlmondTill/G3N API

On this page

mintFeedRunDownload

mutation · in the family System and integration setup

What it does

Get a short-lived download link (5 minutes) for one of a feed’s files.

Mint ONE short-lived presigned download (TTL 300 s) for ONE of a feed's retained run objects. ZERO stored credentials — re-mint per pull under your own session. OWNER-gated ENGINE-side. Template class (hand-derived v74).

What happens

Mint a fresh link per pull — nothing is stored; your session is the credential.

Careful

OWNER-gated — the link downloads exported business data.

Who may call it

Capability area: System and integration setup — Registers, connections and the settings your systems run on.

Arguments

NameTypeRequiredNotes
feedSubscriptionIdID ID!yesNo further notes.
keyString String!yesNo further notes.

Returns

FeedRunDownloadTicket FeedRunDownloadTicket! — The mintFeedRunDownload ticket: fetch the file with a plain GET before it expires; re-mint per pull (the ticket IS the custody — there are no stored feed credentials).

Example request

mutation ExampleMintFeedRunDownload($feedSubscriptionId: ID!, $key: String!) {
  mintFeedRunDownload(feedSubscriptionId: $feedSubscriptionId, key: $key) {
    url
    expiresAt
  }
}

Variables:

{
  "feedSubscriptionId": "01900000-0000-7000-8000-d71fef790000",
  "key": "<key>"
}

Send it with the envelope naming the version: "extensions": {"at": {"version": {"name":"genesis","number":0}}}.

Example response

{
  "data": {
    "mintFeedRunDownload": {
      "url": "https://example.com/hook",
      "expiresAt": "2027-01-31T00:00:00.000Z"
    }
  },
  "extensions": {
    "at": {
      "callId": "01EXAMPLE-CALL-ID",
      "version": {
        "requested": {
          "name": "genesis",
          "number": 0
        },
        "serviced": {
          "name": "genesis",
          "number": 0
        }
      }
    }
  }
}

Errors this call can answer

Used in