accessiBe Accounts API
The Accounts API from accessiBe — 5 operation(s) for accounts.
The Accounts API from accessiBe — 5 operation(s) for accounts.
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/accessibe-accounts-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: Partners API License Accounts API
version: 1.0.1
description: 'This API allows partners to manage access widget licenses for their accounts.
The API requires an API key to authenticate the account and access the endpoints.
The API key must be included in the `x-api-key` header of the request.
The API key is unique for each account and can be found in the Customer Portal in Account Settings - Subscriptions API/CSV access.
The account must be enabled as a partner account to access the endpoints.
Each account has a unique accountId which can be found in the Customer Portal in Account Settings - Account and user details.
'
termsOfService: https://accessibe.com/terms-of-service
contact:
name: API Support
url: https://support.accessibe.com/hc/en-us
email: support@accessibe.com
servers:
- url: /api/v1/partners
tags:
- name: Accounts
paths:
/accounts/{accountId}/access-widget-licenses/{licenseId}:
get:
summary: Get an accessWidget license
description: 'Gets the details of the specified accessWidget license for the specified account ID.
Use GET /accounts/{accountId}/access-widget-licenses and filter by domain to get the licenseId for a specific domain.
This endpoint requires the `x-api-key` header for authentication. The key must match the API key associated with the specified account. The account must also be a partner account.
'
security:
- X-API-Key: []
parameters:
- name: accountId
in: path
required: true
schema:
type: string
description: The ID of the account. You can check your ID [here](https://dashboard.accessibe.com/app/account).
example: 6655ffde924acc9586252c9e
- name: licenseId
in: path
required: true
schema:
type: string
description: The ID of the license.
example: 6655ffdaaf3c1a7b866ad60b
- $ref: '#/components/parameters/ExpandSettingsParam'
responses:
'200':
description: License found
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
message:
type: string
data:
$ref: '#/components/schemas/License'
examples:
LicenseExample:
$ref: '#/components/examples/SingleLicenseExample'
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/UnauthorizedError'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
description: License not found
content:
application/json:
schema:
$ref: '#/components/responses/NotFound'
examples:
notFoundExample:
value:
success: false
message: License not found
tags:
- Accounts
patch:
summary: Update an accessWidget license
description: "Updates the details of the specified accessWidget license for the specified account. Any parameters not provided will be left unchanged. \nUse GET /accounts/{accountId}/access-widget-licenses and filter by domain to get the licenseId for a specific domain.\n\nplanSKU is the type of plan for the license where: \n\n1 = Standard, 2 = Advanced Plus, 3 = Enterprise, 5 = Advanced,\n21 = Micro, 22 = Growth, 23 = Scale\n\nNote: If you pass null for a specific field in `settings` (for example `leadColor: null`), that field set to the default value.\n"
security:
- X-API-Key: []
parameters:
- name: accountId
in: path
required: true
schema:
type: string
description: The ID of the account. You can check your ID [here](https://dashboard.accessibe.com/app/account)
example: 6655ffde924acc9586252c9e
- name: licenseId
in: path
required: true
schema:
type: string
description: The ID of the license.
example: 6655ffdaaf3c1a7b866ad60b
requestBody:
description: The license object to update.
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateLicense'
examples:
LicenseUpdateRequestExample:
$ref: '#/components/examples/LicenseUpdateRequestExample'
responses:
'200':
description: License updated
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
message:
type: string
data:
$ref: '#/components/schemas/LicenseCreateOrUpdateResponse'
examples:
LicenseCreateOrUpdateResponseExample:
$ref: '#/components/examples/LicenseCreateOrUpdateResponseExample'
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/UnauthorizedError'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/NotFound'
'409':
$ref: '#/components/responses/ConflictError'
tags:
- Accounts
/accounts/{accountId}/access-widget-licenses:
get:
summary: Get accessWidget licenses
description: 'Gets all the accessWidget licenses for the specified account.
This endpoint requires the `x-api-key` header for authentication. The key must match the API key associated with the specified account. The account must also be a partner account.
'
security:
- X-API-Key: []
parameters:
- name: accountId
in: path
required: true
schema:
type: string
description: The ID of the account. You can check your ID [here](https://dashboard.accessibe.com/app/account).
example: 6655ffde924acc9586252c9e
- $ref: '#/components/parameters/ExpandSettingsParam'
- name: nextToken
in: query
schema:
type: string
description: Token used in pagination to retrieve the next set of results. Make the call again using the returned token to retrieve the next results.
example: 63fe209a096fed10ca0c08a2
default: null
- name: limit
in: query
schema:
type: integer
format: int32
description: The number of results to return.
example: 3
default: 10
maximum: 150
- name: status
in: query
schema:
enum:
- active
- trial
- expired
- grace
description: Filter the results by license status.
example: active
- name: domain
in: query
schema:
type: string
description: Filter the results by domain.
example: example.com
responses:
'200':
description: The list of licenses found.
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
message:
type: string
data:
type: object
properties:
total:
type: integer
description: The total number of licenses without any filters.
licenses:
type: array
maximum: 150
minimum: 1
items:
$ref: '#/components/schemas/License'
nextToken:
type:
- string
- 'null'
examples:
LicenseExample:
$ref: '#/components/examples/ManyLicensesExample'
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/UnauthorizedError'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
description: No licenses were found
content:
application/json:
schema:
$ref: '#/components/responses/NotFound'
examples:
notFoundExample:
value:
success: false
message: Licenses not found
tags:
- Accounts
post:
summary: Create an accessWidget license
description: "Creates a new accessWidget license for the specified account.\n\nThis endpoint requires the `x-api-key` header for authentication. The key must match the API key associated with the specified account. The account must also be a partner account.\n\nplanSKU is the type of plan for the license where: \n\n1 = Standard, 2 = Advanced Plus, 3 = Enterprise, 5 = Advanced,\n21 = Micro, 22 = Growth, 23 = Scale\n"
security:
- X-API-Key: []
parameters:
- name: accountId
in: path
required: true
schema:
type: string
description: The ID of the account. You can check your ID [here](https://dashboard.accessibe.com/app/account).
example: 6655ffde924acc9586252c9e
requestBody:
description: License object to create.
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateLicense'
examples:
LicenseRequestExample:
$ref: '#/components/examples/LicenseRequestExample'
responses:
'201':
description: License created
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
message:
type: string
data:
$ref: '#/components/schemas/LicenseCreateOrUpdateResponse'
examples:
LicenseCreateOrUpdateResponseExample:
$ref: '#/components/examples/LicenseCreateOrUpdateResponseExample'
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/UnauthorizedError'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
description: Account not found
content:
application/json:
schema:
$ref: '#/components/responses/NotFound'
examples:
notFoundExample:
value:
success: false
message: Account not found
data: []
'409':
$ref: '#/components/responses/ConflictError'
tags:
- Accounts
/accounts/{accountId}/access-widget-licenses/batch-create:
post:
summary: Create multiple accessWidget licenses
description: 'Creates multiple accessWidget licenses for the specified account. The maximum number of licenses that can be created in a single request is 150.
This endpoint requires the `x-api-key` header for authentication. The key must match the API key associated with the specified account. The account must also be a partner account.
planSKU is the type of plan for the license where:
1 = Standard, 2 = Advanced Plus, 3 = Enterprise, 5 = Advanced,
21 = Micro, 22 = Growth, 23 = Scale
'
security:
- X-API-Key: []
parameters:
- name: accountId
in: path
required: true
schema:
type: string
description: The ID of the account. You can check your ID [here](https://dashboard.accessibe.com/app/account).
example: 6655ffde924acc9586252c9e
- name: Idempotency-Key
in: header
schema:
type: string
description: A unique key to ensure the request is processed only once.
example: 53fe209b096f2d10ba0c08a4
requestBody:
description: License objects to be created.
required: true
content:
application/json:
schema:
type: object
properties:
licenses:
type: array
maximum: 150
minimum: 1
items:
$ref: '#/components/schemas/CreateLicense'
examples:
BatchLicenseCreateRequestExample:
$ref: '#/components/examples/BatchLicenseCreateRequestExample'
responses:
'202':
description: Licenses are being created
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
data:
type: object
properties:
batchId:
type: string
status:
type: string
enum:
- processing
- completed
operation:
type: string
enum:
- create
- update
getBatchStatusURL:
type: string
examples:
BatchLicenseCreateResponseExample:
$ref: '#/components/examples/BatchLicenseCreateResponseExample'
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/UnauthorizedError'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
description: Account not found
content:
application/json:
schema:
$ref: '#/components/responses/NotFound'
examples:
notFoundExample:
value:
success: false
message: Account not found
data: []
tags:
- Accounts
/accounts/{accountId}/access-widget-licenses/batch-update:
post:
summary: Update multiple accessWidget licenses
description: 'Updates multiple existing accessWidget licenses for the specified account. The maximum number of licenses that can be updated in a single request is 150.
This endpoint requires the `x-api-key` header for authentication. The key must match the API key associated with the specified account. The account must also be a partner account.
'
security:
- X-API-Key: []
parameters:
- name: accountId
in: path
required: true
schema:
type: string
description: The ID of the account. You can check your ID [here](https://dashboard.accessibe.com/app/account).
example: 6655ffde924acc9586252c9e
- name: Idempotency-Key
in: header
schema:
type: string
description: A unique key to ensure the request is processed only once.
example: 53fe209b096f2d10ba0c08a4
requestBody:
description: License objects to be updated
required: true
content:
application/json:
schema:
type: object
properties:
licenses:
type: array
maximum: 150
minimum: 1
items:
$ref: '#/components/schemas/UpdateLicense'
examples:
BatchLicenseUpdateRequestExample:
$ref: '#/components/examples/BatchLicenseUpdateRequestExample'
responses:
'202':
description: Licenses are being updated
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
data:
type: object
properties:
batchId:
type: string
status:
type: string
enum:
- processing
- completed
operation:
type: string
enum:
- create
- update
getBatchStatusURL:
type: string
examples:
BatchLicenseCreateResponseExample:
$ref: '#/components/examples/BatchLicenseUpdateResponseExample'
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/UnauthorizedError'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
description: Account not found
content:
application/json:
schema:
$ref: '#/components/responses/NotFound'
examples:
notFoundExample:
value:
success: false
message: Account not found
data: []
tags:
- Accounts
/accounts/{accountId}/access-widget-licenses/batch/{batchId}:
get:
summary: Get batch operation status
description: 'Gets the status of a batch operation for creating or updating accessWidget licenses. Use the batchId from the response of either POST /accounts/{accountId}/access-widget-licenses/batch-create or POST /accounts/{accountId}/access-widget-licenses/batch-update.
This endpoint requires the `x-api-key` header for authentication. The key must match the API key associated with the specified account. The account must also be a partner account.
'
security:
- X-API-Key: []
parameters:
- name: accountId
in: path
required: true
schema:
type: string
description: The ID of the account. You can check your ID [here](https://dashboard.accessibe.com/app/account).
example: 6655ffde924acc9586252c9e
- name: batchId
in: query
required: true
schema:
type: string
description: The ID of the batch operation.
example: 6655ffdaaf3c1a7b866ad60b
responses:
'200':
description: Batch operation found
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
data:
$ref: '#/components/schemas/GetBatchStatus'
examples:
GetBatchStatusCompletedExample:
$ref: '#/components/examples/GetBatchStatusCompletedExample'
'202':
description: Batch operation is being processed
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
data:
$ref: '#/components/schemas/GetBatchStatus'
examples:
GetBatchStatusCompletedExample:
$ref: '#/components/examples/GetBatchStatusProcessingExample'
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/UnauthorizedError'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
description: Batch operation not found
content:
application/json:
schema:
$ref: '#/components/responses/NotFound'
examples:
notFoundExample:
value:
success: false
message: Batch operation not found
tags:
- Accounts
components:
schemas:
UpdateSettings:
type: object
properties:
default:
type:
- boolean
- 'null'
description: If true, all customization settings revert to their system defaults, regardless of other fields.
leadColor:
type:
- string
- 'null'
pattern: ^#([a-f0-9A-F]{6})$
language:
type:
- string
- 'null'
enum:
- en
- es
- fr
- de
- pl
- it
- pt
- nl
- hu
- 'no'
- sl
- sk
- sv
- cs
- tr
- ja
- tw
- zh
- he
- ru
- ar
- fi
- uk
- ro
- ga
- el
- sr
- bs
- hr
- lb
- sq
- da
minLength: 2
maxLength: 2
position:
type:
- string
- 'null'
enum:
- left
- right
triggerColor:
type:
- string
- 'null'
pattern: ^#([a-f0-9A-F]{6})$
triggerPositionX:
type:
- string
- 'null'
enum:
- left
- right
triggerPositionY:
type:
- string
- 'null'
enum:
- top
- center
- bottom
triggerSize:
type:
- string
- 'null'
enum:
- small
- medium
- big
triggerRadius:
type:
- string
- 'null'
enum:
- 50%
- '0'
- 10px
- 5px
hideTrigger:
type:
- boolean
- 'null'
triggerOffsetX:
type:
- number
- 'null'
triggerOffsetY:
type:
- number
- 'null'
triggerIcon:
type:
- string
- 'null'
enum:
- checkmark
- display
- display2
- display3
- help
- people
- people2
- settings
- settings2
- wheels
- wheels2
hideMobile:
type:
- boolean
- 'null'
mobile:
type:
- object
- 'null'
properties:
triggerPositionX:
type:
- string
- 'null'
enum:
- left
- right
triggerPositionY:
type:
- string
- 'null'
enum:
- top
- center
- bottom
triggerSize:
type:
- string
- 'null'
enum:
- small
- medium
- big
triggerRadius:
type:
- string
- 'null'
enum:
- 50%
- '0'
- 10px
- 5px
triggerOffsetX:
type:
- number
- 'null'
triggerOffsetY:
type:
- number
- 'null'
statementLink:
type:
- string
- 'null'
format: url
footerHtml:
type:
- string
- 'null'
Plan:
type:
- object
- 'null'
properties:
name:
type: string
planSKU:
type: number
License:
type: object
properties:
id:
type: string
date:
type: string
format: date-time
relatedAccountId:
type: string
domain:
type: string
status:
enum:
- active
- grace
- expired
- trial
price:
type: number
licenseType:
type: string
plan:
$ref: '#/components/schemas/Plan'
relatedBillingId:
type:
- string
- 'null'
statementDate:
type: string
format: date-time
dateTrialExpires:
type: string
format: date-time
datePlanExpires:
type:
- string
- 'null'
format: date-time
datePlanFirstActivated:
type:
- string
- 'null'
format: date-time
lastSubscriptionPaymentId:
type:
- string
- 'null'
enableGoogleAnalytics:
type: boolean
enableRemediationReport:
type: boolean
monthly:
type: boolean
autoRenew:
type: boolean
contactName:
type:
- string
- 'null'
contactEmail:
type:
- string
- 'null'
contactPhone:
type:
- string
- 'null'
contactCountry:
type:
- string
- 'null'
settings:
$ref: '#/components/schemas/LicenseSettings'
description: Widget settings object
maxImagesReached:
type: boolean
readOnly: true
description: Indicates if the maximum allowed images have been reached for this license
maxImagesLimit:
type: number
readOnly: true
description: Shows the maximum images limit for this license
LicenseSettings:
type: object
properties:
leadColor:
type:
- string
- 'null'
pattern: ^#([a-f0-9A-F]{6})$
language:
type:
- string
- 'null'
enum:
- en
- es
- fr
- de
- pl
- it
- pt
- nl
- hu
- 'no'
- sl
- sk
- sv
- cs
- tr
- ja
- tw
- zh
- he
- ru
- ar
- fi
- uk
- ro
- ga
- el
- sr
- bs
- hr
- lb
- sq
- da
minLength: 2
maxLength: 2
position:
type:
- string
- 'null'
enum:
- left
- right
triggerColor:
type:
- string
- 'null'
pattern: ^#([a-f0-9A-F]{6})$
triggerPositionX:
type:
- string
- 'null'
enum:
- left
- right
triggerPositionY:
type:
- string
- 'null'
enum:
- top
- center
- bottom
triggerSize:
type:
- string
- 'null'
enum:
- small
- medium
- big
triggerRadius:
type:
- string
- 'null'
enum:
- 50%
- '0'
- 10px
- 5px
hideTrigger:
type:
- boolean
- 'null'
triggerOffsetX:
type:
- number
- 'null'
triggerOffsetY:
type:
- number
- 'null'
triggerIcon:
type:
- string
- 'null'
enum:
- checkmark
- display
- display2
- display3
- help
- people
- people2
- settings
- settings2
- wheels
- wheels2
hideMobile:
type:
- boolean
- 'null'
mobile:
type:
- object
- 'null'
properties:
triggerPositionX:
type:
- string
- 'null'
enum:
- left
- right
triggerPositionY:
type:
- string
- 'null'
enum:
- top
- center
- bottom
triggerSize:
type:
- string
- 'null'
enum:
- small
- medium
- big
triggerRadius:
type:
- string
- 'null'
enum:
- 50%
- '0'
- 10px
- 5px
triggerOffsetX:
type:
- number
- 'null'
triggerOffsetY:
type:
- number
- 'null'
statementLink:
type:
- string
- 'null'
format: url
footerHtml:
type:
- string
- 'null'
LicenseCreateOrUpdateResponse:
type: object
properties:
id:
type: string
date:
type: string
format: date-time
relatedAccountId:
type: string
domain:
type: string
status:
enum:
- active
- grace
- expired
- trial
price:
type: number
licenseType:
type: string
plan:
$ref: '#/components/schemas/Plan'
relatedBillingId:
type:
- string
- 'null'
statementDate:
type: string
format: date-time
dateTrialExpires:
type: string
format: date-time
datePlanExpires:
type:
- string
- 'null'
format: date-time
datePlanFirstActivated:
type:
- string
- 'null'
format: date-time
lastSubscriptionPaymentId:
type:
- string
- 'null'
enableGoogleAnalytics:
type: boolean
enableRemediationReport:
type: boolean
monthly:
type: boolean
autoRenew:
type: boolean
contactName:
type:
- string
- 'null'
contactEmail:
type:
- string
- 'null'
contactPhone:
type:
- string
- 'null'
contactCountry:
type:
- string
- 'null'
GetBatchStatus:
type: object
properties:
batchId:
type: string
hasErrors:
type: boolean
operation:
type: string
enum:
- create
- update
status:
type: string
enum:
- processing
- completed
successLicenses:
type: array
items:
type: object
properties:
domain:
type: string
getLicenseURL:
type: string
licenseId:
type: string
failedLicenses:
type: array
items:
type: object
properties:
domain:
type: string
message:
type: string
total:
type: integer
description: The total number given in the request
totalFailures:
type: integer
totalSuccesses:
type: integer
UpdateLicense:
type: object
required:
- domain
properties:
domain:
type: string
description: domain of an exiting license
example: example.com
newDomain:
type: string
description: New domain for the license, you can update only if you have the allowTransferByApi set to true
example: test.com
# --- truncated at 32 KB (49 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/accessibe/refs/heads/main/openapi/accessibe-accounts-api-openapi.yml