get

user.file.get

Returns file metadata plus a short-lived download URL. Binary content is not returned inline — download it separately via the URL.

Auth

Bearer JWT + unsealed vault.

Arguments

Arg Type Description
id ID! File UUID

GraphQL

query($id: ID!) {
  user {
    file {
      get(id: $id) {
        metadata { id label fileName fileSize mimeType version }
        content  { downloadUrl }
      }
    }
  }
}

Response

{
  "data": {
    "user": {
      "file": {
        "get": {
          "metadata": { "id": "a1b2...", "label": "ID scan", "fileName": "passport.pdf", "fileSize": 182344, "mimeType": "application/pdf", "version": 1 },
          "content":  { "downloadUrl": "/user/file/a1b2.../download" }
        }
      }
    }
  }
}

downloadUrl is a relative path on the API host. Append it to the base URL and call with the same Bearer token:

curl -OJ -H "Authorization: Bearer $TOKEN" \
  "https://api.test.geena.eu/user/file/a1b2.../download"

curl (metadata)

curl -X POST https://api.test.geena.eu/graphql \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "query($id: ID!) { user { file { get(id: $id) { metadata { label } content { downloadUrl } } } } }",
    "variables": { "id": "a1b2-..." }
  }'