GrowthBook RampScheduleTemplates API
Reusable step configurations for ramp schedules.
Reusable step configurations for ramp schedules.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/growthbook-rampscheduletemplates-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.1.0
info:
version: 1.0.0
title: GrowthBook REST AnalyticsExplorations RampScheduleTemplates 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: RampScheduleTemplates
x-displayName: Ramp Schedule Templates
description: Reusable step configurations for ramp schedules.
paths:
/v1/ramp-schedule-templates/{id}:
get:
operationId: getRampScheduleTemplate
summary: Get a single rampScheduleTemplate
tags:
- RampScheduleTemplates
parameters:
- name: id
in: path
required: true
description: ''
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
properties:
rampScheduleTemplate:
$ref: '#/components/schemas/RampScheduleTemplate'
required:
- rampScheduleTemplate
additionalProperties: false
x-codeSamples:
- lang: cURL
source: "curl -X GET 'https://api.growthbook.io/api/v1/ramp-schedule-templates/{id}' \\\n -H 'Authorization: Bearer YOUR_API_KEY'"
delete:
operationId: deleteRampScheduleTemplate
summary: Delete a single rampScheduleTemplate
tags:
- RampScheduleTemplates
parameters:
- name: id
in: path
required: true
description: ''
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
properties:
deletedId:
type: string
required:
- deletedId
additionalProperties: false
x-codeSamples:
- lang: cURL
source: "curl -X DELETE 'https://api.growthbook.io/api/v1/ramp-schedule-templates/{id}' \\\n -H 'Authorization: Bearer YOUR_API_KEY'"
put:
operationId: updateRampScheduleTemplate
summary: Update a single rampScheduleTemplate
tags:
- RampScheduleTemplates
parameters:
- name: id
in: path
required: true
description: ''
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
steps:
type: array
items:
type: object
properties:
trigger:
anyOf:
- type: object
properties:
type:
type: string
const: interval
seconds:
type: number
exclusiveMinimum: 0
required:
- type
- seconds
additionalProperties: false
- type: object
properties:
type:
type: string
const: approval
required:
- type
additionalProperties: false
- type: object
properties:
type:
type: string
const: scheduled
at:
type: string
format: date-time
pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
required:
- type
- at
additionalProperties: false
actions:
type: array
items:
type: object
properties:
targetType:
type: string
const: feature-rule
targetId:
type: string
patch:
type: object
properties:
ruleId:
type: string
coverage:
anyOf:
- type: number
minimum: 0
maximum: 1
- type: 'null'
condition:
anyOf:
- type: string
- type: 'null'
savedGroups:
anyOf:
- type: array
items:
type: object
properties:
match:
type: string
enum:
- all
- none
- any
ids:
type: array
items:
type: string
required:
- match
- ids
additionalProperties: false
- type: 'null'
prerequisites:
anyOf:
- type: array
items:
type: object
properties:
id:
type: string
condition:
type: string
required:
- id
- condition
additionalProperties: false
- type: 'null'
enabled:
anyOf:
- type: boolean
- type: 'null'
required:
- ruleId
additionalProperties: false
required:
- targetType
- targetId
- patch
additionalProperties: false
approvalNotes:
anyOf:
- type: string
- type: 'null'
required:
- trigger
- actions
additionalProperties: false
endPatch:
type: object
properties:
coverage:
type: number
minimum: 0
maximum: 1
condition:
type: string
savedGroups:
type: array
items:
type: object
properties:
match:
type: string
enum:
- all
- none
- any
ids:
type: array
items:
type: string
required:
- match
- ids
additionalProperties: false
prerequisites:
type: array
items:
type: object
properties:
id:
type: string
condition:
type: string
required:
- id
- condition
additionalProperties: false
additionalProperties: false
official:
type: boolean
additionalProperties: false
responses:
'200':
content:
application/json:
schema:
type: object
properties:
rampScheduleTemplate:
$ref: '#/components/schemas/RampScheduleTemplate'
required:
- rampScheduleTemplate
additionalProperties: false
x-codeSamples:
- lang: cURL
source: "curl -X PUT 'https://api.growthbook.io/api/v1/ramp-schedule-templates/{id}' \\\n -H 'Authorization: Bearer YOUR_API_KEY'"
/v1/ramp-schedule-templates:
post:
operationId: createRampScheduleTemplate
summary: Create a single rampScheduleTemplate
tags:
- RampScheduleTemplates
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
steps:
type: array
items:
type: object
properties:
trigger:
anyOf:
- type: object
properties:
type:
type: string
const: interval
seconds:
type: number
exclusiveMinimum: 0
required:
- type
- seconds
additionalProperties: false
- type: object
properties:
type:
type: string
const: approval
required:
- type
additionalProperties: false
- type: object
properties:
type:
type: string
const: scheduled
at:
type: string
format: date-time
pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
required:
- type
- at
additionalProperties: false
actions:
type: array
items:
type: object
properties:
targetType:
type: string
const: feature-rule
targetId:
type: string
patch:
type: object
properties:
ruleId:
type: string
coverage:
anyOf:
- type: number
minimum: 0
maximum: 1
- type: 'null'
condition:
anyOf:
- type: string
- type: 'null'
savedGroups:
anyOf:
- type: array
items:
type: object
properties:
match:
type: string
enum:
- all
- none
- any
ids:
type: array
items:
type: string
required:
- match
- ids
additionalProperties: false
- type: 'null'
prerequisites:
anyOf:
- type: array
items:
type: object
properties:
id:
type: string
condition:
type: string
required:
- id
- condition
additionalProperties: false
- type: 'null'
enabled:
anyOf:
- type: boolean
- type: 'null'
required:
- ruleId
additionalProperties: false
required:
- targetType
- targetId
- patch
additionalProperties: false
approvalNotes:
anyOf:
- type: string
- type: 'null'
required:
- trigger
- actions
additionalProperties: false
endPatch:
type: object
properties:
coverage:
type: number
minimum: 0
maximum: 1
condition:
type: string
savedGroups:
type: array
items:
type: object
properties:
match:
type: string
enum:
- all
- none
- any
ids:
type: array
items:
type: string
required:
- match
- ids
additionalProperties: false
prerequisites:
type: array
items:
type: object
properties:
id:
type: string
condition:
type: string
required:
- id
- condition
additionalProperties: false
additionalProperties: false
official:
type: boolean
required:
- name
- steps
additionalProperties: false
responses:
'200':
content:
application/json:
schema:
type: object
properties:
rampScheduleTemplate:
$ref: '#/components/schemas/RampScheduleTemplate'
required:
- rampScheduleTemplate
additionalProperties: false
x-codeSamples:
- lang: cURL
source: "curl -X POST 'https://api.growthbook.io/api/v1/ramp-schedule-templates' \\\n -H 'Authorization: Bearer YOUR_API_KEY'"
get:
operationId: listRampScheduleTemplates
summary: Get all rampScheduleTemplates
tags:
- RampScheduleTemplates
responses:
'200':
content:
application/json:
schema:
type: object
properties:
rampScheduleTemplates:
type: array
items:
$ref: '#/components/schemas/RampScheduleTemplate'
required:
- rampScheduleTemplates
additionalProperties: false
x-codeSamples:
- lang: cURL
source: "curl -X GET 'https://api.growthbook.io/api/v1/ramp-schedule-templates' \\\n -H 'Authorization: Bearer YOUR_API_KEY'"
components:
schemas:
RampScheduleTemplate:
type: object
properties:
id:
type: string
dateCreated:
type: string
format: date-time
pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
dateUpdated:
type: string
format: date-time
pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
name:
type: string
steps:
type: array
items:
type: object
properties:
trigger:
anyOf:
- type: object
properties:
type:
type: string
const: interval
seconds:
type: number
exclusiveMinimum: 0
required:
- type
- seconds
additionalProperties: false
- type: object
properties:
type:
type: string
const: approval
required:
- type
additionalProperties: false
- type: object
properties:
type:
type: string
const: scheduled
at:
type: string
format: date-time
pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
required:
- type
- at
additionalProperties: false
actions:
type: array
items:
type: object
properties:
targetType:
type: string
const: feature-rule
targetId:
type: string
patch:
type: object
properties:
ruleId:
type: string
coverage:
anyOf:
- type: number
minimum: 0
maximum: 1
- type: 'null'
condition:
anyOf:
- type: string
- type: 'null'
savedGroups:
anyOf:
- type: array
items:
type: object
properties:
match:
type: string
enum:
- all
- none
- any
ids:
type: array
items:
type: string
required:
- match
- ids
additionalProperties: false
- type: 'null'
prerequisites:
anyOf:
- type: array
items:
type: object
properties:
id:
type: string
condition:
type: string
required:
- id
- condition
additionalProperties: false
- type: 'null'
enabled:
anyOf:
- type: boolean
- type: 'null'
required:
- ruleId
additionalProperties: false
required:
- targetType
- targetId
- patch
additionalProperties: false
approvalNotes:
anyOf:
- type: string
- type: 'null'
required:
- trigger
- actions
additionalProperties: false
endPatch:
type: object
properties:
coverage:
type: number
minimum: 0
maximum: 1
condition:
type: string
savedGroups:
type: array
items:
type: object
properties:
match:
type: string
enum:
- all
- none
- any
ids:
type: array
items:
type: string
required:
- match
- ids
additionalProperties: false
prerequisites:
type: array
items:
type: object
properties:
id:
type: string
condition:
type: string
required:
- id
- condition
additionalProperties: false
additionalProperties: false
official:
type: boolean
required:
- id
- dateCreated
- dateUpdated
- name
- steps
additionalProperties: false
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