Collectly Appointments API

The appointments API from Collectly — 2 operation(s) for appointments.

Operations 4

GET /practices/{practice_id}/appointments Get practices by practice id appointments #
POST /practices/{practice_id}/appointments Create practices by practice id appointments #
GET /practices/{practice_id}/appointments/{appointments} Get practices by practice id appointments by appointments #
PATCH /practices/{practice_id}/appointments/{appointments} Update a resource #

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/collectly:collectly-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 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

collectly-appointments-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: '### Pagination

    Requests that return multiple items will be paginated to 100 items by default.

    You can specify further pages with the ?page parameter. For some resources, you can also set a custom

    page size up to 1000 with the ?per_page parameter.


    X-Total-Count – Total number of results

    X-Limit – Number results per page

    X-Page-Last – Number of last page

    X-Page – Current Page Number (starts from 0)'
  title: partners1 Appointments API
  version: '1'
servers:
- url: sandbox.collectly.co/api/api/partners/v1
security:
- ApiKey: []
tags:
- name: Appointments
paths:
  /practices/{practice_id}/appointments:
    get:
      parameters:
      - description: Practice ID in which the requested resource exists
        in: path
        name: practice_id
        required: true
        schema:
          type: string
      - description: Page number of dataset
        in: query
        name: page
        required: false
        schema:
          minimum: 0
          type: integer
      - description: Custom page size of dataset
        in: query
        name: per_page
        required: false
        schema:
          default: 100
          type: integer
      - description: String with a comma-separated list of parameters by which to sort the dataset. To specify a descending order, add a "-" character before the parameter. For example, `?sort=-created_at,id`
        in: query
        name: sort
        required: false
        schema:
          example: ''
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Appointment'
          description: OK
          headers:
            X-Limit:
              description: Number results per page. Requests that return multiple items will be paginated to 100 items by default. You can specify further pages with the `?page` parameter. For some resources, you can also set a custom page size up to 1000 with the `?per_page` parameter.
              schema:
                type: integer
            X-Page:
              description: Current Page Number (starts from 0)
              schema:
                type: integer
            X-Page-Last:
              description: Number of last page
              schema:
                type: integer
            X-Total-Count:
              description: Total number of results
              schema:
                type: integer
      tags:
      - Appointments
      summary: Get practices by practice id appointments
      x-summary-source: derived
      operationId: getPracticesByPracticeIdAppointments
      x-operation-id-source: derived
    post:
      parameters:
      - description: Practice ID in which the requested resource exists
        in: path
        name: practice_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Appointment'
        description: Request Body
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Appointment'
          description: OK
          headers: {}
      tags:
      - Appointments
      summary: Create practices by practice id appointments
      x-summary-source: derived
      operationId: postPracticesByPracticeIdAppointments
      x-operation-id-source: derived
  /practices/{practice_id}/appointments/{appointments}:
    get:
      parameters:
      - description: Practice ID in which the requested resource exists
        in: path
        name: practice_id
        required: true
        schema:
          type: string
      - description: Resource Identifier
        in: path
        name: appointments
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Appointment'
          description: OK
          headers: {}
      tags:
      - Appointments
      summary: Get practices by practice id appointments by appointments
      x-summary-source: derived
      operationId: getPracticesByPracticeIdAppointmentsByAppointments
      x-operation-id-source: derived
    patch:
      description: Update a resource.
      parameters:
      - description: Practice ID in which the requested resource exists
        in: path
        name: practice_id
        required: true
        schema:
          type: string
      - description: Resource Identifier
        in: path
        name: appointments
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Appointment'
        description: Request Body
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Appointment'
          description: OK
          headers: {}
      summary: Update a resource
      tags:
      - Appointments
      operationId: patchPracticesByPracticeIdAppointmentsByAppointments
      x-operation-id-source: derived
