athenahealth Appointments API

The Appointments API from athenahealth — 6 operation(s) for appointments.

Operations 6

GET /appointments Search Appointments #
GET /appointments/open Get Open Appointment Slots #
GET /appointments/{appointmentid} Get Appointment #
PUT /appointments/{appointmentid}/cancel Cancel Appointment #
POST /appointments/{appointmentid}/checkin Check In Appointment #
PUT /appointments/{appointmentid}/reschedule Reschedule Appointment #

Documentation

Specifications

Schemas & Data

Other Resources

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/athena-health-appointments-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 email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

athenahealth-appointments-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: athenahealth athenaOne REST Appointments API
  description: 'The athenaOne proprietary REST API exposes the full provider, patient,

    scheduling, clinical, and biller workflow surface of the athenahealth

    cloud-based EHR and practice management platform. All resources are

    scoped to a practice via the practiceid path parameter.

    '
  version: 1.0.0
  contact:
    name: athenahealth Developer Support
    url: https://docs.athenahealth.com/api/support
  license:
    name: athenahealth API Terms
    url: https://www.athenahealth.com/legal/terms
servers:
- url: https://api.platform.athenahealth.com/v1/{practiceid}
  description: Production athenaOne API
  variables:
    practiceid:
      default: '195900'
      description: athenaOne practice identifier
- url: https://api.preview.platform.athenahealth.com/v1/{practiceid}
  description: Preview (sandbox) athenaOne API
  variables:
    practiceid:
      default: '195900'
      description: athenaOne preview practice identifier
security:
- oauth2: []
tags:
- name: Appointments
paths:
  /appointments:
    get:
      summary: Search Appointments
      operationId: searchAppointments
      tags:
      - Appointments
      parameters:
      - name: departmentid
        in: query
        required: true
        schema:
          type: integer
      - name: startdate
        in: query
        schema:
          type: string
      - name: enddate
        in: query
        schema:
          type: string
      responses:
        '200':
          description: Appointments
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppointmentList'
  /appointments/open:
    get:
      summary: Get Open Appointment Slots
      operationId: getOpenAppointmentSlots
      tags:
      - Appointments
      parameters:
      - name: departmentid
        in: query
        required: true
        schema:
          type: integer
      - name: providerid
        in: query
        schema:
          type: integer
      - name: startdate
        in: query
        schema:
          type: string
      - name: enddate
        in: query
        schema:
          type: string
      responses:
        '200':
          description: Open slots
  /appointments/{appointmentid}:
    get:
      summary: Get Appointment
      operationId: getAppointment
      tags:
      - Appointments
      parameters:
      - name: appointmentid
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: Appointment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Appointment'
  /appointments/{appointmentid}/cancel:
    put:
      summary: Cancel Appointment
      operationId: cancelAppointment
      tags:
      - Appointments
      parameters:
      - name: appointmentid
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: Cancellation result
  /appointments/{appointmentid}/checkin:
    post:
      summary: Check In Appointment
      operationId: checkInAppointment
      tags:
      - Appointments
      parameters:
      - name: appointmentid
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: Check-in result
  /appointments/{appointmentid}/reschedule:
    put:
      summary: Reschedule Appointment
      operationId: rescheduleAppointment
      tags:
      - Appointments
      parameters:
      - name: appointmentid
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: Reschedule result
components:
  schemas:
    AppointmentList:
      type: array
      items:
        $ref: '#/components/schemas/Appointment'
    Appointment:
      type: object
      properties:
        appointmentid:
          type: string
        date:
          type: string
          format: date
        starttime:
          type: string
        duration:
          type: integer
        patientid:
          type: string
        providerid:
          type: integer
        departmentid:
          type: integer
        appointmenttype:
          type: string
        appointmentstatus:
          type: string
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.platform.athenahealth.com/oauth2/v1/token
          scopes:
            athena/service/Athenanet.MDP.*: athenahealth MDP scope
        authorizationCode:
          authorizationUrl: https://api.platform.athenahealth.com/oauth2/v1/authorize
          tokenUrl: https://api.platform.athenahealth.com/oauth2/v1/token
          scopes:
            athena/service/Athenanet.MDP.*: athenahealth MDP scope