Skip to content
Hightop docs header art
Hightop
API and Integrations

Create a One-Off Payout#

Use this when an agent needs to create an ad hoc payout instead of paying an already configured recurring recipient.

Prerequisites#

  • The agent is allowed to create one-off payments.
  • The asset is allowed.
  • The requested amount fits the agent's configured limits.

Create the Payout#

Agent API amount fields are decimal asset-unit strings. For USDC, "1" means 1 USDC.

curlrequest
curl -sS https://api.hightop.com/v1/agent/one-off-payments \
  -H "content-type: application/json" \
  -H "x-agent-id: $HIGHTOP_AGENT_ID" \
  -H "x-api-key: $HIGHTOP_API_KEY" \
  -H "Idempotency-Key: one-off-$(uuidgen)" \
  -d '{
    "to": "recipient@example.com",
    "asset": "USDC",
    "amount": "1"
  }'

unlock_delay_seconds and expires_in_seconds are schema fields, but current v1 execution can reject custom unlock or expiry modifiers it cannot honor. Omit them unless your integration has confirmed support.

Optional TypeScript SDK Shape#

typescriptexample
const payout = await client.v1.agent.postOneOffPayments(
  {
    to: 'recipient@example.com',
    asset: 'USDC',
    amount: '1',
  },
  { idempotencyKey: `one-off-${crypto.randomUUID()}` },
)

Follow Up#

Save operation_id and poll GET /v1/agent/operations/{id}. Subscribe to one_off_payment.created and operation.policy_rejected for webhook-driven updates.

Likely errors: permission_not_granted, recipient_not_allowed, limit_exceeded, insufficient_funds, validation_failed.

Previous

Pay a Vendor

Next

Convert with a Quote