components:
  schemas:
    Appointment:
      properties:
        appointment_type:
          type: string
        billing_provider_npi:
          description: If provided, Collectly will look up imported providers by NPI instead of external_id. Do not provide both 'external_billing_provider_id' and 'billing_provider_npi'.
          type: string
          writeOnly: true
        client_id: {}
        collectly_patient_id:
          format: int32
          type: integer
        collectly_primary_insurance_policy_id:
          format: int32
          type: integer
        collectly_secondary_insurance_policy_id:
          format: int32
          type: integer
        company_id: {}
        created_at:
          format: date-time
          readOnly: true
          type: string
        expected_copay_amount: {}
        external_billing_provider_id:
          type: string
        external_billing_provider_name:
          description: If provided, Collectly will look up imported providers by name instead of external_id. Do not provide both 'external_billing_provider_id' and 'external_billing_provider_name'.
          type: string
          writeOnly: true
        external_id:
          type: string
        external_location_id:
          type: string
        external_location_name:
          description: If provided, Collectly will look up imported locations by name instead of external_id. Do not provide both 'external_location_id' and 'external_location_name'.
          type: string
          writeOnly: true
        external_patient_id:
          type: string
          writeOnly: true
        external_provider_id:
          type: string
        external_provider_name:
          description: If provided, Collectly will look up imported providers by name instead of external_id. Do not provide both 'external_provider_id' and 'external_provider_name'.
          type: string
          writeOnly: true
        external_status:
          enum:
          - active
          - cancelled
          - rescheduled
          - no_show
          type: string
        id:
          format: int32
          readOnly: true
          type: integer
        metadata:
          description: Additional data to be stored with the appointment. This can be used to store any extra information that does not fit into the predefined fields.
          type: object
          writeOnly: true
        modified_at:
          format: date-time
          readOnly: true
          type: string
        provider_npi:
          description: If provided, Collectly will look up imported providers by NPI instead of external_id. Do not provide both 'external_provider_id' and 'provider_npi'.
          type: string
          writeOnly: true
        service_date_end:
          format: date-time
          type: string
        service_date_end_local:
          format: date-time
          type: string
          writeOnly: true
        service_date_start:
          format: date-time
          type: string
        service_date_start_local:
          format: date-time
          type: string
          writeOnly: true
        timezone_local:
          type: string
          writeOnly: true
      required:
      - appointment_type
      - external_id
      - external_status
      - service_date_end
      - service_date_start
      type: object
  securitySchemes:
    ApiKey:
      in: header
      name: Authorization
      type: apiKey
