Add item to subscription
Add a new line item to an existing subscription. This is used for multi-product subscriptions where items share the same billing interval.
Related endpoints
POST /subscriptions— Create a new subscriptionGET /subscriptions— List subscriptionsGET /subscriptions/{id}— Get subscription by IDPATCH /subscriptions/{id}— Update subscription detailsDELETE /subscriptions/{id}— Delete subscriptionPOST /subscriptions/{id}/change-plan— Change subscription planPOST /subscriptions/{id}/change-quantity— Change subscription quantityPOST /subscriptions/{id}/preview-renewal— Preview subscription renewal
Common errors
400 invalid_request— malformed payload or failed validation.401 unauthenticated— missing, malformed, or revoked API key.404 resource_missing— the referenced resource does not exist or is not visible to your key.
Idempotency
Pass an Idempotency-Key header (UUID v4 recommended) to make retries safe. Keys are valid for 24 hours; see the idempotency guide.
Your RevKeen API key (powered by Unkey). Get it from Dashboard > Settings > API Keys. Use rk_sandbox_* for test mode and rk_live_* for production.
In: header
Path Parameters
Subscription UUID
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://api.revkeen.com/v2/subscriptions/00000000-0000-0000-0000-000000000000/items" \ -H "x-api-key: $REVKEEN_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "product_id": "00000000-0000-0000-0000-000000000000", "price_id": "00000000-0000-0000-0000-000000000000", "description": "string", "quantity": 1, "currency": "USD", "unit_amount_minor": 2999, "fulfillment_type": "none", "metadata": {} }'{
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"subscription_id": "660e8400-e29b-41d4-a716-446655440000",
"product_id": "770e8400-e29b-41d4-a716-446655440000",
"price_id": "880e8400-e29b-41d4-a716-446655440000",
"description": "Pro Plan - Monthly",
"quantity": 1,
"currency": "USD",
"unit_amount_minor": 2999,
"fulfillment_type": "none",
"metadata": {
"property1": null,
"property2": null
},
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}