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

# Seal the upload and accept it

> For a platform-upload source, validates the archived build configuration, referenced World definitions and known tier IDs before queuing.



## OpenAPI

````yaml scripts/reference/sources/openapi/management.json POST /v1/management/games/{gameId}/build-publications/{publicationId}:source-complete
openapi: 3.1.0
info:
  title: Summer Creator Management API
  version: summer.management.creator/v1
  description: >-
    Create and manage your Summer Games store games: store page drafts,
    revisions, preview links, media, builds and releases, and the owner approval
    that publishes them.
servers:
  - url: https://api.summer.games
security:
  - developerBearer: []
tags:
  - name: Games
  - name: Items
  - name: Media
paths:
  /v1/management/games/{gameId}/build-publications/{publicationId}:source-complete:
    post:
      tags:
        - Games
      summary: Seal the upload and accept it
      description: >-
        For a platform-upload source, validates the archived build
        configuration, referenced World definitions and known tier IDs before
        queuing. For an exported game, seals the stored object once every
        planned part is present and returns while Platform inspects it in the
        background: the publication stays uploading with progress.phase
        inspecting, then becomes preview_ready with its Build, client pack and
        queued verifications, or failed with errorCode bundle_invalid,
        declaration_mismatch, template_set_unavailable, client_version_conflict,
        artifact_exists, approval_denied or capacity_limit_reached. No creator
        claims about the bytes are accepted. Replays preserve the accepted
        identities.
      operationId: completeBuildPublicationSource
      parameters:
        - $ref: '#/components/parameters/GameID'
        - name: publicationId
          in: path
          required: true
          schema:
            type: string
        - name: Idempotency-Key
          in: header
          required: true
          schema:
            type: string
            minLength: 1
      responses:
        '200':
          description: Upload accepted, or its original acceptance replayed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BuildPublicationAccepted'
        '400':
          description: Build configuration or World definition validation failed
        '409':
          description: >-
            upload_incomplete: a planned part is missing or has the wrong size;
            upload_expired: the storage session expired, request :source-upload
            again and resend every part; source_upload_incomplete: the source
            ZIP is missing or does not match; or another lifecycle conflict.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: >-
            upload_not_verified: the stored exported game does not match its
            declared size
        '503':
          description: >-
            Source validation or storage dependency unavailable; retry the same
            completion
components:
  parameters:
    GameID:
      name: gameId
      in: path
      required: true
      schema:
        type: string
        pattern: ^game_[A-Za-z0-9_-]{8,123}$
  schemas:
    BuildPublicationAccepted:
      type: object
      required:
        - operationId
        - publicationId
        - buildId
        - sourceId
        - state
      properties:
        operationId:
          type: string
        publicationId:
          type: string
        buildId:
          type: string
          description: Preallocated; readable once the publication is preview_ready.
        sourceId:
          type: string
        state:
          type: string
    Error:
      type: object
      additionalProperties: false
      required:
        - error
      properties:
        error:
          type: object
          required:
            - code
            - message
            - requestId
            - retryable
          properties:
            code:
              type: string
            message:
              type: string
            requestId:
              type: string
            retryable:
              type: boolean
  securitySchemes:
    developerBearer:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Your Summer account token. An agent gets it by signing in with OAuth:
        `summer login --store` in the Summer CLI, or the Summer connector in an
        AI app. Agent tokens can call only the operations on these pages.
        Publishing needs an approval from the game's owner first.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.