x-provenance:
  method: searched
  source: https://docs.collectly.co/reference
  harvested: '2026-10-14'
  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://docs.collectly.co/reference/delete_practices-practice-id-insurance-policies-insurance-policies.md
  - https://docs.collectly.co/reference/delete_practices-practice-id-patients-patient-id-checkout-patient-checkout.md
  - https://docs.collectly.co/reference/delete_practices-practice-id-patients-patient-id-payment-methods-payment-methods.md
  - https://docs.collectly.co/reference/delete_practices-practice-id-patients-patient-id-payment-plans-payment-plans.md
  - https://docs.collectly.co/reference/delete_practices-practice-id-patients-patient-id-subscriptions-subscriptions.md
  - https://docs.collectly.co/reference/get_company.md
  - https://docs.collectly.co/reference/get_patient-forms-patient-forms.md
  - https://docs.collectly.co/reference/get_patient-forms.md
  - https://docs.collectly.co/reference/get_practices-info-practices-info.md
  - https://docs.collectly.co/reference/get_practices-info.md
  - https://docs.collectly.co/reference/get_practices-practice-id-appointments-appointments.md
  - https://docs.collectly.co/reference/get_practices-practice-id-appointments.md
  - https://docs.collectly.co/reference/get_practices-practice-id-insurance-companies-insurance-companies.md
  - https://docs.collectly.co/reference/get_practices-practice-id-insurance-companies.md
  - https://docs.collectly.co/reference/get_practices-practice-id-insurance-policies-insurance-policies.md
  - https://docs.collectly.co/reference/get_practices-practice-id-insurance-policies.md
  - https://docs.collectly.co/reference/get_practices-practice-id-locations-locations.md
  - https://docs.collectly.co/reference/get_practices-practice-id-locations.md
  - https://docs.collectly.co/reference/get_practices-practice-id-patients-patient-id-payment-methods-payment-methods.md
  - https://docs.collectly.co/reference/get_practices-practice-id-patients-patient-id-payment-methods.md
  - https://docs.collectly.co/reference/get_practices-practice-id-patients-patient-id-payment-plans-payment-plans.md
  - https://docs.collectly.co/reference/get_practices-practice-id-patients-patient-id-payment-plans.md
  - https://docs.collectly.co/reference/get_practices-practice-id-patients-patient-id-statement-statements.md
  - https://docs.collectly.co/reference/get_practices-practice-id-patients-patient-id-statement.md
  - https://docs.collectly.co/reference/get_practices-practice-id-patients-patient-id-subscriptions-subscriptions.md
  - https://docs.collectly.co/reference/get_practices-practice-id-patients-patient-id-subscriptions.md
  - https://docs.collectly.co/reference/get_practices-practice-id-patients-patients.md
  - https://docs.collectly.co/reference/get_practices-practice-id-patients.md
  - https://docs.collectly.co/reference/get_practices-practice-id-payments-payments.md
  - https://docs.collectly.co/reference/get_practices-practice-id-payments.md
  - https://docs.collectly.co/reference/get_practices-practice-id-providers-providers.md
  - https://docs.collectly.co/reference/get_practices-practice-id-providers.md
  - https://docs.collectly.co/reference/get_practices-practice-id-unmapped-patients-unmapped-patients.md
  - https://docs.collectly.co/reference/get_practices-practice-id-unmapped-patients.md
  - https://docs.collectly.co/reference/get_practices-practices.md
  - https://docs.collectly.co/reference/get_practices.md
  - https://docs.collectly.co/reference/get_users-users.md
  - https://docs.collectly.co/reference/get_users.md
  - https://docs.collectly.co/reference/patch_practices-practice-id-appointments-appointments.md
  - https://docs.collectly.co/reference/patch_practices-practice-id-insurance-companies-insurance-companies.md
  - https://docs.collectly.co/reference/patch_practices-practice-id-insurance-policies-insurance-policies.md
  - https://docs.collectly.co/reference/patch_practices-practice-id-locations-locations.md
  - https://docs.collectly.co/reference/patch_practices-practice-id-patients-patient-id-payment-plans-payment-plans.md
  - https://docs.collectly.co/reference/patch_practices-practice-id-patients-patient-id-subscriptions-subscriptions.md
  - https://docs.collectly.co/reference/patch_practices-practice-id-patients-patients.md
  - https://docs.collectly.co/reference/patch_practices-practice-id-providers-providers.md
  - https://docs.collectly.co/reference/patch_practices-practice-id-unmapped-patients-unmapped-patients.md
  - https://docs.collectly.co/reference/patch_practices-practices.md
  - https://docs.collectly.co/reference/patch_users-users.md
  - https://docs.collectly.co/reference/post_login.md
  - https://docs.collectly.co/reference/post_patient-forms-patient-forms-sign.md
  - https://docs.collectly.co/reference/post_patient-forms.md
  - https://docs.collectly.co/reference/post_patient-lookup.md
  - https://docs.collectly.co/reference/post_practices-practice-id-appointments.md
  - https://docs.collectly.co/reference/post_practices-practice-id-insurance-companies.md
  - https://docs.collectly.co/reference/post_practices-practice-id-insurance-policies.md
  - https://docs.collectly.co/reference/post_practices-practice-id-locations.md
  - https://docs.collectly.co/reference/post_practices-practice-id-patients-patient-id-payment-methods-payment-methods-charge.md
  - https://docs.collectly.co/reference/post_practices-practice-id-patients-patient-id-payment-methods.md
  - https://docs.collectly.co/reference/post_practices-practice-id-patients-patient-id-payment-plans-request.md
  - https://docs.collectly.co/reference/post_practices-practice-id-patients-patient-id-payment-plans.md
  - https://docs.collectly.co/reference/post_practices-practice-id-patients-patient-id-statement.md
  - https://docs.collectly.co/reference/post_practices-practice-id-patients-patient-id-subscriptions.md
  - https://docs.collectly.co/reference/post_practices-practice-id-patients.md
  - https://docs.collectly.co/reference/post_practices-practice-id-payments-payment-id-refund.md
  - https://docs.collectly.co/reference/post_practices-practice-id-providers.md
  - https://docs.collectly.co/reference/post_practices-practice-id-store-payment-method.md
  - https://docs.collectly.co/reference/post_practices-practice-id-unmapped-patients.md
  - https://docs.collectly.co/reference/post_practices-practices-post-apply-payment.md
  - https://docs.collectly.co/reference/post_practices.md
  - https://docs.collectly.co/reference/post_users.md
  merge:
    pages: 71
    deduped: 186
    conflicts_kept_first: 0