Billing
Create a Stripe Checkout session
Creates a Stripe Checkout session for upgrading the workspace subscription. Returns a checkout URL to redirect the user to.
Authorization
apiKey AuthorizationBearer <token>
API key from your nodestash dashboard. Pass as a Bearer token in the Authorization header.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
price_id*string
Stripe Price ID for the desired plan.
Response Body
application/json
application/json
application/json
application/json
curl -X POST "https://api.nodestash.io/v1/billing/checkout" \ -H "Content-Type: application/json" \ -d '{ "price_id": "price_1234567890" }'{
"data": {
"checkout_url": "http://example.com"
},
"meta": {
"request_id": "req_abc123def456"
}
}{
"error": {
"code": "VALIDATION_ERROR",
"message": "Request validation failed",
"details": [
{
"field": "email",
"message": "Invalid email"
}
]
},
"meta": {
"request_id": "req_abc123def456"
}
}{
"error": {
"code": "INVALID_API_KEY",
"message": "Missing or invalid Authorization header"
},
"meta": {
"request_id": "req_abc123def456"
}
}{
"error": {
"code": "RATE_LIMITED",
"message": "Rate limit exceeded"
},
"meta": {
"request_id": "req_abc123def456"
}
}Update an activity
Partially updates an activity. Only the provided fields are changed — omitted fields remain untouched. `metadata` is **merged** with existing values (not replaced).
Create a Stripe Customer Portal session
Creates a Stripe Customer Portal session for managing the subscription (update payment method, cancel, view invoices).