Scalar payment API
The payment API from Scalar — 6 operation(s) for payment.
The payment API from Scalar — 6 operation(s) for payment.
openapi: 3.1.1
info:
title: Core access-groups payment API
description: Core services for Scalar
version: 1.0.1
contact:
name: Marc from Scalar
url: https://scalar.com
email: support@scalar.com
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
/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
/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
/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
/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
/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
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
'401':
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
'400':
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
securitySchemes:
BearerAuth:
type: http
scheme: bearer
bearerFormat: JWT