Skip to content

Connector complete upload

PUT
/connector/v1/assignments/{assignment_id}/uploads/{upload_id}/completion

Verify and publish the exact stored version; multipart may return 202 while the worker verifies.

Credential scopes: Separate connector bearer credential and assignment/session authority.

Resource authority: Authenticated connector owns the exact assignment and holds its active X-Connector-Session.

Retry: Reservation: retry original Idempotency-Key and body. Completion: retry original version_id or multipart:true intent. Current views may refresh temporary instructions; committed receipts retain their identities.

Guards: New reservations select multipart strictly above 64 MiB. Single-PUT ceiling, per-file policy, declaration and aggregate quotas are independent. Existing reservations retain transport and expiry.

Retain: Same account/assignment, source checksum and unchanged source bytes, original request/key, upload/artifact UUIDs, completion intent and confirmed parts.

Specific failures: 400 bad_request; 404 not_found: missing or unauthorized upload; 409 upload_bytes_missing or upload_completion_conflict; 410 upload_expired; 413 completion JSON/body bound; 422 invalid_upload_completion or upload_verification_failed; 503 upload_uncertain; 409 session_required, journal_conflict or invalid_transition

Next action: Preserve the original operation; inspect to reconcile uncertainty; use completed artifact identity after verification. Worked workflow

assignment_id
required
string format: uuid

Owned assignment.

upload_id
required
string format: uuid

Upload reserved for this assignment.

X-Connector-Session
required
string format: uuid

Active process session for this assignment journal.

For single PUT use the non-null version_id returned by storage. For multipart use {multipart:true}; retry unchanged while HTTP 202 is returned. At most 8 KiB; no unknown/duplicate fields or query parameters. Save this request and retry it unchanged after a lost response. No additional idempotency key is needed.

Media typeapplication/json
One of:
object
version_id
required

Exact non-null x-amz-version-id returned by storage. Retain it for retries.

string
>= 1 characters <= 1024 characters

Verified exact version published atomically. Identical retries return the original receipt, including after expiry or later storage unavailability, without republishing bytes. Downloads and file-input authorization are separate features.

Media typeapplication/json

Immutable publication acknowledgement, not a live storage availability probe.

object
artifact_id
required
string format: uuid
checksum
required
object
algorithm
required

Only sha256 is supported.

string
Allowed values: sha256
checksum_type
required

Only full_object is supported; multipart checksums are not accepted.

string
Allowed values: full_object
value
required

Canonical base64 of the 32-byte SHA-256 digest.

string
>= 44 characters <= 44 characters /^[A-Za-z0-9+/]{42}[AEIMQUYcgkosw048]=$/
completed_at
required
string format: date-time
size_bytes
required
integer format: int64
upload_id
required
string format: uuid
version_id
required
string
Cache-Control
string

No-store

x-request-id
string

Always present. A fresh server-generated UUID for this request; incoming IDs are ignored. On errors, this equals the response body’s request_id.

Multipart assembly or exact-version verification is pending; retry the same multipart completion intent.

Media typeapplication/json
object
confirmed_bytes
required
integer format: int64
diagnostic
string | null
part_count
required
integer format: int32
part_size_bytes
required
integer format: int64
phase
required
string
Cache-Control
string

No-store

x-request-id
string

Always present. A fresh server-generated UUID for this request; incoming IDs are ignored. On errors, this equals the response body’s request_id.

Malformed JSON, path or query parameters.

Media typeapplication/json

The common JSON body for errors returned by the HTTP application.

object
code
required

Stable machine-readable error code.

string
details
One of:
null
message
required

Safe explanation without internal errors or submitted input values.

string
request_id
required

Matches the response’s x-request-id header.

string
Cache-Control
string

No-store

x-request-id
string

Always present. A fresh server-generated UUID for this request; incoming IDs are ignored. On errors, this equals the response body’s request_id.

Active connector credential and process session required, rechecked before publication.

Media typeapplication/json

The common JSON body for errors returned by the HTTP application.

object
code
required

Stable machine-readable error code.

string
details
One of:
null
message
required

Safe explanation without internal errors or submitted input values.

string
request_id
required

Matches the response’s x-request-id header.

string
Cache-Control
string

No-store

x-request-id
string

