Products
Manage Stripe products via the Admin API
Products API
Manage your Stripe products programmatically. Products represent the goods or services you sell.
Endpoints
GET /api/admin/stripe/products
List all products from your Stripe account.
Query Parameters
| Parameter | Type | Description |
|---|---|---|
limit | number | Maximum number of products to return (default: 10, max: 100) |
starting_after | string | Cursor for pagination |
Response
{
"data": [
{
"id": "prod_1234567890",
"object": "product",
"active": true,
"name": "Premium Plan",
"description": "Access to all premium features",
"images": [],
"metadata": {},
"created": 1234567890,
"updated": 1234567890
}
],
"has_more": false
}POST /api/admin/stripe/products
Create a new product in Stripe.
Request Body
{
"name": "Premium Plan",
"description": "Access to all premium features",
"active": true,
"metadata": {
"tier": "premium",
"category": "subscription"
}
}Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | The product name |
description | string | No | Product description |
active | boolean | No | Whether the product is active (default: true) |
metadata | object | No | Key-value pairs for storing additional information |
images | string[] | No | Array of image URLs |
Response
{
"id": "prod_1234567890",
"object": "product",
"active": true,
"name": "Premium Plan",
"description": "Access to all premium features",
"images": [],
"metadata": {
"tier": "premium",
"category": "subscription"
},
"created": 1234567890,
"updated": 1234567890
}PATCH /api/admin/stripe/products
Update an existing product.
Request Body
{
"id": "prod_1234567890",
"name": "Updated Premium Plan",
"description": "Updated description",
"active": true,
"metadata": {
"tier": "premium"
}
}Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The product ID to update |
name | string | No | New product name |
description | string | No | New description |
active | boolean | No | Active status |
metadata | object | No | Updated metadata |
Response
{
"id": "prod_1234567890",
"object": "product",
"active": true,
"name": "Updated Premium Plan",
"description": "Updated description",
"images": [],
"metadata": {
"tier": "premium"
},
"created": 1234567890,
"updated": 1234567900
}Example Usage
Create a Product
curl -X POST /api/admin/stripe/products \
-H "Content-Type: application/json" \
-d '{
"name": "Pro Subscription",
"description": "Professional plan with advanced features",
"metadata": {
"plan": "pro"
}
}'List Products
curl /api/admin/stripe/products?limit=20Update a Product
curl -X PATCH /api/admin/stripe/products \
-H "Content-Type: application/json" \
-d '{
"id": "prod_1234567890",
"name": "Pro Subscription (Updated)"
}'