bundle.social Credit API
The credit API from bundle.social — 2 operation(s) for credit.
The credit API from bundle.social — 2 operation(s) for credit.
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/bundle-social:bundle-social-credit-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: bundle.social Credit API
description: REST API for social media management. Perfect for AI assistants, GPTs, automation tools, and integrations. Post to 14+ platforms including Twitter, Instagram, Facebook, LinkedIn, TikTok, Pinterest, Reddit, Discord, Slack, YouTube, Mastodon, Bluesky, Threads, and Google Business. Schedule posts, manage content, analyze performance, and automate your social media workflow across all platforms.
version: 1.0.0
contact:
email: contact@bundle.social
termsOfService: https://bundle.social/terms
servers:
- url: https://api.bundle.social
- url: http://localhost:3001
security:
- ApiKeyAuth: []
tags:
- name: Credit
paths:
/api/v1/billing/credits/balance:
get:
description: 'Retrieve your organization''s prepaid credit balance: settled funds, in-flight holds, and the available amount metered X actions draw from.'
summary: Get credit balance
tags:
- Credit
parameters: []
operationId: credit.getCreditBalance
responses:
'200':
description: '200'
content:
application/json:
schema:
type: object
properties:
organizationId:
type: string
currency:
type: string
enum:
- usd
balanceMicros:
type: integer
heldMicros:
type: integer
availableMicros:
type: integer
balanceCents:
type: integer
availableCents:
type: integer
lowBalanceThresholdMicros:
type:
- integer
- 'null'
lowBalance:
type: boolean
updatedAt:
type:
- string
- 'null'
format: date-time
required:
- organizationId
- currency
- balanceMicros
- heldMicros
- availableMicros
- balanceCents
- availableCents
- lowBalanceThresholdMicros
- lowBalance
- updatedAt
'400':
description: '400'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
issues:
type:
- array
- 'null'
items:
type: object
properties:
code:
type:
- string
- 'null'
enum:
- invalid_type
- invalid_literal
- custom
- invalid_union
- invalid_union_discriminator
- invalid_enum_value
- unrecognized_keys
- invalid_arguments
- invalid_return_type
- invalid_date
- invalid_string
- too_small
- too_big
- invalid_intersection_types
- not_multiple_of
- not_finite
- null
message:
type: string
path:
type:
- array
- 'null'
items:
oneOf:
- type: string
- type: number
required:
- message
required:
- message
'401':
description: '401'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'403':
description: '403'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'404':
description: '404'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'429':
description: '429'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'500':
description: '500'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'502':
description: '502'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'503':
description: '503'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'504':
description: '504'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
/api/v1/billing/billable-usage/quote:
post:
description: Estimate the credit cost of a metered X action (post publishing, analytics reads, imports) before running it, and see whether your current balance covers it.
summary: Quote a metered X action
tags:
- Credit
parameters: []
operationId: credit.quoteBillableUsage
requestBody:
description: Body
content:
application/json:
schema:
type: object
properties:
teamId:
type: string
minLength: 1
text:
default: ''
type: string
texts:
type: array
items:
type: string
action:
type: string
enum:
- TWITTER_CONTENT_CREATE
- TWITTER_CONTENT_CREATE_WITH_URL
- TWITTER_CONTENT_MANAGE
- TWITTER_INTERACTION_DELETE
- TWITTER_POST_READ
- TWITTER_USER_READ
- TWITTER_USER_INTERACTION_CREATE
altTextCount:
type: integer
minimum: 0
quantity:
default: 1
type: integer
minimum: 1
required:
- teamId
responses:
'200':
description: '200'
content:
application/json:
schema:
type: object
properties:
billable:
type: boolean
lines:
type: array
items:
type: object
properties:
action:
type: string
enum:
- TWITTER_CONTENT_CREATE
- TWITTER_CONTENT_CREATE_WITH_URL
- TWITTER_CONTENT_MANAGE
- TWITTER_INTERACTION_DELETE
- TWITTER_POST_READ
- TWITTER_USER_READ
- TWITTER_USER_INTERACTION_CREATE
label:
type: string
unitAmountMicros:
type: integer
amountMicros:
type: integer
amountCents:
type: integer
currency:
type: string
enum:
- usd
required:
- action
- label
- unitAmountMicros
- amountMicros
- amountCents
- currency
totalMicros:
type: integer
totalCents:
type: integer
currency:
type: string
enum:
- usd
availableMicros:
type: integer
availableCents:
type: integer
wouldExceedBalance:
type: boolean
required:
- billable
- lines
- totalMicros
- totalCents
- currency
- availableMicros
- availableCents
- wouldExceedBalance
'400':
description: '400'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
issues:
type:
- array
- 'null'
items:
type: object
properties:
code:
type:
- string
- 'null'
enum:
- invalid_type
- invalid_literal
- custom
- invalid_union
- invalid_union_discriminator
- invalid_enum_value
- unrecognized_keys
- invalid_arguments
- invalid_return_type
- invalid_date
- invalid_string
- too_small
- too_big
- invalid_intersection_types
- not_multiple_of
- not_finite
- null
message:
type: string
path:
type:
- array
- 'null'
items:
oneOf:
- type: string
- type: number
required:
- message
required:
- message
'401':
description: '401'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'403':
description: '403'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'404':
description: '404'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'429':
description: '429'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'500':
description: '500'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'502':
description: '502'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'503':
description: '503'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
'504':
description: '504'
content:
application/json:
schema:
type: object
properties:
statusCode:
type:
- number
- 'null'
message:
type: string
required:
- message
components:
securitySchemes:
ApiKeyAuth:
type: apiKey
name: x-api-key
in: header