Always present. A fresh server-generated UUID for this request; incoming IDs are ignored. On errors, this equals the response body’s request_id.

Unknown and other-assignment uploads are indistinguishable.

Media typeapplication/json

The common JSON body for errors returned by the HTTP application.

object
code
required

Stable machine-readable error code.

string
details
One of:
null
message
required

Safe explanation without internal errors or submitted input values.

string
request_id
required

Matches the response’s x-request-id header.

string
Cache-Control
string

No-store

x-request-id
string

Always present. A fresh server-generated UUID for this request; incoming IDs are ignored. On errors, this equals the response body’s request_id.

Upload_bytes_missing: storage reported no such version; upload_completion_conflict: a different version was already published; session_required, journal_conflict or invalid_transition before publication.

Media typeapplication/json

The common JSON body for errors returned by the HTTP application.

object
code
required

Stable machine-readable error code.

string
details
One of:
null
message
required

Safe explanation without internal errors or submitted input values.

string
request_id
required

Matches the response’s x-request-id header.

string
Cache-Control
string

No-store

x-request-id
string

Always present. A fresh server-generated UUID for this request; incoming IDs are ignored. On errors, this equals the response body’s request_id.

Upload_expired: unpublished reservation expired before publication.

Media typeapplication/json

The common JSON body for errors returned by the HTTP application.

object
code
required

Stable machine-readable error code.

string
details
One of:
null
message
required

Safe explanation without internal errors or submitted input values.

string
request_id
required

Matches the response’s x-request-id header.

string
Cache-Control
string

No-store

x-request-id
string

Always present. A fresh server-generated UUID for this request; incoming IDs are ignored. On errors, this equals the response body’s request_id.

Completion JSON exceeds 8 KiB or the deployment limit.

Media typeapplication/json

The common JSON body for errors returned by the HTTP application.

object
code
required

Stable machine-readable error code.

string
details
One of:
null
message
required

Safe explanation without internal errors or submitted input values.

string
request_id
required

Matches the response’s x-request-id header.

string
Cache-Control
string

No-store

x-request-id
string

Always present. A fresh server-generated UUID for this request; incoming IDs are ignored. On errors, this equals the response body’s request_id.

JSON content type required.

Media typeapplication/json

The common JSON body for errors returned by the HTTP application.

object
code
required

Stable machine-readable error code.

string
details
One of:
null
message
required

Safe explanation without internal errors or submitted input values.

string
request_id
required

Matches the response’s x-request-id header.

string
Cache-Control
string

No-store

x-request-id
string

Always present. A fresh server-generated UUID for this request; incoming IDs are ignored. On errors, this equals the response body’s request_id.

Invalid completion request, or upload_verification_failed: exact-version metadata, byte size or native full-object SHA-256 differs or is absent.

Media typeapplication/json

The common JSON body for errors returned by the HTTP application.

object
code
required

Stable machine-readable error code.

string
details
One of:
null
message
required

Safe explanation without internal errors or submitted input values.

string
request_id
required

Matches the response’s x-request-id header.

string
Cache-Control
string

No-store

x-request-id
string

Always present. A fresh server-generated UUID for this request; incoming IDs are ignored. On errors, this equals the response body’s request_id.

Storage/database unavailable or upload_uncertain. Preserve and retry the same version request; inspect status to reconcile publication.

Media typeapplication/json

The common JSON body for errors returned by the HTTP application.

object
code
required

Stable machine-readable error code.

string
details
One of:
null
message
required

Safe explanation without internal errors or submitted input values.

string
request_id
required

Matches the response’s x-request-id header.

string
Cache-Control
string

No-store

x-request-id
string

Always present. A fresh server-generated UUID for this request; incoming IDs are ignored. On errors, this equals the response body’s request_id.

An HTTP request failed; inspect the stable error code and request ID.

Media typeapplication/json

The common JSON body for errors returned by the HTTP application.

object
code
required

Stable machine-readable error code.

string
details
One of:
null
message
required

Safe explanation without internal errors or submitted input values.

string
request_id
required

Matches the response’s x-request-id header.

string
Cache-Control
string

No-store

x-request-id
string

Always present. A fresh server-generated UUID for this request; incoming IDs are ignored. On errors, this equals the response body’s request_id.

Documentation 205dcb3116ea · public sources 8c70356d340f · built .Download documentation identity.