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.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/answeringservicecare-com:answeringservicecare-com-offerings-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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: 3.2.0
info:
title: Answering Service Care Public Offerings API
version: 1.0.0
summary: 'Read-only facts about Answering Service Care: company details, services, pricing, and site search.'
description: 'Answering Service Care (ASC) is a 24/7 US-based answering service with live and AI receptionists. This public API needs no authentication and is safe to call from agents: every operation is a read-only GET. Errors are JSON objects with `code`, `message`, `hint`, and `documentation_url`.
**Rate limits.** 60 requests per minute per client. Every response carries `RateLimit-Policy` and `RateLimit` headers (IETF draft-ietf-httpapi-ratelimit-headers) plus `X-RateLimit-Limit`, `X-RateLimit-Remaining`, and `X-RateLimit-Reset`; over the limit you get a `429` with `Retry-After`.
**Versioning and deprecation.** The major version is in the path (`/api/v1`). Changes within v1 are additive only: new endpoints, fields, and optional parameters. A breaking change ships as a new version (`/api/v2`), and v1 keeps working for at least 12 months after that. During that time v1 responses carry `Deprecation` (RFC 9745) and `Sunset` (RFC 8594) headers and a `Link` with `rel="deprecation"` pointing to the migration notice at https://answeringservicecare.com/developers/.
**Pagination.** `/search` is cursor-paginated: pass a response''s `nextCursor` as `cursor` to get the next page; `nextCursor` is null on the last page.
**Batch and async jobs.** `POST /batch` runs up to 10 of the GET operations in one request; each one counts toward the rate limit. Send `Prefer: respond-async` to get `202 Accepted` with a `Location` job URL instead, then `GET` that URL for the results (jobs expire after 24 hours).
**Idempotency.** `POST /batch` accepts an `Idempotency-Key` header and echoes it back. Every operation in a batch is a read, so retrying with the same key never repeats a side effect.
**Sandbox.** `https://answeringservicecare.com/api/sandbox/v1` serves every operation, including batches, from fixed sample data with `"sandbox": true`, for testing clients against stable responses. It shares the rate limit.
Existing ASC customers also have a separate, authenticated REST API for messages, call recordings, and to-dos; see https://answeringservicecare.com/docs/api-reference/.'
contact:
name: Answering Service Care
url: https://answeringservicecare.com/contact-us/
email: sales@answeringservicecare.com
termsOfService: https://answeringservicecare.com/terms-and-conditions/
servers:
- url: https://answeringservicecare.com/api/v1
description: Production
- url: https://answeringservicecare.com/api/sandbox/v1
description: 'Sandbox: fixed sample data for testing, not real plans or prices'
security: []
tags:
- name: Offerings
description: Services and plan pricing.
paths:
/services:
get:
operationId: listServices
parameters:
- name: search
in: query
required: false
description: Only services whose name or description contains this text, e.g. chat or medical.
schema:
type: string
maxLength: 100
tags:
- Offerings
summary: List services ASC offers
description: 'Returns the service pages on the site, each with a description and page URL, and `offerings`: the core service (24/7 call answering by live receptionists, an AI receptionist, or both) followed by add-ons such as live chat, two-way SMS, outbound calling, and payments by phone.'
responses:
'200':
description: Services
headers:
RateLimit-Policy:
$ref: '#/components/headers/RateLimit-Policy'
RateLimit:
$ref: '#/components/headers/RateLimit'
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceList'
'404':
description: Unknown path (code rest_no_route); check the URL against this document
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'429':
description: Rate limit exceeded (code rate_limited); wait for Retry-After seconds
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
RateLimit-Policy:
$ref: '#/components/headers/RateLimit-Policy'
RateLimit:
$ref: '#/components/headers/RateLimit'
Retry-After:
$ref: '#/components/headers/Retry-After'
default:
description: Unexpected error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/pricing:
get:
operationId: getPricing
parameters:
- name: service
in: query
required: false
description: Only services whose name contains this text, e.g. answering service or live chat.
schema:
type: string
maxLength: 100
- name: billingCycle
in: query
required: false
description: Only monthly or only annual plans.
schema:
type: string
enum:
- monthly
- annual
tags:
- Offerings
summary: Get current plans and prices
description: 'Returns the plans shown on the pricing page, grouped by service (e.g. Answering Service, Live Chat), with monthly and annual prices in USD, included minutes or chats, overage rates, and features. Use this to compare plans or estimate cost. `salesTerms` covers the rest: where add-on rates are published, volume plans (up to 100,000+ minutes a month) and custom contracts, which are quoted, contract terms, BAAs, and links to book a demo or contact sales.'
responses:
'200':
description: Pricing
headers:
RateLimit-Policy:
$ref: '#/components/headers/RateLimit-Policy'
RateLimit:
$ref: '#/components/headers/RateLimit'
content:
application/json:
schema:
$ref: '#/components/schemas/Pricing'
'404':
description: Unknown path (code rest_no_route); check the URL against this document
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'429':
description: Rate limit exceeded (code rate_limited); wait for Retry-After seconds
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
RateLimit-Policy:
$ref: '#/components/headers/RateLimit-Policy'
RateLimit:
$ref: '#/components/headers/RateLimit'
Retry-After:
$ref: '#/components/headers/Retry-After'
'503':
description: Pricing data temporarily unavailable (code asc_pricing_unavailable); the hint links the pricing page
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
default:
description: Unexpected error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
components:
schemas:
Error:
type: object
required:
- code
- message
properties:
code:
type: string
description: Machine-readable error code, e.g. rest_no_route.
message:
type: string
description: Human-readable explanation.
hint:
type: string
description: What to change to make the request succeed.
documentation_url:
type: string
format: uri
data:
type: object
properties:
status:
type: integer
SalesTerms:
type: object
description: Volume plans, contracts, BAAs, and where to get a quote for anything the listed plans do not cover.
properties:
publishedPrices:
type: string
addOnRates:
type: string
format: uri
volume:
type: string
quoted:
type: string
contracts:
type: string
hipaa:
type: string
bookDemo:
type: string
format: uri
contact:
type: string
format: uri
telephone:
type: string
Offering:
type: object
required:
- name
- description
properties:
name:
type: string
description:
type: string
url:
type: string
format: uri
Plan:
type: object
required:
- name
- billingCycle
properties:
name:
type: string
billingCycle:
type: string
enum:
- monthly
- annual
price:
type: string
description: Price as displayed, e.g. "$169".
priceValue:
type: number
description: Numeric price in priceCurrency.
priceCurrency:
type: string
term:
type: string
included:
type: string
description: Usage included, e.g. "100 minutes".
billing:
type: string
overage:
type: string
description: Rate beyond the included usage.
features:
type: array
items:
type: string
mostPopular:
type: boolean
url:
type: string
format: uri
ServiceList:
type: object
properties:
services:
type: array
items:
$ref: '#/components/schemas/Service'
description: The service pages under /services/.
offerings:
$ref: '#/components/schemas/Offerings'
Service:
type: object
required:
- name
- url
properties:
name:
type: string
slug:
type: string
url:
type: string
format: uri
markdownUrl:
type: string
format: uri
description:
type: string
Offerings:
type: object
description: 'What ASC offers: the core answering service first, then add-ons. Add-on rates: salesTerms.addOnRates on /pricing.'
properties:
core:
type: array
items:
$ref: '#/components/schemas/Offering'
description: 24/7 call answering by live receptionists, an AI receptionist, or both.
alsoAvailable:
type: array
items:
$ref: '#/components/schemas/Offering'
Pricing:
type: object
properties:
heading:
type: string
summary:
type: string
notes:
type: array
items:
type: string
currency:
type: string
url:
type: string
format: uri
termsUrl:
type: string
format: uri
lastModified:
type: string
format: date-time
services:
type: array
items:
type: object
properties:
service:
type: string
plans:
type: array
items:
$ref: '#/components/schemas/Plan'
salesTerms:
$ref: '#/components/schemas/SalesTerms'
headers:
RateLimit:
description: Remaining quota and seconds until it resets, e.g. `"default";r=59;t=42`.
schema:
type: string
Retry-After:
description: Seconds to wait before retrying.
schema:
type: integer
RateLimit-Policy:
description: Quota policy, e.g. `"default";q=60;w=60` (60 requests per 60 seconds).
schema:
type: string
externalDocs:
description: Developer overview
url: https://answeringservicecare.com/developers/