GrowthBook attributes API

Used when targeting feature flags and experiments.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/growthbook-attributes-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

growthbook-attributes-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  version: 1.0.0
  title: GrowthBook REST AnalyticsExplorations attributes API
  description: "GrowthBook offers a full REST API for interacting with the application.\n\nRequest data can use either JSON or Form data encoding (with proper `Content-Type` headers). All response bodies are JSON-encoded.\n\nThe API base URL for GrowthBook Cloud is `https://api.growthbook.io/api`. For self-hosted deployments, it is the same as your API_HOST environment variable (defaults to `http://localhost:3100/api`). The rest of these docs will assume you are using GrowthBook Cloud.\n\n## Versioning\n\nEndpoints are versioned by path prefix:\n\n- `/v1/...` — stable, widely-supported endpoints\n- `/v2/...` — updated endpoints with improved shapes (e.g. unified per-rule environment scope for feature flags)\n\nNew integrations should prefer v2 where available.\n\n## Authentication\n\nWe support both the HTTP Basic and Bearer authentication schemes for convenience.\n\nYou first need to generate a new API Key in GrowthBook. Different keys have different permissions:\n\n- **Personal Access Tokens**: These are sensitive and provide the same level of access as the user has to an organization. These can be created by going to `Personal Access Tokens` under the your user menu.\n- **Secret Keys**: These are sensitive and provide the level of access for the role, which currently is either `admin` or `readonly`. Only Admins with the `manageApiKeys` permission can manage Secret Keys on behalf of an organization. These can be created by going to `Settings -> API Keys`\n\nIf using HTTP Basic auth, pass the Secret Key as the username and leave the password blank (when using curl, add `:` at the end of the secret to indicate an empty password)\n\n```bash\ncurl https://api.growthbook.io/api/v1/features \\\n  -u secret_abc123DEF456:\n```\n\nIf using Bearer auth, pass the Secret Key as the token:\n\n```bash\ncurl https://api.growthbook.io/api/v1/features \\\n-H \"Authorization: Bearer secret_abc123DEF456\"\n```\n\n## Errors\n\nThe API may return the following error status codes:\n\n- **400** - Bad Request - Often due to a missing required parameter\n- **401** - Unauthorized - No valid API key provided\n- **402** - Request Failed - The parameters are valid, but the request failed\n- **403** - Forbidden - Provided API key does not have the required access\n- **404** - Not Found - Unknown API route or requested resource\n- **429** - Too Many Requests - You exceeded the rate limit of 60 requests per minute. Try again later.\n- **5XX** - Server Error - Something went wrong on GrowthBook's end (these are rare)\n\nThe response body will be a JSON object with the following properties:\n\n- **message** - Information about the error\n"
servers:
- url: https://api.growthbook.io/api
  description: GrowthBook Cloud
- url: https://{domain}/api
  description: Self-hosted GrowthBook
security:
- bearerAuth: []
- basicAuth: []
tags:
- name: attributes
  x-displayName: Attributes
  description: Used when targeting feature flags and experiments.
paths:
  /v1/attributes:
    get:
      operationId: listAttributes
      summary: Get the organization's attributes
      tags:
      - attributes
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
                properties:
                  attributes:
                    type: array
                    items:
                      $ref: '#/components/schemas/Attribute'
                required:
                - attributes
                additionalProperties: false
      x-codeSamples:
      - lang: cURL
        source: "curl -X GET 'https://api.growthbook.io/api/v1/attributes' \\\n  -H 'Authorization: Bearer YOUR_API_KEY'"
    post:
      operationId: postAttribute
      summary: Create a new attribute
      tags:
      - attributes
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                property:
                  description: The attribute property
                  type: string
                datatype:
                  description: The attribute datatype
                  type: string
                  enum:
                  - boolean
                  - string
                  - number
                  - secureString
                  - enum
                  - string[]
                  - number[]
                  - secureString[]
                description:
                  description: The description of the new attribute
                  type: string
                archived:
                  description: The attribute is archived
                  type: boolean
                hashAttribute:
                  description: Shall the attribute be hashed
                  type: boolean
                enum:
                  type: string
                format:
                  description: The attribute's format
                  type: string
                  enum:
                  - ''
                  - version
                  - date
                  - isoCountryCode
                projects:
                  type: array
                  items:
                    type: string
                tags:
                  type: array
                  items:
                    type: string
              required:
              - property
              - datatype
              additionalProperties: false
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
                properties:
                  attribute:
                    $ref: '#/components/schemas/Attribute'
                required:
                - attribute
                additionalProperties: false
      x-codeSamples:
      - lang: cURL
        source: "curl -X POST 'https://api.growthbook.io/api/v1/attributes' \\\n  -H 'Authorization: Bearer YOUR_API_KEY' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"property\":\"foo\",\"datatype\":\"boolean\",\"description\":\"My new attribute\"}'"
  /v1/attributes/{property}:
    put:
      operationId: putAttribute
      summary: Update an attribute
      tags:
      - attributes
      parameters:
      - $ref: '#/components/parameters/property'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                datatype:
                  description: The attribute datatype
                  type: string
                  enum:
                  - boolean
                  - string
                  - number
                  - secureString
                  - enum
                  - string[]
                  - number[]
                  - secureString[]
                description:
                  description: The description of the new attribute
                  type: string
                archived:
                  description: The attribute is archived
                  type: boolean
                hashAttribute:
                  description: Shall the attribute be hashed
                  type: boolean
                enum:
                  type: string
                format:
                  description: The attribute's format
                  type: string
                  enum:
                  - ''
                  - version
                  - date
                  - isoCountryCode
                projects:
                  type: array
                  items:
                    type: string
                tags:
                  type: array
                  items:
                    type: string
              additionalProperties: false
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
                properties:
                  attribute:
                    $ref: '#/components/schemas/Attribute'
                required:
                - attribute
                additionalProperties: false
      x-codeSamples:
      - lang: cURL
        source: "curl -X PUT 'https://api.growthbook.io/api/v1/attributes/abc123' \\\n  -H 'Authorization: Bearer YOUR_API_KEY' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"description\":\"My updated attribute\"}'"
    delete:
      operationId: deleteAttribute
      summary: Deletes a single attribute
      tags:
      - attributes
      parameters:
      - $ref: '#/components/parameters/property'
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
                properties:
                  deletedProperty:
                    type: string
                required:
                - deletedProperty
                additionalProperties: false
      x-codeSamples:
      - lang: cURL
        source: "curl -X DELETE 'https://api.growthbook.io/api/v1/attributes/abc123' \\\n  -H 'Authorization: Bearer YOUR_API_KEY'"
