Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
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.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/acculynx:acculynx-subscriptions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
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 Specification
openapi: 3.2.0
info:
description: 'If you are experiencing issues integrating with this API, please work with your web developer to review your programming before reaching out to us with an issue as we do not provide web development consulting services.
The AccuLynx Webhooks API provides customers programmatic access to manage their webhooks subscriptions.
The base url for these endpoints: is **https://api.acculynx.com/webhooks/v2**
# Authentication Requirements
- All API endpoints require a valid API key
- Provide your API key in the `Authorization` header as a Bearer token
# Testing Options
## Real API Testing
- Requires valid API key authentication
- Interacts with live production data
- Get your API key from your AccuLynx API page
To authenticate:
1. Select the ''api.acculynx.com'' server from the Servers list box
2. Click the green Authorize button next to the Servers list box
3. Enter your API key as a Bearer token when prompted
4. Click Authorize again to complete authentication'
version: 2.2607.0
title: Webhooks Subscriptions API
contact:
url: https://apidocs.acculynx.com/docs/contact-us
license:
name: Proprietary
url: https://my.acculynx.com/signin/TermsView
servers:
- description: AccuLynx API
url: https://api.acculynx.com/webhooks/v2
security:
- bearerAuth: []
tags:
- name: Subscriptions
description: Subscription related endpoints
paths:
/subscriptions:
get:
tags:
- Subscriptions
summary: Get subscriptions
operationId: getSubscriptions
description: 'Retrieves all webhook subscriptions for your company. This endpoint returns a paginated list of webhook subscriptions, including:
- Subscription status (enabled/disabled)
- Consumer URLs where webhook events are sent
- Technical contact information
- Topics each subscription is listening for.
- Integration type of the current subscription.
Use the pagination parameters to control the number of results returned.
Use the subscription status filter to narrow results by subscription state.'
parameters:
- $ref: '#/components/parameters/pageSizeQuery'
- $ref: '#/components/parameters/pageStartIndexQuery'
- $ref: '#/components/parameters/subscriptionStatusQuery'
responses:
'200':
description: A paged list of subscriptions
content:
application/json:
schema:
$ref: '#/components/schemas/subscriptionCollection'
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'416':
$ref: '#/components/responses/416RangeNotSatisfiable'
post:
summary: Create Subscription
operationId: postSubscription
description: 'Creates a new webhook subscription for your company.
You must provide:
- A valid consumer URL where webhook events will be sent
- A technical contact email for notifications about the subscription
- At least one topic name to subscribe to
- An integration type that indicates the purpose of the subscription
Upon successful creation, you''ll receive a subscription ID that you can use to manage this subscription.'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/subscriptionBodyPost'
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/subscriptionPostResponseOk'
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'412':
$ref: '#/components/responses/412PreconditionFailed'
tags:
- Subscriptions
/subscriptions/{subscriptionId}:
get:
tags:
- Subscriptions
summary: Get subscription
operationId: getSubscription
parameters:
- $ref: '#/components/parameters/subscriptionIdPath'
description: 'Retrieves detailed information about a specific subscription.
This endpoint returns comprehensive details about the requested subscription:
- Creation and last modification dates
- Consumer URL where webhook events are sent
- Technical contact information
- Current status (enabled/disabled)
- List of topics this subscription is listening for
- Integration type of the current subscription
Use this endpoint when you need to check the configuration of a specific subscription.'
responses:
'200':
description: The given subscription
content:
application/json:
schema:
$ref: '#/components/schemas/subscription'
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'404':
$ref: '#/components/responses/404NotFound'
put:
summary: Update subscription by id
operationId: updateSubscription
description: 'Updates an existing subscription.
You can modify:
- The technical contact email address
- The list of topics this subscription is listening for
Note that you cannot update the consumer URL after creation. If you need to change the URL,
you must delete this subscription and create a new one.'
parameters:
- $ref: '#/components/parameters/subscriptionIdPath'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/subscriptionBodyPut'
responses:
'204':
description: The resource was updated successfully.
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'404':
$ref: '#/components/responses/404NotFound'
'412':
$ref: '#/components/responses/412PreconditionFailed'
tags:
- Subscriptions
delete:
summary: Delete subscription by id
operationId: deleteSubscription
parameters:
- $ref: '#/components/parameters/subscriptionIdPath'
description: 'Permanently deletes a subscription.
Once deleted:
- The subscription will no longer receive any webhook events
- The subscription cannot be recovered
- Any new events for the topics it was listening to will not be sent
Use this endpoint when you no longer need a particular webhook subscription.'
responses:
'204':
description: The resource was deleted successfully.
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'404':
$ref: '#/components/responses/404NotFound'
tags:
- Subscriptions
/subscriptions/{subscriptionId}/test-event:
post:
summary: Send a test event
operationId: postSendTestEvent
description: 'Sends a test event to your webhook endpoint.
This is extremely useful for:
- Verifying your webhook receiver is properly configured
- Testing your event handling logic
- Confirming connectivity between AccuLynx and your systems
You must specify a valid topic name in the request body. The test event will be sent to the
consumer URL associated with this subscription, regardless of whether the subscription is
actually listening for that specific topic.'
parameters:
- $ref: '#/components/parameters/subscriptionIdPath'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/testEventBodyPost'
responses:
'202':
description: Ok
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'404':
$ref: '#/components/responses/404NotFound'
tags:
- Subscriptions
components:
schemas:
subscriptionPostResponseOk:
description: 'Response returned when a subscription is successfully created.
'
properties:
subscriptionId:
description: 'The unique identifier for the newly created subscription.
Use this ID for all future operations on this subscription.
'
examples:
- 1b9b1f4e-30e1-4918-99c2-aecd236ccd94
format: uuid
type: string
type: object
testEventBodyPost:
properties:
topicName:
description: 'The topic name to use for the test event. - Must be a valid topic name (use GET /topics to see available topics) - The test event will be sent regardless of whether this topic is in your subscription - The payload will be a sample representation of this event type
'
examples:
- job_created
type: string
required:
- topicName
type: object
topicNamesCollection:
description: 'A collection of topic names to subscribe to.
- Must contain at least one valid topic name
- Each topic name must be a string matching an available topic
- Use GET /topics to retrieve the list of available topics
'
examples:
- - milestone-change
items:
type: string
type: array
baseCollection:
description: 'Base structure for all paginated collection responses.
This provides consistent pagination metadata across all collection endpoints.
'
properties:
count:
description: 'The total number of items available across all pages.
Use this to calculate the total number of pages available.
'
type: integer
pageSize:
description: 'The number of items per page in this response.
This reflects either your requested page size or the default value.
'
type: integer
pageStartIndex:
description: 'The starting index of this page of results.
Use with pageSize to track your position in the overall result set.
'
type: integer
type: object
subscription:
allOf:
- $ref: '#/components/schemas/subscriptionLink'
- description: 'Complete subscription details.
Contains all information about a webhook subscription including its configuration and status.
'
properties:
consumerUrl:
description: 'The URL where webhook events are sent for this subscription.
All webhook events will be sent as POST requests to this URL.
'
examples:
- https://www.your-domain.com/webhooks
type: string
createdDate:
description: 'The date and time when this subscription was created.
Always provided in UTC format.
'
format: date-time
type: string
modifiedDate:
description: 'The date and time when this subscription was last modified.
Always provided in UTC format.
Updates when any subscription property changes.
'
format: date-time
type: string
status:
description: 'The current status of the subscription. - enabled: The subscription is active and will receive webhook events - disabled: The subscription is inactive and will not receive webhook events
'
enum:
- enabled
- disabled
type: string
tech_contact:
description: 'The technical contact email address for this subscription.
AccuLynx will use this email to communicate important information about the subscription.
'
examples:
- support@your-company.com
format: email
type: string
topicNames:
description: 'List of event topics this subscription is listening for.
Only events matching these topic names will be sent to the consumer URL.
'
examples:
- - milestone-changed
items:
type: string
minItems: 1
type: array
uniqueItems: true
integrationType:
description: 'The current integration type of the subscription.
'
enum:
- Api
- Zapier
type: string
type: object
subscriptionCollection:
allOf:
- $ref: '#/components/schemas/baseCollection'
- description: 'A paginated collection of webhook subscriptions.
Contains both pagination metadata and the list of subscriptions.
'
properties:
items:
description: 'The list of subscription objects for this page of results.
Each item contains complete subscription details.
'
items:
$ref: '#/components/schemas/subscription'
type: array
type: object
subscriptionBodyPost:
properties:
consumerUrl:
description: 'The URL where webhook events will be sent.
- Must be a valid, publicly accessible HTTPS URL
- Must respond to POST requests
- Cannot be changed after subscription creation
'
examples:
- https://www.your-domain.com/webhooks
format: uri
type: string
techContact:
description: 'Email address for technical contact.
- Used for notifications about subscription status changes
- Used for troubleshooting communication
- Should be monitored regularly
'
examples:
- some-name@some-domain.com
format: email
type: string
topicNames:
$ref: '#/components/schemas/topicNamesCollection'
integrationType:
description: Type that indicates the purpose of the subscription. If nothing is specified, integration type will be Api by default.
type: string
enum:
- Api
examples:
- Api
required:
- consumerUrl
- techContact
- topicNames
type: object
error:
description: 'Standard error response structure.
All API errors follow this consistent format to simplify error handling in your application.
'
properties:
detail:
description: 'A human-readable explanation specific to this occurrence of the problem.
This provides additional details to help resolve this specific error instance.
'
examples:
- More info about this error.
- Validation failed for requested operation
type: string
status:
description: 'The HTTP status code for this occurrence of the problem.
This will match the HTTP response status code.
'
examples:
- 400
type: number
title:
description: 'A short, human-readable summary of the problem.
This should not change from occurrence to occurrence of the same error.
'
examples:
- This error happened.
type: string
traceId:
description: 'A unique identifier for this error occurrence.
Include this ID when contacting AccuLynx support about an error.
'
examples:
- 40f2a8f1-4db865dd47a69226
type: string
type:
description: 'A URI reference that identifies the problem type.
This provides a machine-readable identifier for the error category.
'
examples:
- https://tools.ietf.org/html/rfc7235#section-3.1
type: string
required:
- type
- title
- status
type: object
subscriptionBodyPut:
properties:
technicalContact:
description: 'Updated email address for technical contact.
- Used for notifications about subscription status changes
- Used for troubleshooting communication
- Should be monitored regularly
'
format: email
type: string
topicNames:
$ref: '#/components/schemas/topicNamesCollection'
description: 'Updated list of topic names to subscribe to.
- Must contain at least one valid topic name
- Replaces the entire existing list of topics
- Only events for these topics will be sent to your webhook
'
type: object
subscriptionLink:
description: 'Basic subscription reference information.
Contains identifiers that can be used to reference a specific subscription.
'
properties:
_link:
description: 'The full URI that can be used to access this subscription.
This is a convenience to avoid having to construct the URL yourself.
'
examples:
- https://api.acculynx.com/webhooks/v2/subscriptions/b8270e49-f71d-4b49-aa0a-68bc75090ab5
type: string
format: uri
id:
description: 'The unique identifier of the subscription.
Use this ID in path parameters when working with specific subscriptions.
'
examples:
- 01a7cfc1-2231-4589-9657-7f3004c06bd3
format: uuid
type: string
type: object
responses:
412PreconditionFailed:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: 'Precondition Failed - The request cannot be completed due to failed preconditions.
Common causes:
- Attempting to update a subscription with invalid topic names
- Trying to create a subscription with an invalid URL
- Validation errors specific to the operation
'
416RangeNotSatisfiable:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: 'Range Not Satisfiable - The requested page of results is not available.
Common causes:
- pageStartIndex is beyond the available data range
- Invalid pagination parameters
'
404NotFound:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: 'Not Found - The requested resource does not exist.
Common causes:
- Invalid subscription ID
- Subscription has been deleted
- URL path contains typos or incorrect values
'
400BadRequest:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: 'Bad Request - The server cannot process the request due to a client error.
Common causes:
- Invalid request format
- Missing required fields
- Validation errors in the request data
'
401Unauthorized:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: 'Unauthorized - Authentication is required or has failed.
Common causes:
- Missing API key
- Invalid API key
- Expired or deactivated API key
'
parameters:
subscriptionStatusQuery:
description: "Filters subscriptions by their current status. \n\nAllowed values:\n- All: Returns all subscriptions regardless of status (default)\n- Active: Returns only active subscriptions\n- Inactive: Returns only inactive subscriptions\n\nWhen omitted, defaults to \"All\" and returns all subscriptions.\n"
in: query
name: subscriptionStatusQueryFilter
required: false
schema:
type: string
enum:
- All
- Active
- Inactive
default: All
examples:
- Active
- Inactive
description: Status filter for subscription queries
pageSizeQuery:
description: 'Controls how many items are returned per page in paginated responses.
- Default: 25 items per page if not specified
- Minimum: 1 item per page
- Use with pageStartIndex for navigating through large result sets
'
in: query
name: pageSize
required: false
schema:
default: 25
minimum: 1
type: integer
pageStartIndexQuery:
description: 'Specifies the starting position for paginated results.
- Default: 0 (first page) if not specified
- Minimum: 0
- Example: pageStartIndex=25 with pageSize=25 returns the second page of results
'
in: query
name: pageStartIndex
required: false
schema:
default: 0
minimum: 0
type: integer
subscriptionIdPath:
description: 'The unique identifier (UUID) of the subscription you want to interact with.
This ID is returned when you create a subscription and can be retrieved from the GET /subscriptions endpoint.
'
in: path
name: subscriptionId
required: true
schema:
format: uuid
type: string
securitySchemes:
bearerAuth:
scheme: bearer
type: http
x-provenance:
method: searched
source: https://apidocs.acculynx.com/reference
harvested: '2026-10-28'
tool: harvest-readme-openapi.py
note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
assembled_from:
- https://apidocs.acculynx.com/reference/deletesubscription.md
- https://apidocs.acculynx.com/reference/getsubscription.md
- https://apidocs.acculynx.com/reference/getsubscriptions.md
- https://apidocs.acculynx.com/reference/gettopics.md
- https://apidocs.acculynx.com/reference/postsendtestevent.md
- https://apidocs.acculynx.com/reference/postsubscription.md
- https://apidocs.acculynx.com/reference/updatesubscription.md
merge:
pages: 7
deduped: 569
conflicts_kept_first: 0