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

# Get all availabilities of a practitioner

> Get all availabilities of a practitioner in the specified date range, max 100 days



## OpenAPI

````yaml get /availabilities/{practitionerId}
openapi: 3.0.0
info:
  version: 1.0.0
  title: splose public API
  description: "\nWelcome to the splose API documentation. splose serves as a comprehensive Allied Health & NDIS practice management software designed to streamline administrative tasks and foster the growth of your practice.\n\n# Introduction\nThe splose API follows a REST architectural style, offering JSON-encoded responses, standard HTTP response codes, easily understandable resource-oriented URLs, and robust authentication mechanisms.\n\n# Authentication\n### API Key Authentication\nThe splose API employs API keys for request authentication. Workspace owners can apply for and manage API keys through the splose dashboard. It's crucial to safeguard the API key, as it grants the same permissions as the associated user.\n\n### Bearer Authentication\nAuthentication for API access is achieved via Bearer Authentication. Include the API key in the request header using the format: `Authorization: Bearer your_api_key`.\n\n### Secure Communication\nAll API requests must be conducted over HTTPS. Requests made over plain HTTP will not succeed. Additionally, unauthenticated API requests will result in failure.\n\n# Rate limit\nThere are limits to the number of API calls that your application can make with one API key.\n\n+ Minute Limit: 60 calls per minute\n\n# Error\nsplose uses conventional HTTP response codes to indicate the success or failure of an API request. In general: Codes in the 2xx range indicate success. \nCodes in the 4xx range indicate an error that failed given the information provided. Codes in the 5xx range indicate an error with splose's servers.\n\nError types:\n+ 400 - Bad request: the request failed due to missing or invalid parameters.\n+ 401 - Unauthorized: No valid API key provided.\n+ 404 - Not Found: \tThe requested resource doesn't exist.\n+ 429 - Too Many Requests: Too many requests hit the API too quickly.\n+ 500 - Internal Server Error : Something went wrong on splose's end.\n\n# Datetime\nAll datetime values provided in request parameters and responses are in Coordinated Universal Time (UTC). The accepted datetime formats are outlined below:\n+ 2023-07-01\n+ 2023-07-01T00:00:00Z\n+ 2023-07-01T00:00:00.000Z\n\n# Pagination\n\n### Pagination for Multiple Objects\nFor endpoints returning multiple objects, pagination is in place to manage response sizes. Each response is limited to a certain number of objects. \nAdditionally, the response includes a `links` field that provides URLs for fetching the next and/or previous pages, if applicable.\n\n### Manual Positioning\nYou have the option to manually specify the `id_gt` or `id_lt` value as a request parameter. This allows you to retrieve objects starting from a specific position. If neither of these values is provided, the initial page of objects will be returned by default.\n+ `id_gt`: Request for next page of objects with id greater than the specified value. \n+ `id_lt`: Request for previous page of objects with id less than the specified value. \n\n# Realtime feed\nCertain users may require real-time data retrieval. Given the substantial data volume, retrieving the complete dataset may not be efficient. To address this, we offer the option to retrieve data based on its update timestamp. This approach necessitates fetching the entire dataset only during the initial request. Subsequent retrievals involve fetching solely the modified data to replace outdated information.\n+ `update_gt`: Request for objects updated after the specified datetime. \n+ `update_lt`: Request for objects updated before the specified datetime. \n\n# Change log\n+ 2024-04-10: add payment method and payment endpoints\n+ 2024-02-28: add availability endpoint\n"
  contact:
    email: support@splose.com
servers:
  - url: https://api.splose.com/v1
security: []
externalDocs:
  description: Find out more about splose
  url: https://splose.com
paths:
  /availabilities/{practitionerId}:
    get:
      tags:
        - availability
      summary: Get all availabilities of a practitioner
      description: >-
        Get all availabilities of a practitioner in the specified date range,
        max 100 days
      parameters:
        - schema:
            type: integer
            minimum: 0
            exclusiveMinimum: true
            example: 1
          required: true
          name: practitionerId
          in: path
        - schema:
            anyOf:
              - type: string
              - type: string
            description: Start date of the availabilities
            example: '2024-01-01T00:00:00.000Z'
          required: true
          name: startDate
          in: query
        - schema:
            anyOf:
              - type: string
              - type: string
            description: End date of the availabilities, 100 days since startDate
            example: '2024-01-31T00:00:00.000Z'
          required: true
          name: endDate
          in: query
        - schema:
            type: number
            nullable: true
            description: Search for availabilities with this location id
            example: 1
          required: false
          name: locationId
          in: query
      responses:
        '200':
          description: An array of availabilities
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        date:
                          type: string
                          description: Availability date
                          example: '2024-01-04T00:00:00.000Z'
                        locationId:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          description: The location id of the availability
                          example: 1
                        startTime:
                          type: string
                          pattern: ^(\d{2}):(\d{2})$
                          description: Start time of the availability
                          example: '09:00'
                        endTime:
                          type: string
                          pattern: ^(\d{2}):(\d{2})$
                          description: End time of the availability
                          example: '17:00'
                        repeatInterval:
                          type: string
                          nullable: true
                          enum:
                            - Weekly
                            - Fortnightly
                          description: >-
                            The repeat interval of the availability if
                            applicable
                          example: Weekly
                      required:
                        - date
                        - locationId
                        - startTime
                        - endTime
                        - repeatInterval
                required:
                  - data
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````