components:
  schemas:
    Attribute:
      type: object
      properties:
        property:
          type: string
        datatype:
          type: string
          enum:
          - boolean
          - string
          - number
          - secureString
          - enum
          - string[]
          - number[]
          - secureString[]
        description:
          type: string
        hashAttribute:
          type: boolean
        archived:
          type: boolean
        enum:
          type: string
        format:
          type: string
          enum:
          - ''
          - version
          - date
          - isoCountryCode
        projects:
          type: array
          items:
            type: string
        tags:
          type: array
          items:
            type: string
      required:
      - property
      - datatype
      additionalProperties: false
  parameters:
    property:
      name: property
      in: path
      required: true
      description: The attribute property
      schema:
        description: The attribute property
        type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'If using Bearer auth, pass the Secret Key as the token:

        ```bash

        curl https://api.growthbook.io/api/v1/features   -H "Authorization: Bearer secret_abc123DEF456"

        ```

        '
    basicAuth:
      type: http
      scheme: basic
      description: 'If using HTTP Basic auth, pass the Secret Key as the username and leave the password blank:

        ```bash

        curl https://api.growthbook.io/api/v1/features   -u secret_abc123DEF456:

        # The ":" at the end stops curl from asking for a password

        ```

        '
x-tagGroups:
- name: Endpoints
  tags:
  - projects
  - environments
  - features-v2
  - feature-revisions-v2
  - features
  - feature-revisions
  - ramp-schedules
  - data-sources
  - fact-tables
  - fact-metrics
  - metrics
  - experiments
  - namespaces
  - snapshots
  - dimensions
  - segments
  - sdk-connections
  - visual-changesets
  - saved-groups
  - organizations
  - members
  - code-references
  - archetypes
  - queries
  - settings
  - attributes
  - usage
  - Dashboards
  - CustomFields
  - MetricGroups
  - Teams
  - ExperimentTemplates
  - AnalyticsExplorations
  - RampScheduleTemplates
- name: Models
  tags:
  - AnalyticsExploration_model
  - Archetype_model
  - Attribute_model
  - CodeRef_model
  - CustomField_model
  - Dashboard_model
  - DataSource_model
  - Dimension_model
  - Environment_model
  - Experiment_model
  - ExperimentAnalysisSettings_model
  - ExperimentDecisionFrameworkSettings_model
  - ExperimentMetric_model
  - ExperimentMetricOverrideEntry_model
  - ExperimentResults_model
  - ExperimentSnapshot_model
  - ExperimentTemplate_model
  - ExperimentWithEnhancedStatus_model
  - FactMetric_model
  - FactTable_model
  - FactTableColumn_model
  - FactTableFilter_model
  - Feature_model
  - FeatureBaseRule_model
  - FeatureDefinition_model
  - FeatureEnvironment_model
  - FeatureEnvironmentV2_model
  - FeatureExperimentRefRule_model
  - FeatureExperimentRule_model
  - FeatureForceRule_model
  - FeatureRevision_model
  - FeatureRevisionV2_model
  - FeatureRolloutRule_model
  - FeatureRule_model
  - FeatureRuleV2_model
  - FeatureSafeRolloutRule_model
  - FeatureV2_model
  - FeatureWithRevisions_model
  - FeatureWithRevisionsV2_model
  - InformationSchema_model
  - InformationSchemaTable_model
  - LookbackOverride_model
  - Member_model
  - Metric_model
  - MetricAnalysis_model
  - MetricGroup_model
  - MetricUsage_model
  - Namespace_model
  - NamespaceExperimentMember_model
  - Organization_model
  - PaginationFields_model
  - Project_model
  - Query_model
  - RampSchedule_model
  - RampScheduleTemplate_model
  - SavedGroup_model
  - ScheduleRule_model
  - SdkConnection_model
  - Segment_model
  - Settings_model
  - Team_model
  - VisualChange_model
  - VisualChangeset_model