Skip to main content

Overview

List all features configured in your Autumn environment. This returns both active and archived features with their full configuration.

Endpoint

POST /v1/features.list

Request Body

This endpoint does not require any request parameters.
{}

Response

Returns a list of all feature objects.
list
array
Array of feature objects.

Examples

const response = await fetch('https://api.autumn.com/v1/features.list', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({})
});

const { list } = await response.json();
console.log('Total features:', list.length);
console.log(list);

Response Example

Response
{
  "list": [
    {
      "id": "api-calls",
      "name": "API Calls",
      "type": "metered",
      "consumable": true,
      "archived": false,
      "display": {
        "singular": "API call",
        "plural": "API calls"
      }
    },
    {
      "id": "credits",
      "name": "Credits",
      "type": "credit_system",
      "consumable": true,
      "archived": false,
      "credit_schema": [
        {
          "metered_feature_id": "api-calls",
          "credit_cost": 1
        },
        {
          "metered_feature_id": "image-generations",
          "credit_cost": 10
        }
      ],
      "display": {
        "singular": "credit",
        "plural": "credits"
      }
    },
    {
      "id": "advanced-analytics",
      "name": "Advanced Analytics",
      "type": "boolean",
      "consumable": false,
      "archived": false
    },
    {
      "id": "seats",
      "name": "Team Seats",
      "type": "metered",
      "consumable": false,
      "archived": false,
      "display": {
        "singular": "seat",
        "plural": "seats"
      }
    }
  ]
}

Use Cases

Dashboard Overview

Display all available features in your admin dashboard for management and configuration.

Pricing Pages

Populate pricing comparison tables by listing all features and their configurations.

Feature Discovery

Discover what features are available in your environment during development.

Configuration Export

Export your complete feature configuration for backup or migration purposes.

Filtering Results

The list includes both active and archived features. You can filter the results in your application:
Filter Active Features
const { list } = await response.json();
const activeFeatures = list.filter(f => !f.archived);
Group by Type
const { list } = await response.json();
const grouped = {
  boolean: list.filter(f => f.type === 'boolean'),
  metered: list.filter(f => f.type === 'metered'),
  credit_system: list.filter(f => f.type === 'credit_system')
};
Find Consumable Features
const { list } = await response.json();
const consumableFeatures = list.filter(f => f.consumable);

Response Format

The response always includes a list property containing an array of features. If no features are configured, the array will be empty:
Empty Response
{
  "list": []
}
Archived features are included in the response. Filter them out in your application if you only need active features.
Cache the feature list in your application to reduce API calls. Refresh when you create, update, or delete features.

Build docs developers (and LLMs) love