town.delve.video.finishUpload

delve.town

Documentation

Finish an upload. This call is idempotent and safe to retry. On deduplication completedJobId may differ from the input jobId; poll getJobStatus with completedJobId. Probe-based validation failures surface later as JOB_STATE_FAILED from getJobStatus, not as errors from this call.

main procedure

Finish an upload. This call is idempotent and safe to retry. On deduplication completedJobId may differ from the input jobId; poll getJobStatus with completedJobId. Probe-based validation failures surface later as JOB_STATE_FAILED from getJobStatus, not as errors from this call.

Input

Encodingapplication/json
jobId string Required

No description available.

maxLength: 256 bytesminLength: 1 bytes

Output

Encodingapplication/json
completedJobId string Required

The processing job to poll with getJobStatus; on deduplication this may differ from the input jobId.

Errors

UploadNotFound The job ID is unknown or aged out of retention; known terminal sessions are never reported as not found.
UploadExpired The upload session expired before finalization began.
MissingParts Not all parts are recorded; the error message lists the missing part numbers.
UploadNotReady A finish is in progress; check getUploadStatus and retry.
UnsupportedContentType The assembled object's detected content type is not supported.
UploadFailed The session is known to have failed; the error carries its failure reason.
UploadAborted The session is known to have been aborted.
ServiceOverloaded The service is draining or temporarily at capacity; retry later.
Try It

Requests are sent directly from your browser. Some servers may block requests due to CORS.

Base URL for XRPC calls (e.g., https://bsky.social)
Enter valid JSON for the request body
View raw schema
{
  "description": "Finish an upload. This call is idempotent and safe to retry. On deduplication completedJobId may differ from the input jobId; poll getJobStatus with completedJobId. Probe-based validation failures surface later as JOB_STATE_FAILED from getJobStatus, not as errors from this call.",
  "errors": [
    {
      "description": "The job ID is unknown or aged out of retention; known terminal sessions are never reported as not found.",
      "name": "UploadNotFound"
    },
    {
      "description": "The upload session expired before finalization began.",
      "name": "UploadExpired"
    },
    {
      "description": "Not all parts are recorded; the error message lists the missing part numbers.",
      "name": "MissingParts"
    },
    {
      "description": "A finish is in progress; check getUploadStatus and retry.",
      "name": "UploadNotReady"
    },
    {
      "description": "The assembled object's detected content type is not supported.",
      "name": "UnsupportedContentType"
    },
    {
      "description": "The session is known to have failed; the error carries its failure reason.",
      "name": "UploadFailed"
    },
    {
      "description": "The session is known to have been aborted.",
      "name": "UploadAborted"
    },
    {
      "description": "The service is draining or temporarily at capacity; retry later.",
      "name": "ServiceOverloaded"
    }
  ],
  "input": {
    "encoding": "application/json",
    "schema": {
      "properties": {
        "jobId": {
          "maxLength": 256,
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "jobId"
      ],
      "type": "object"
    }
  },
  "output": {
    "encoding": "application/json",
    "schema": {
      "properties": {
        "completedJobId": {
          "description": "The processing job to poll with getJobStatus; on deduplication this may differ from the input jobId.",
          "maxLength": 256,
          "minLength": 1,
          "type": "string"
        },
        "jobStatus": {
          "ref": "town.delve.video.defs#jobStatus",
          "type": "ref"
        }
      },
      "required": [
        "completedJobId",
        "jobStatus"
      ],
      "type": "object"
    }
  },
  "type": "procedure"
}

Lexicon Garden

@