API documentation | API docs for agents | OpenAPI 3.1
POST /api/v1/loads/{loadId}/vendor-expenses/batch
ark.upsert_load_vendor_expenses
Creates or updates multiple Vendor Expenses for one visible load.
- Availability
- Expanded preview
- Scopes
loads:readloads:writebilling:write- ARK permissions
canViewLoadscanViewBillingcanEditLoadcanMakeAdjustments- Team visibility
- Required and enforced
- Idempotency-Key
- Required for this write
- Approval
- No MCP approval on REST API-token calls
- Rate limit
- API credential and organization budgets
Parameters
loadIdpathstringrequired- 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
expensesarray<object>requiredmin items: 1; max items: 100
Example request
Shell
curl -X POST 'https://arktms.com/api/v1/loads/<loadId>/vendor-expenses/batch' \
-H "Authorization: Bearer $ARK_API_TOKEN" \
-H "Idempotency-Key: <unique-key>" \
-H "Content-Type: application/json" \
-d '{
"expenses": [
{
"category": "Lumper",
"amount": 1,
"vendorName": "<vendorName>",
"paymentMethod": "Credit Card"
}
]
}'Success response
Saved Vendor Expenses
objectstringrequiredokbooleanrequiredapi_versionstringrequiredrequest_idstringrequiredErrors
No operation-specific error responses.