answeringservicecare-com Offerings API

Services and plan pricing.

Operations 2

GET /services List services ASC offers #
GET /pricing Get current plans and prices #

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.
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 Specification

answeringservicecare-com-offerings-api-openapi.yml Raw ↑
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/