Scalar Payment API
The payment API from Scalar — 6 operation(s) for payment.
The payment API from Scalar — 6 operation(s) for payment.
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/scalar-payment-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Scalar Payment API
contact:
name: Marc from Scalar
url: https://scalar.com
email: support@scalar.com
version: '1.0'
description: 'Operations tagged payment across 2 of this provider''s published API definitions: scalar-core.json, scalar-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.scalar.com/core
security:
- BearerAuth: []
tags:
- name: Payment
paths:
/stripe:
post:
tags:
- Payment
description: Stripe webhook handling
operationId: poststripe
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: 'null'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/400'
'401':
description: No auth
content:
application/json:
schema:
$ref: '#/components/schemas/401'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/403'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/404'
'422':
description: Invalid payload
content:
application/json:
schema:
$ref: '#/components/schemas/422'
'500':
description: Uncaught error
content:
application/json:
schema:
$ref: '#/components/schemas/500'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/object'
required: true
summary: Poststripe
x-summary-source: derived
/payment/start:
post:
tags:
- Payment
description: Create a new stripe checkout session or redirect to the customer billing portal.
operationId: postpaymentStart
responses:
'200':
description: Default Response
content:
text/plain:
schema:
type: string
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/400'
'401':
description: No auth
content:
application/json:
schema:
$ref: '#/components/schemas/401'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/403'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/404'
'422':
description: Invalid payload
content:
application/json:
schema:
$ref: '#/components/schemas/422'
'500':
description: Uncaught error
content:
application/json:
schema:
$ref: '#/components/schemas/500'
requestBody:
content:
application/json:
schema:
type: object
properties:
billingPlan:
anyOf:
- type: string
const: pro_monthly
- type: string
const: pro_yearly
redirectUrl:
type: string
flow:
type: string
enum:
- oss-agent
required:
- billingPlan
additionalProperties: false
required: true
summary: Postpayment start
x-summary-source: derived
/payment/billing/start:
post:
tags:
- Payment
description: Create a stripe management session for billing management
operationId: postpaymentBillingStart
responses:
'200':
description: Default Response
content:
text/plain:
schema:
type: string
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/400'
'401':
description: No auth
content:
application/json:
schema:
$ref: '#/components/schemas/401'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/403'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/404'
'422':
description: Invalid payload
content:
application/json:
schema:
$ref: '#/components/schemas/422'
'500':
description: Uncaught error
content:
application/json:
schema:
$ref: '#/components/schemas/500'
requestBody:
content:
application/json:
schema:
type: object
properties:
paymentMethod:
type: boolean
additionalProperties: false
required: true
summary: Postpayment billing start
x-summary-source: derived
/internal/billing/sync-subscription:
post:
tags:
- Payment
description: Syncs a teams billable resources with stripe
operationId: postinternalBillingSyncSubscription
responses:
'200':
description: Default Response
content:
application/json:
schema: {}
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/400'
'401':
description: No auth
content:
application/json:
schema:
$ref: '#/components/schemas/401'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/403'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/404'
'422':
description: Invalid payload
content:
application/json:
schema:
$ref: '#/components/schemas/422'
'500':
description: Uncaught error
content:
application/json:
schema:
$ref: '#/components/schemas/500'
requestBody:
content:
application/json:
schema:
type: object
properties:
teamUid:
$ref: '#/components/schemas/nanoid'
required:
- teamUid
additionalProperties: false
required: true
summary: Postinternal billing sync subscription
x-summary-source: derived
/internal/billing/increment/agent-messages:
post:
tags:
- Payment
description: Increments an agent keys message usage in Stripe
operationId: postinternalBillingIncrementAgentMessages
responses:
'200':
description: Default Response
content:
application/json:
schema: {}
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/400'
'401':
description: No auth
content:
application/json:
schema:
$ref: '#/components/schemas/401'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/403'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/404'
'422':
description: Invalid payload
content:
application/json:
schema:
$ref: '#/components/schemas/422'
'500':
description: Uncaught error
content:
application/json:
schema:
$ref: '#/components/schemas/500'
requestBody:
content:
application/json:
schema:
type: object
properties:
messageCount:
type: number
teamUid:
type: string
required:
- messageCount
- teamUid
additionalProperties: false
required: true
summary: Postinternal billing increment agent messages
x-summary-source: derived
/internal/billing/increment/agent-tokens:
post:
tags:
- Payment
description: Increments a teams subscription agent token usage
operationId: postinternalBillingIncrementAgentTokens
responses:
'200':
description: Default Response
content:
application/json:
schema: {}
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/400'
'401':
description: No auth
content:
application/json:
schema:
$ref: '#/components/schemas/401'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/403'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/404'
'422':
description: Invalid payload
content:
application/json:
schema:
$ref: '#/components/schemas/422'
'500':
description: Uncaught error
content:
application/json:
schema:
$ref: '#/components/schemas/500'
requestBody:
content:
application/json:
schema:
type: object
properties:
inputTokenCount:
type: number
outputTokenCount:
type: number
teamUid:
type: string
required:
- inputTokenCount
- outputTokenCount
- teamUid
additionalProperties: false
required: true
summary: Postinternal billing increment agent tokens
x-summary-source: derived
components:
schemas:
object:
type: object
propertyNames:
anyOf:
- type: string
- type: number
- {}
additionalProperties: {}
nanoid:
type: string
minLength: 5
'404':
type: object
properties:
message:
type: string
code:
type: string
required:
- message
- code
'403':
type: object
properties:
message:
type: string
code:
type: string
required:
- message
- code
'422':
type: object
properties:
message:
type: string
code:
type: string
required:
- message
- code
'401':
type: object
properties:
message:
type: string
code:
type: string
required:
- message
- code
'400':
type: object
properties:
message:
type: string
code:
type: string
required:
- message
- code
'500':
type: object
properties:
message:
type: string
code:
type: string
required:
- message
- code
'404_2':
type: object
properties:
message:
type: string
code:
type: string
required:
- message
- code
examples:
- message: Resource not found.
code: not-found
'403_2':
type: object
properties:
message:
type: string
code:
type: string
required:
- message
- code
examples:
- message: You do not have permission to access this resource.
code: forbidden
'422_2':
type: object
properties:
message:
type: string
code:
type: string
required:
- message
- code
examples:
- message: The request body contains invalid values.
code: invalid-payload
'401_2':
type: object
properties:
message:
type: string
code:
type: string
required:
- message
- code
examples:
- message: Invalid authentication token.
code: unauthorized
'400_2':
type: object
properties:
message:
type: string
code:
type: string
required:
- message
- code
examples:
- message: Invalid request parameters.
code: bad-request
'500_2':
type: object
properties:
message:
type: string
code:
type: string
required:
- message
- code
examples:
- message: An unexpected error occurred.
code: unknown
securitySchemes:
BearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
x-refined-from:
- scalar-core.json
- scalar-openapi.json