> ## Documentation Index
> Fetch the complete documentation index at: https://developer.vetcove.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List all calendar resources

> Returns a list of all calendar resources across all clinics in the organization. The calendar resources are sorted by creation date, with the most recent appearing first.

A **calendar resource** represents a schedulable person or asset on a clinic's calendar (typically a veterinarian or technician). Appointments are assigned to calendar resources.



## OpenAPI

````yaml get /ext/v2/calendar-resources/
openapi: 3.1.0
info:
  description: ''
  title: NinjaAPI
  version: 2.0.0
servers:
  - url: https://connect.vetcove.com/
security: []
paths:
  /ext/v2/calendar-resources/:
    get:
      tags:
        - Scheduler
      summary: List all calendar resources
      description: >-
        Returns a list of all calendar resources across all clinics in the
        organization. The calendar resources are sorted by creation date, with
        the most recent appearing first.


        A **calendar resource** represents a schedulable person or asset on a
        clinic's calendar (typically a veterinarian or technician). Appointments
        are assigned to calendar resources.
      operationId: calendar_resource_list
      parameters:
        - description: When provided, filters to objects with these IDs.
          in: query
          name: ids
          required: false
          schema:
            anyOf:
              - items:
                  type: integer
                type: array
              - type: 'null'
            description: When provided, filters to objects with these IDs.
            title: Ids
        - description: >-
            A cursor used for pagination. Fetches the page of results ending
            immediately before the object with the given ID. Cannot be used at
            the same time as `starting_after`.
          in: query
          name: ending_before
          required: false
          schema:
            anyOf:
              - type: integer
              - type: 'null'
            description: >-
              A cursor used for pagination. Fetches the page of results ending
              immediately before the object with the given ID. Cannot be used at
              the same time as `starting_after`.
            title: Ending Before
        - description: >-
            A cursor used for pagination. Fetches the page of results starting
            immediately after the given ID. Cannot be used at the same time as
            `ending_before`.
          in: query
          name: starting_after
          required: false
          schema:
            anyOf:
              - type: integer
              - type: 'null'
            description: >-
              A cursor used for pagination. Fetches the page of results starting
              immediately after the given ID. Cannot be used at the same time as
              `ending_before`.
            title: Starting After
        - description: The maximum number of items to return per page.
          in: query
          name: limit
          required: false
          schema:
            default: 10
            description: The maximum number of items to return per page.
            maximum: 100
            minimum: 1
            title: Limit
            type: integer
        - description: >-
            A cursor token used for pagination. This token contains encoded
            information about the last seen record in order to continue
            pagination. Cannot be used with `starting_after` or `ending_before`
            parameters.
          in: query
          name: cursor
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              A cursor token used for pagination. This token contains encoded
              information about the last seen record in order to continue
              pagination. Cannot be used with `starting_after` or
              `ending_before` parameters.
            title: Cursor
        - description: >-
            Filters to objects modified on or after this datetime (ISO8601 UTC,
            e.g. 2025-08-25T10:30:00Z). Cannot be used with `starting_after` or
            `ending_before` parameters.
          in: query
          name: modified__gte
          required: false
          schema:
            anyOf:
              - format: date-time
                type: string
              - type: 'null'
            description: >-
              Filters to objects modified on or after this datetime (ISO8601
              UTC, e.g. 2025-08-25T10:30:00Z). Cannot be used with
              `starting_after` or `ending_before` parameters.
            title: Modified  Gte
        - description: >-
            Filters to objects modified on or before this datetime (ISO8601 UTC,
            e.g. 2025-08-25T10:30:00Z). Cannot be used with `starting_after` or
            `ending_before` parameters.
          in: query
          name: modified__lte
          required: false
          schema:
            anyOf:
              - format: date-time
                type: string
              - type: 'null'
            description: >-
              Filters to objects modified on or before this datetime (ISO8601
              UTC, e.g. 2025-08-25T10:30:00Z). Cannot be used with
              `starting_after` or `ending_before` parameters.
            title: Modified  Lte
        - description: >-
            When 'FALSE' (default), filters to non-deleted records only. When
            'TRUE', filters to soft-deleted records only. When 'ALL', returns
            both deleted and non-deleted records.
          in: query
          name: is_deleted
          required: false
          schema:
            allOf:
              - enum:
                  - 'FALSE'
                  - 'TRUE'
                  - ALL
                title: DeletedFilterOption
                type: string
            default: 'FALSE'
            description: >-
              When 'FALSE' (default), filters to non-deleted records only. When
              'TRUE', filters to soft-deleted records only. When 'ALL', returns
              both deleted and non-deleted records.
        - description: When provided, filters the resources for the clinic with this ID
          in: query
          name: clinic_id
          required: false
          schema:
            anyOf:
              - type: integer
              - type: 'null'
            description: When provided, filters the resources for the clinic with this ID
            title: Clinic Id
        - description: When provided, filters the resources for the calendar with this ID
          in: query
          name: calendar_id
          required: false
          schema:
            anyOf:
              - type: integer
              - type: 'null'
            description: When provided, filters the resources for the calendar with this ID
            title: Calendar Id
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Calendar_ResourceList'
          description: OK
      security:
        - ExternalAPIAuth: []
