API documentation | API docs for agents | OpenAPI 3.1

POST /api/v1/carriers/{carrierId}/files/finalize-upload

ark.finalize_carrier_file_upload

Finalizes a prepared upload by inserting the carrier file record and clearing the pending upload.

Availability
Expanded preview
Scopes
carriers:write
ARK permissions
canEditCarrier
Team visibility
Not entity-scoped
Idempotency-Key
Required for this write
Approval
No MCP approval on REST API-token calls
Rate limit
API credential and organization budgets

Parameters

carrierIdpathstringrequired
Visible ARK carrier ID.
format: uuid
Idempotency-Keyheaderstringrequired
Required for external write operations. Reuse the same key only for exact retries of the same request body.
min length: 1; max length: 200

Request body

filePathstringrequired

min length: 1; max length: 2000

fileNamestring

min length: 1; max length: 255

fileTypestringrequired

min length: 1; max length: 100

mimeTypestringrequired

min length: 1; max length: 255

Example request

Shell
curl -X POST 'https://arktms.com/api/v1/carriers/<carrierId>/files/finalize-upload' \
  -H "Authorization: Bearer $ARK_API_TOKEN" \
  -H "Idempotency-Key: <unique-key>" \
  -H "Content-Type: application/json" \
  -d '{
  "filePath": "<filePath>",
  "fileType": "<fileType>",
  "mimeType": "<mimeType>"
}'

Success response

Finalized upload

objectstringrequired
okbooleanrequired
api_versionstringrequired
request_idstringrequired
dataobjectrequired
data.carrierIdstringrequired

format: uuid

Errors

HTTP 400
Invalid request
HTTP 401
Authentication required
HTTP 403
Permission, scope, team, or entitlement denied
HTTP 404
Resource not found
HTTP 409
Idempotency conflict or in-progress retry