API documentation | API docs for agents | OpenAPI 3.1
POST /api/v1/billing/invoice-packets/previews
ark.create_customer_invoice_packet_preview
Create Customer Invoice Packet Preview through the authoritative Billing application boundary.
- Availability
- Expanded preview
- Scopes
loads:readbilling:read- ARK permissions
canViewLoadscanViewBilling- Team visibility
- Required and enforced
- Idempotency-Key
- Not required
- Approval
- No MCP approval on REST API-token calls
- Rate limit
- API credential and organization budgets
Parameters
Idempotency-Keyheaderstringrequired- Stable key for safe replay of this exact operation input.
- min length: 8; max length: 200
Request body
reasonstringdefault: "Billing workbench action"; min length: 1; max length: 1000
queueQuickBooksSyncbooleandefault: false
targetsarray<object>requiredmin items: 1; max items: 1
payHoldAcknowledgementsarray<object>max items: 100
packetPreparationFingerprintstringrequiredpacketSourceVersionIdsarray<string>requiredmax items: 100
invoiceRenderModestringrequiredone of: system, custom_replace, custom_then_system
packetOverrideReasonstringmin length: 5; max length: 1000
existingPacketIdstringformat: uuid
existingPacketVersionintegermax: 9007199254740991
Example request
Shell
curl -X POST 'https://arktms.com/api/v1/billing/invoice-packets/previews' \
-H "Authorization: Bearer $ARK_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"targets": [
{
"obligationId": "<obligationId>",
"expectedWorkflowVersion": 1,
"expectedBalanceVersion": 1
}
],
"packetPreparationFingerprint": "<packetPreparationFingerprint>",
"packetSourceVersionIds": [
"<packetSourceVersionIds>"
],
"invoiceRenderMode": "system"
}'Success response
Operation result.
objectstringrequiredokbooleanrequiredapi_versionstringrequiredrequest_idstringrequireddataobjectrequireddata.okbooleanrequireddata.actionstringrequireddata.updatedCountintegerrequiredmin: 0
data.messagestringrequireddata.failuresarray<object>requireddata.resultnull | boolean | number | string | array<any> | objectAction-specific JSON-safe result, including current versions and fingerprints.
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