---
title: "Get a template publication"
method: GET
path: "/v1/templates/{id}/publications/{publicationId}"
tags: ["Templates"]
---

# Get a template publication

`GET /v1/templates/{id}/publications/{publicationId}`

## Request

- Base URL: `https://api.samva.dev`
- URL: `https://api.samva.dev/v1/templates/{id}/publications/{publicationId}`
- Auth: API key in header `x-api-key`

Returns one immutable publication and its exact build receipt.

## Path parameters

- `id` string, required
- `publicationId` string, required

## Response `200`

Success

- object
  - `id` string, required
  - `organizationId` string, required
  - `projectId` string, required
  - `templateId` string, required
  - `inputContractId` string, required
  - `commitSha` string, required
  - `treeSha` string, required
  - `entryPath` string, required
  - `buildIdentity` string, required
  - `manifest` object, required
    - `templateKey` string, required
    - `compiled` object, required
      - `version` integer, required
      - `digest` string, required
      - `bytes` integer, required
    - `compiler` string, required
    - `input` object, required
      - `schemaDigest` string, required
      - `contractDigest` string, required
    - `assets` object, required
      - `base` string, required
      - `entries` object[], required
        - `path` string, required
        - `fileName` string, required
        - `digest` string, required
        - `bytes` integer, required
        - `contentType` string, required
        - `url` string, required
    - `source` object, required
      - `commitSha` string, required
      - `treeSha` string, required
      - `entryPath` string, required
      - `treeDigest` string, required
    - `brand` object
      - `slug` string, required
      - `css` string, required
      - `assets` BrandAssets, required
        - `logoUrl` string, nullable
        - `logoDarkUrl` string, nullable
        - `iconUrl` string, nullable
      - `footer` BrandFooter, required
        - `companyName` string, nullable
        - `address` BrandAddress
          - `street1` string, required
          - `street2` string, nullable
          - `city` string, required
          - `region` string, required
          - `postalCode` string, required
          - `country` string, required
        - `socialLinks` BrandSocialLink[], nullable
          - `label` string, required
          - `url` string, required
      - `renderedFooter` BrandRenderedFooter, required
        - `html` string, required
        - `text` string, required
        - `headCss` string, required
      - `digest` string, required
      - `rendersFooter` 'every' | 'some' | 'none', required
  - `compiled` object, required
    - `key` string, required
    - `digest` string, required
  - `assets` object[], required
    - `path` string, required
    - `fileName` string, required
    - `digest` string, required
    - `bytes` integer, required
    - `contentType` string, required
    - `url` string, required
  - `warnings` object[], required
    - `code` string, required
    - `severity` 'error' | 'warning' | 'info', required
    - `message` string, required
    - `origins` object[], required
      - `fileName` string, required
      - `lineNumber` integer, required
      - `columnNumber` integer, required
    - `clients` string[], nullable
    - `notes` string, nullable
    - `provenance` string, nullable
    - `fixtures` string[], nullable
    - `occurrences` array[], nullable
      - object[]
        - `fileName` string, required
        - `lineNumber` integer, required
        - `columnNumber` integer, required
    - `compatibility` object, nullable
      - `assessment` 'risk' | 'degradation' | 'unverified' | 'not-applicable', required
      - `title` string, required
  - `incompatibilities` object[], required
    - `code` string, required
    - `severity` 'error' | 'warning' | 'info', required
    - `message` string, required
    - `origins` object[], required
      - `fileName` string, required
      - `lineNumber` integer, required
      - `columnNumber` integer, required
    - `clients` string[], nullable
    - `notes` string, nullable
    - `provenance` string, nullable
    - `fixtures` string[], nullable
    - `occurrences` array[], nullable
      - object[]
        - `fileName` string, required
        - `lineNumber` integer, required
        - `columnNumber` integer, required
    - `compatibility` object, nullable
      - `assessment` 'risk' | 'degradation' | 'unverified' | 'not-applicable', required
      - `title` string, required
  - `status` string, required
  - `publishedAt` string, required
  - `publishedBy` string, nullable, required
  - `createdAt` string, required

## Other responses

- `401`: UnauthorizedError
- `403`: ForbiddenError
- `404`: ResourceNotFoundError
- `422`: ValidationError
- `500`: InternalError
- `504`: GatewayTimeoutError

---

[API](https://skmtc.dev/samva/apis/samva-api.md) · [All operations](https://skmtc.dev/samva/apis/samva-api/llms.txt) · [OpenAPI document](https://skmtc.dev/samva/apis/samva-api/revisions/a99408542cc3?raw)
