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

# Search Open Times

> Search for open times for a given provider, appointment type, etc. Can be used to find open times in the future or past.

Search for open appointment times.

## Request Body

* **search\_from\_date** (required): The start date/time of the search in ISO 8601 format. Can be a present or future timestamp.
* **appointment\_type** (required): A string of the appointment type category. Available options: `wellness`, `sick`, `technician`, `recheck`.

<Warning>
  This endpoint is currently proposed and subject to change. Functionality, request/response structure, and availability may be modified or removed in future releases. Use with caution in production environments.
</Warning>


## OpenAPI

````yaml POST /services/core/open_api/v1/open_times
openapi: 3.1.0
info:
  title: Oliver Partner API
  description: API for partners to interact with Oliver
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://partner-api.getoliver.com
security:
  - bearerAuth: []
paths:
  /services/core/open_api/v1/open_times:
    post:
      description: >-
        Search for open times for a given provider, appointment type, etc. Can
        be used to find open times in the future or past.
      parameters:
        - name: X-Client-Id
          in: header
          description: The location id of the practice
          required: true
          schema:
            type: string
      requestBody:
        description: Open times request
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenTimesRequest'
      responses:
        '200':
          description: Open times response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenTimesResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GeneralError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GeneralError'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GeneralError'
components:
  schemas:
    OpenTimesRequest:
      type: object
      required:
        - search_from_date
        - appointment_type
      properties:
        search_from_date:
          type: string
          format: date-time
          description: >-
            The start date/time of the search in ISO 8601 format. Can be a
            present or future timestamp.
          example: '2025-01-01T07:00:00Z'
        appointment_type:
          type: string
          enum:
            - wellness
            - sick
            - technician
            - recheck
          description: >-
            An string of the appointment type category. Available options:
            `wellness`, `sick`, `technician`, `recheck`.
    OpenTimesResponse:
      type: object
      required:
        - success
        - data
      properties:
        success:
          type: boolean
        data:
          type: array
          items:
            $ref: '#/components/schemas/OpenTime'
        message:
          type: string
    GeneralError:
      type: object
      required:
        - success
        - message
      properties:
        success:
          type: boolean
        message:
          type: string
        data:
          type: object
    OpenTime:
      type: object
      required:
        - date
        - available
        - times
      properties:
        date:
          type: string
          format: date
          example: MM/DD/YYYY
          description: The date of this result in MM/DD/YYYY format
        available:
          type: boolean
          example: true
          description: Whether this result has open times
        times:
          type: array
          items:
            $ref: '#/components/schemas/TimeSlot'
          description: An array of open times for this date
    TimeSlot:
      type: object
      required:
        - start
        - end
        - label
        - provider_id
        - value
        - uuid
      properties:
        start:
          type: string
          format: time
          description: The start time of this result formatted as 2025-01-01T16:00:00-06:00
        end:
          type: string
          format: time
          description: >-
            The end time of this result formatted as 2025-01-01T16:20:00-06:00
            (20 minutes after the start time)
        provider_id:
          type: string
          description: The ID of the provider that this result is for
        room_id:
          type: string
          description: The ID of the room that this result is for, if applicable
        appointment_type_ids:
          type: array
          description: The IDs of the appointment types that this result is available for
          items:
            type: string
        value:
          type: string
          description: The time value of this result formatted like 16:00
        label:
          type: string
          description: The label of this result formatted like 4:00 pm
        uuid:
          type: string
          description: >-
            The slot identifier for this result. Pass this as `slot_id` to the
            Create Appointment endpoint along with client and patient
            information to book this time.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````