---
title: "Internal builder records a validated deploy manifest and queues the follow-up deploy job"
method: POST
path: "/internal/runner/jobs/{jobId}/build-complete"
---

# Internal builder records a validated deploy manifest and queues the follow-up deploy job

`POST /internal/runner/jobs/{jobId}/build-complete`

## Request

- Base URL: `https://api.eurobase.dev`
- URL: `https://api.eurobase.dev/internal/runner/jobs/{jobId}/build-complete`
- Auth: none declared

## Request body

- union
  - object
    - `deployManifest` union, required
      - object
        - `schemaVersion` 'app-deploy-manifest-paketo-v1', required
        - `deploymentId` string, required
        - `outputKind` 'runtime_image', required
        - `source` object, required
          - `repoFullName` string, required
          - `commitSha` string, required
          - `rootDir` string, required
          - `framework` 'next' | 'astro' | 'svelte-kit' | 'nuxt' | 'react-router' | 'vite' | 'hono' | 'nestjs' | 'fastify' | 'express' | 'django' | 'fastapi' | 'flask' | 'laravel' | 'rails' | 'node' | 'python' | 'php' | 'ruby' | 'go' | 'java' | 'dotnet' | 'static' | 'unknown'
        - `build` object, required
          - `engine` 'paketo-v1', required
          - `policyVersion` string, required
          - `policyHash` string, required
          - `platform` string, required
          - `builderImage` string, required
          - `lifecycleImage` string, required
          - `runImage` string, required
          - `bootstrapImage` string, required
          - `publisherVersion` string, required
          - `publisherSha256` string, required
          - `buildpackSetHash` string, required
          - `profileHash` string, required
          - `overlayHash` string, required
          - `phaseTimingsMs` object, nullable, required
            - `supplyVerificationMs` integer, required
            - `sourceAcquisitionMs` integer, required
            - `sourceBoundaryMs` integer, required
            - `isolationStartupMs` integer, required
            - `planningMs` integer, required
            - `buildkitSolveAndRuntimeAssemblyMs` integer, required
            - `egressValidationMs` integer, required
            - `workerReleaseMs` integer, required
            - `imageArchiveLoadMs` integer, required
            - `registryAuthMs` integer, required
            - `registryPushMs` integer, required
            - `digestReadbackMs` integer, required
            - `publicationOverheadMs` integer, required
            - `cleanupMs` integer, required
            - `builderOverheadMs` integer, required
            - `builderTotalMs` integer, required
        - `runtime` object, required
          - `imageRef` string, required
          - `imageDigest` string, required
          - `port` integer, required
          - `healthPath` string, required
        - `handoff` object, required
          - `dispatchAttemptId` string, required
          - `sourceSnapshotSha256` string, required
      - object
        - `schemaVersion` 'app-deploy-manifest-paketo-v1', required
        - `deploymentId` string, required
        - `outputKind` 'static_artifact', required
        - `framework` string, required
        - `source` object, required
          - `repoFullName` string, required
          - `commitSha` string, required
          - `rootDir` string, required
        - `static` object, required
          - `artifactType` 'static_archive', required
          - `artifactRef` string, required
          - `artifactSha256` string, required
          - `publishDirectory` string, required
          - `fileCount` integer, required
          - `byteCount` integer, required
          - `entrypoint` string, required
          - `routingMode` 'static_default_document' | 'spa_fallback', required
    - `apiBaseUrl` string, nullable
    - `sourceBuildRegistryCredentialReceipt` SourceBuildRegistryCredentialReceipt, required
      - `leaseId` string, required
      - `generation` integer, required
      - `dispatchAttemptId` string, required
  - object
    - `deployManifest` union, required
      - object
        - `schemaVersion` 'app-deploy-manifest-v1', required
        - `deploymentId` string, required
        - `outputKind` 'runtime_image', required
        - `source` object, required
          - `repoFullName` string, required
          - `commitSha` string, required
          - `rootDir` string, required
          - `framework` 'next' | 'astro' | 'svelte-kit' | 'nuxt' | 'react-router' | 'vite' | 'hono' | 'nestjs' | 'fastify' | 'express' | 'django' | 'fastapi' | 'flask' | 'laravel' | 'rails' | 'node' | 'python' | 'php' | 'ruby' | 'go' | 'java' | 'dotnet' | 'static' | 'unknown'
        - `build` object, required
          - `engine` 'paketo-v1', required
          - `policyVersion` string, required
          - `policyHash` string, required
          - `platform` string, required
          - `builderImage` string, required
          - `lifecycleImage` string, required
          - `runImage` string, required
          - `bootstrapImage` string, required
          - `publisherVersion` string, required
          - `publisherSha256` string, required
          - `buildpackSetHash` string, required
          - `profileHash` string, required
          - `overlayHash` string, required
          - `phaseTimingsMs` object, nullable, required
            - `supplyVerificationMs` integer, required
            - `sourceAcquisitionMs` integer, required
            - `sourceBoundaryMs` integer, required
            - `isolationStartupMs` integer, required
            - `planningMs` integer, required
            - `buildkitSolveAndRuntimeAssemblyMs` integer, required
            - `egressValidationMs` integer, required
            - `workerReleaseMs` integer, required
            - `imageArchiveLoadMs` integer, required
            - `registryAuthMs` integer, required
            - `registryPushMs` integer, required
            - `digestReadbackMs` integer, required
            - `publicationOverheadMs` integer, required
            - `cleanupMs` integer, required
            - `builderOverheadMs` integer, required
            - `builderTotalMs` integer, required
        - `runtime` object, required
          - `imageRef` string, required
          - `imageDigest` string, required
          - `port` integer, required
          - `healthPath` string, required
        - `handoff` object, required
          - `dispatchAttemptId` string, required
          - `sourceSnapshotSha256` string, required
      - object
        - `schemaVersion` 'app-deploy-manifest-v1', required
        - `deploymentId` string, required
        - `outputKind` 'static_artifact', required
        - `framework` string, required
        - `source` object, required
          - `repoFullName` string, required
          - `commitSha` string, required
          - `rootDir` string, required
        - `static` object, required
          - `artifactType` 'static_archive', required
          - `artifactRef` string, required
          - `artifactSha256` string, required
          - `publishDirectory` string, required
          - `fileCount` integer, required
          - `byteCount` integer, required
          - `entrypoint` string, required
          - `routingMode` 'static_default_document' | 'spa_fallback', required
    - `apiBaseUrl` string, nullable
    - `sourceBuildRegistryCredentialReceipt` unknown
  - object: workers-v1 build handoff: the identity of the build attempt's verified ready app release. Accepting the verified handoff queues an activation-only deploy job. Dispatch requires compatible app-host capacity; candidate render and route verification must succeed before activation. A failed candidate does not replace the previous live release.
    - `deployManifest` object, required
      - `schemaVersion` 'app-deploy-manifest-workers-v1', required
      - `deploymentId` string, required
      - `outputKind` 'app_release', required
      - `source` object, required
        - `commitSha` string, required
      - `appRelease` object, required
        - `releaseId` string, required
        - `manifestSha256` string, required
        - `manifestBytes` integer, required

## Response `200`

Build handoff completed

---

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