Returns all features defined in a project, including countable data for usage-based and limit-type features.
Endpoint
GET /api/v1/projects/{slug}/features
Authentication
Bearer token with your API key. Requires read or read_write permission.
Path Parameters
The project’s URL-friendly slug identifier.
Response
List of feature objects.
Base price for this feature
One of "Standart", "Limits", or "Usage Based"
Whether this feature has countable/usage data
Usage-related configuration (present when isCountable is true)
Default usage count or limit value
Condition label (e.g. "Up to", "Unlimited")
countableData.eventAggregationMethod
How usage events are aggregated (e.g. "count", "sum")
ISO 8601 creation timestamp
ISO 8601 last-updated timestamp
Example
curl https://cuprice.io/api/v1/projects/my-saas-app/features \
-H "Authorization: Bearer cpk_your_key_here"
{
"features": [
{
"id": 101,
"name": "AI Prompts",
"description": "Monthly AI prompt allowance",
"basePrice": 10,
"featureType": "Limits",
"isCountable": true,
"countableData": {
"usageCount": 500,
"condition": "Up to",
"countPrice": 0.02,
"eventAggregationMethod": "count"
},
"createdAt": "2025-09-15T10:35:00.000Z",
"updatedAt": "2025-09-15T10:35:00.000Z"
},
{
"id": 102,
"name": "Team Members",
"description": "Number of team seats included",
"basePrice": 5,
"featureType": "Standart",
"isCountable": false,
"countableData": null,
"createdAt": "2025-09-15T10:36:00.000Z",
"updatedAt": "2025-09-15T10:36:00.000Z"
},
{
"id": 103,
"name": "API Calls",
"description": "Monthly API request quota",
"basePrice": 15,
"featureType": "Usage Based",
"isCountable": true,
"countableData": {
"usageCount": 10000,
"condition": "Up to",
"countPrice": 0.001,
"eventAggregationMethod": "count"
},
"createdAt": "2025-09-15T10:37:00.000Z",
"updatedAt": "2025-09-15T10:37:00.000Z"
}
]
}
Errors
| Status | Description |
|---|
401 | Invalid or missing API key |
404 | Project with the given slug not found |