List prices
List all prices for the authenticated merchant. Supports filtering and cursor-based pagination.
/pricesList all prices for the authenticated merchant. Supports filtering and cursor-based pagination.
starting_after and ending_before are mutually exclusive: supply at most one. Sending both is rejected with 400 parameter_invalid. A cursor must also name a price belonging to the authenticated merchant; an unknown id is rejected with 400 resource_missing.
Related endpoints
POST /prices— Create a priceGET /prices/{id}— Retrieve a pricePATCH /prices/{id}— Update a priceDELETE /prices/{id}— Archive a price
Common errors
400 invalid_request— malformed payload or failed validation.401 authentication_error— missing, invalid, expired, or revoked credential. Codes:authentication_failed,invalid_api_key,expired_api_key,api_key_revoked,session_invalid,merchant_required. Carries aWWW-Authenticate: Bearerchallenge.
Pagination
Offset-based with limit (default 25, max 100) and offset. The response pagination block includes total and hasMore. See the pagination guide for SDK auto-paging helpers.
Your RevKeen merchant API key. Create and manage keys in Dashboard → Settings → Developer. Use rk_sandbox_* for staging/test and rk_live_* for production. The same key may be sent as Authorization: Bearer <key> if that suits your HTTP client better. A missing, invalid, expired, or revoked key returns 401 with a WWW-Authenticate: Bearer challenge; a valid key without the required scope returns 403.
In: header
Query Parameters
Filter by product ID
uuidFilter by price type
Value in
- "one_time"
- "recurring"
Filter by pricing model
Value in
- "fixed"
- "pay_what_you_want"
- "free"
Filter by active status
Value in
- "true"
- "false"
Filter by currency
3 <= length <= 3Filter by lookup key
Number of results (1-100)
1 <= value <= 10020Cursor for pagination: return prices after this price ID. Mutually exclusive with ending_before — supplying both is rejected with 400 parameter_invalid. The ID must name a price of the authenticated merchant, or the request is rejected with 400 resource_missing.
uuidCursor for pagination: return prices before this price ID. Mutually exclusive with starting_after — supplying both is rejected with 400 parameter_invalid. The ID must name a price of the authenticated merchant, or the request is rejected with 400 resource_missing.
uuidResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://api.revkeen.com/v2/prices?product_id=11111111-1111-4111-8111-111111111111&type=one_time" \
-H "x-api-key: $REVKEEN_API_KEY"Synthetic documentation data, validated against the response schema; not a live API result.
{ "object": "list", "data": [ { "id": "b5d8e2f1-3a6c-4d9b-8e7f-1c4a2b5d6e73", "object": "price", "product_id": "a7b3c9d2-1e4f-4b6a-8c5d-2f9e0a1b3c42", "active": true, "currency": "gbp", "unit_amount": 4900, "unit_amount_decimal": "4900", "type": "recurring", "pricing_model": "fixed", "interval": "month", "interval_count": 1, "trial_period_days": 14, "start_rule": "immediate", "minimum_amount": null, "maximum_amount": null, "suggested_amount": null, "preset_amounts": null, "name": "Monthly", "nickname": "Monthly", "description": null, "version": 1, "lookup_key": "pro_monthly_gbp", "billing_scheme": "per_unit", "tiers_mode": null, "tiers": null, "transform_quantity": null, "percentage_rate_bps": null, "pay_in_advance": true, "spending_minimum_cents": null, "option_values": null, "sku": null, "image_url": null, "metadata": {}, "created_at": "2026-04-02T10:00:00.000Z", "updated_at": "2026-04-02T10:05:00.000Z" } ], "has_more": true, "total_count": 42}