components:
  schemas:
    Calendar_ResourceList:
      properties:
        data:
          description: A single page of data contained within this list.
          items:
            $ref: '#/components/schemas/ExternalCalendarResourceSchema'
          title: Data
          type: array
        has_more:
          default: false
          description: Whether there are more pages or data in this list.
          title: Has More
          type: boolean
        next_page:
          description: A URL linking to the next page of this list.
          title: Next Page
          type: string
        type:
          default: list
          description: Type of this object. Always `list`.
          title: Type
          type: string
      required:
        - data
        - next_page
      title: Calendar ResourceList
      type: object
    ExternalCalendarResourceSchema:
      description: >-
        Calendar resource represents a provider, room, or similar for a
        calendar.
      properties:
        calendar_id:
          description: The ID of the calendar this resource belongs to.
          title: Calendar Id
          type: integer
        can_client_double_book:
          description: Whether this resource can be double booked from the client side.
          title: Can Client Double Book
          type: boolean
        can_clinic_double_book:
          description: Whether this resource can be double booked from the clinic side.
          title: Can Clinic Double Book
          type: boolean
        clinic_id:
          description: The ID of the clinic this resource belongs to.
          title: Clinic Id
          type: integer
        clinic_user:
          anyOf:
            - $ref: '#/components/schemas/ExternalCalendarResourceClinicUserSchema'
            - type: 'null'
          description: The clinic user associated with this resource, if any.
        created:
          description: The datetime this object was created.
          format: date-time
          title: Created
          type: string
        deleted:
          anyOf:
            - format: date-time
              type: string
            - type: 'null'
          description: The datetime this record was soft deleted.
          title: Deleted
        id:
          description: The unique identifier for this calendar resource object.
          title: Id
          type: integer
        is_deleted:
          description: Whether this record is soft deleted or not.
          title: Is Deleted
          type: boolean
        is_imported:
          description: Whether this resource was created via import from the legacy PIMS.
          title: Is Imported
          type: boolean
        modified:
          description: >-
            The datetime this object was last modified; changes to related
            entities will not update this field.
          format: date-time
          title: Modified
          type: string
        name:
          anyOf:
            - type: string
            - type: 'null'
          description: The name of this resource.
          title: Name
      required:
        - created
        - modified
        - is_deleted
        - deleted
        - id
        - calendar_id
        - clinic_id
        - clinic_user
        - name
        - can_clinic_double_book
        - can_client_double_book
        - is_imported
      title: Calendar Resource
      type: object
    ExternalCalendarResourceClinicUserSchema:
      description: Nested schema for the clinic user on a calendar resource.
      properties:
        id:
          description: The unique identifier for the clinic user.
          title: Id
          type: integer
        name:
          description: The display name of the clinic user.
          title: Name
          type: string
      required:
        - id
        - name
      title: ExternalCalendarResourceClinicUserSchema
      type: object
  securitySchemes:
    ExternalAPIAuth:
      scheme: bearer
      type: http

````