revenuecat

RevenueCat Developer API — projects, metrics, charts, customers, subscriptions, and growth operations

v2.0.0Base: https://api.revenuecat.com/v2Auth: bearer
Chat with this API

Use this API

Web

Chat in the browser →

CLI (one command)

agentbridge chat revenuecat

SDK / Agents

fetch("/api/revenuecat/manifest")

MCP (Claude Desktop / Cursor / Windsurf)

{
  "mcpServers": {
    "revenuecat": {
      "command": "npx",
      "args": ["@agentbridgeai/mcp", "--api", "revenuecat"]
    }
  }
}

Add to ~/.claude/claude_desktop_config.json or Cursor/Windsurf MCP settings.

Actions (22)

GET/projects

list-projects

Get a list of projects

Parameters

starting_afterstringstarting_after
limitintegerlimit
GET/projects/{project_id}/apps

list-apps

Get a list of apps

Parameters

project_idstringrequiredID of the project
starting_afterstringstarting_after
limitintegerlimit
GET/projects/{project_id}/metrics/overview

get-overview-metrics

Get overview metrics for a project

Parameters

project_idstringrequiredID of the project
currencystringISO 4217 currency code
GET/projects/{project_id}/charts/{chart_name}/options

get-chart-options

Get available options for a chart

Parameters

project_idstringrequiredID of the project
chart_namestringrequiredName of the chart to retrieve.
realtimebooleanWhether to request real-time (v3) charts. Defaults to true. Set to false to request the v2 charts.
GET/projects/{project_id}/charts/{chart_name}

get-chart-data

Get chart data

Parameters

project_idstringrequiredID of the project
chart_namestringrequiredName of the chart to retrieve.
realtimebooleanWhether to request real-time (v3) charts. Defaults to true. Set to false to request the v2 charts.
filtersstringJSON array of chart filters. Each filter is a ChartFilter object.
selectorsstringJSON object of chart selectors.
aggregatearrayComma-separated aggregate operations to return in `summary` without raw `values`.
currencystringISO 4217 currency code
resolutionstringTime resolution for the chart data. Use the chart options endpoint to discover available resolutions and their IDs.
start_datestringStart date for the data range (ISO 8601 format)
end_datestringEnd date for the data range (ISO 8601 format)
segmentstringSegment the data by this dimension. Use the chart options endpoint to discover available segments for a chart.
GET/projects/{project_id}/customers

list-customers

Get a list of customers

Parameters

project_idstringrequiredID of the project
starting_afterstringstarting_after
limitintegerlimit
searchstringSearch term. Currently, only searching by email is supported (searching for exact matches in the $email attribute).
GET/projects/{project_id}/customers/{customer_id}

get-customer

Get a customer

Parameters

project_idstringrequiredID of the project
customer_idstringrequiredID of the customer
expandarraySpecifies which fields in the response should be expanded. Accepted values are: `attributes` (requires `customer_information:customers:read` permission).
POST/projects/{project_id}/customers

create-customer

Create a customer

Parameters

project_idstringrequiredID of the project
idstringrequiredThe ID of the customer
attributesarrayattributes
POST/projects/{project_id}/customers/{customer_id}/attributes

set-customer-attributes

Set a customer's attributes

Parameters

project_idstringrequiredID of the project
customer_idstringrequiredID of the customer
attributesarrayrequiredattributes
GET/projects/{project_id}/customers/{customer_id}/attributes

list-customer-attributes

Get a list of the customer's attributes

Parameters

project_idstringrequiredID of the project
customer_idstringrequiredID of the customer
starting_afterstringstarting_after
limitintegerlimit
GET/projects/{project_id}/customers/{customer_id}/subscriptions

list-subscriptions

Get a list of subscriptions associated with a customer

Parameters

project_idstringrequiredID of the project
customer_idstringrequiredID of the customer
environmentstringenvironment
starting_afterstringstarting_after
limitintegerlimit
GET/projects/{project_id}/customers/{customer_id}/purchases

list-purchases

Get a list of purchases associated with a customer

Parameters

project_idstringrequiredID of the project
customer_idstringrequiredID of the customer
environmentstringenvironment
starting_afterstringstarting_after
limitintegerlimit
GET/projects/{project_id}/customers/{customer_id}/active_entitlements

list-customer-active-entitlements

Get a list of customer's active entitlements

Parameters

project_idstringrequiredID of the project
customer_idstringrequiredID of the customer
starting_afterstringstarting_after
limitintegerlimit
GET/projects/{project_id}/subscriptions

search-subscriptions

Search subscriptions by store subscription identifier

Parameters

project_idstringrequiredID of the project
store_subscription_identifierstringrequiredStore ID associated with the subscription for the current or next period.
GET/projects/{project_id}/purchases

search-purchases

Search one-time purchases by store purchase identifier

Parameters

project_idstringrequiredID of the project
store_purchase_identifierstringrequiredStore ID associated with the one-time purchase.
GET/projects/{project_id}/offerings

list-offerings

Get a list of offerings

Parameters

project_idstringrequiredID of the project
starting_afterstringstarting_after
limitintegerlimit
expandarraySpecifies which fields in the response should be expanded. Accepted values are: `items.package` (requires `project_configuration:packages:read` permission), `items.package.product` (requires `project_configuration:products:read` permission).
GET/projects/{project_id}/products

list-products

Get a list of products

Parameters

project_idstringrequiredID of the project
app_idstringThis is an optional query parameter to get a list of products of a given entitlement associated with a particular app
starting_afterstringstarting_after
limitintegerlimit
expandarraySpecifies which fields in the response should be expanded. Accepted values are: `items.app` (requires `project_configuration:apps:read` permission).
GET/projects/{project_id}/entitlements

list-entitlements

Get a list of entitlements

Parameters

project_idstringrequiredID of the project
starting_afterstringstarting_after
limitintegerlimit
expandarraySpecifies which fields in the response should be expanded. Accepted values are: `items.product` (requires `project_configuration:products:read` permission).
GET/projects/{project_id}/paywalls

list-paywalls

Get a list of paywalls

Parameters

project_idstringrequiredID of the project
starting_afterstringstarting_after
limitintegerlimit
expandarraySpecifies which fields in the response should be expanded. Accepted values are: `items.offering` (requires `project_configuration:offerings:read` permission).
POST/projects/{project_id}/customers/{customer_id}/actions/grant_entitlement

grant-customer-entitlement

Grant an entitlement to a customer unless one already exists. As a side effect, a promotional subscription is created.

Parameters

project_idstringrequiredID of the project
customer_idstringrequiredID of the customer
entitlement_idstringrequiredThe ID of the entitlement to grant to the customer.
expires_atintegerrequiredThe date after which the access to the entitlement expires in ms since epoch.
POST/projects/{project_id}/customers/{customer_id}/actions/revoke_granted_entitlement

revoke-customer-granted-entitlement

Revoke a granted entitlement from a customer. As a side effect, the promotional subscription associated with the granted entitlement is expired.

Parameters

project_idstringrequiredID of the project
customer_idstringrequiredID of the customer
entitlement_idstringrequiredThe ID of the granted entitlement to revoke from the customer.
POST/projects/{project_id}/customers/{customer_id}/actions/assign_offering

assign-customer-offering

Assign or clear an offering override for a customer

Parameters

project_idstringrequiredID of the project
customer_idstringrequiredID of the customer
offering_idstringrequiredThe ID of the offering to assign to the customer. Set to null to clear any existing override.