> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gominerva.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Public session square-logo bytes

> The session's COPIED square (1:1) logo (always image/png after the upload re-encode); the QR-centre mark, an INDEPENDENT asset slot from the wide header logo. UNIFORM 404 with the same body when the session is unknown OR has no square logo, not an existence oracle. On hit: `ETag: "<asset_id>"` and `Cache-Control: public, max-age=31536000, immutable` (safe because a replacement upload mints a new asset id and consumer URLs carry `?v=<asset_id>`).




## OpenAPI

````yaml /api-reference/idv-svc.json get /sessions/{sessionId}/branding/logo/square
openapi: 3.1.0
info:
  title: Minerva IDV API
  version: 1.0.0-draft
  description: >-
    Customer API for identity verification. Create verification sessions for
    profiles, deliver invites, track capture progress, and read review outcomes.
    For the end-to-end flow, see the [IDV Integration
    Guide](/api-reference/idv-integration-guide). Reviewer-safe responses never
    expose storage keys, checksums, wrapped keys, encryption context, raw OCR,
    or raw model output. Decrypted personal data is available only on `GET
    /sessions/{sessionId}/data`, to an authenticated in-scope principal, with
    fail-closed auditing.
servers:
  - url: https://api.gominerva.com/idv/v1
    description: The production API server for Minerva identity verification
security: []
tags:
  - name: sessions
    description: >-
      Verification sessions and invite delivery (application or dashboard
      authentication).
  - name: capture
    description: End-user capture flow (session or invite credentials).
  - name: review
    description: Review decisions and audited structured-data access.
  - name: workflows
    description: Workflow configuration for verification sessions.
  - name: themes
    description: Branding themes and managed logo assets.
paths:
  /sessions/{sessionId}/branding/logo/square:
    get:
      tags:
        - sessions
      summary: Public session square-logo bytes
      description: >
        The session's COPIED square (1:1) logo (always image/png after the
        upload re-encode); the QR-centre mark, an INDEPENDENT asset slot from
        the wide header logo. UNIFORM 404 with the same body when the session is
        unknown OR has no square logo, not an existence oracle. On hit: `ETag:
        "<asset_id>"` and `Cache-Control: public, max-age=31536000, immutable`
        (safe because a replacement upload mints a new asset id and consumer
        URLs carry `?v=<asset_id>`).
      parameters:
        - $ref: '#/components/parameters/SessionId'
      responses:
        '200':
          description: The copied square logo bytes
          content:
            image/png:
              schema:
                type: string
                format: binary
        '404':
          $ref: '#/components/responses/NotFound'
      security: []
components:
  parameters:
    SessionId:
      name: sessionId
      in: path
      required: true
      schema:
        type: string
  responses:
    NotFound:
      description: Session/workflow not found or out of scope (indistinguishable by design)
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    Error:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - code
            - message
          properties:
            code:
              type: string
              example: idv_session_not_found
            message:
              type: string

````