Skip to main content
POST
/
inventory
/
adjustments
Adjust inventory -- single or multi-item atomic (cycle count, shrinkage, revaluation)
curl --request POST \
  --url https://api.arcuserp.com/v1/inventory/adjustments \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "location_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "items": [
    {
      "product_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "quantity_delta": 123,
      "unit_cost": 123,
      "notes": "<string>",
      "allow_negative": true
    }
  ],
  "reason": "<string>"
}
'
{
  "object": "inventory_adjustment_result"
}

Documentation Index

Fetch the complete documentation index at: https://docs.arcuserp.com/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

API key issued per entity via Settings > Developers > API Keys. Each key carries scopes (e.g. orders:read, products:write). Bearer token format: Authorization: Bearer ark_live_ent_Test keys use ark_test_ent_. Both are issued per entity
via Settings > Developers > API Keys.

Headers

Idempotency-Key
string

Client-generated unique key for idempotent POST/PATCH/DELETE operations. Alias for the Idempotency parameter. Max 255 chars. On retry with the same key, the original response is returned without re-executing the operation. Keys expire after 24 hours.

Maximum string length: 255

Body

application/json

Multi-item atomic mode

location_id
string<uuid>
required

Layer 4 -- required

items
object[]
required
Minimum array length: 1
reason
string

Response

Adjustment applied

object
enum<string>
Available options:
inventory_adjustment_result