---
title: "Buy non-expiring timestamp packs on a one-off invoice"
method: POST
path: "/api/v1/control/tenants/{tenantId}/timestamps/orders"
tags: ["Partner billing"]
---

# Buy non-expiring timestamp packs on a one-off invoice

`POST /api/v1/control/tenants/{tenantId}/timestamps/orders`

## Request

- Base URL: `https://api.custodo.ai`
- URL: `https://api.custodo.ai/api/v1/control/tenants/{tenantId}/timestamps/orders`
- Auth: HTTP bearer

Requires a control-plane session with tenants:modules:manage and tenant ownership. Packs contain 100 timestamps. The submitted unitPriceCents must match the displayed quote. Credits and the invoice ledger commit atomically; no monthly renewal or expiry. The payer and price are frozen. Reusing requestKey with identical input returns the original order; changed input returns 409. An organisation API key (cst_) cannot use control-plane routes; a partner console key (cpk_) can — the partner API reference is /api/v1/control/docs.

## Path parameters

- `tenantId` string, uuid, required

## Request body

- object
  - `packs` integer, required
  - `requestKey` string, uuid, required
  - `unitPriceCents` integer, required

## Response `200`

Success

- object
  - `ok` true, required
  - `data` object, required
    - `id` string, uuid, required
    - `replay` true, required

## Other responses

- `201`: Success
- `400`: Invalid or unknown input field.
- `404`: Tenant unavailable to this operator.
- `409`: Price changed or order key reused with different input.

---

[API](https://skmtc.dev/custodo/apis/custodo-integrazioni.md) · [All operations](https://skmtc.dev/custodo/apis/custodo-integrazioni/llms.txt) · [OpenAPI document](https://skmtc.dev/custodo/apis/custodo-integrazioni/revisions/16d336d3ec2a?raw)
