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

# Get All Specializations

> Retrieve a paginated list of the organization's provider specialization categories. Each item includes its publicId, name and an isActive flag (soft-deleted categories are returned with isActive=false). Pass the 'isActive' parameter to return only active (true) or soft-deleted (false) categories.

## Get All Specializations

Retrieve a paginated list of your organization's provider specialization
categories. Each category carries an `isActive` flag derived from its
soft-delete state, so soft-deleted categories are returned with
`isActive: false`.

### Headers

```
Authorization: Bearer <your-api-key>
```

### Query Parameters

* `page` (optional): Page number (1-indexed). Default: `1`. Minimum: `1`, Maximum: `1000000`
* `pageSize` (optional): Number of items per page. Default: `25`. Minimum: `1`, Maximum: `100`
* `isActive` (optional): Filter by active state. `true` returns only active categories, `false` returns only soft-deleted ones. When omitted, categories in every state are returned.

### Success Response (200)

```json theme={null}
{
  "data": [
    {
      "publicId": "spec_abc123",
      "name": "Autism Spectrum Disorder",
      "isActive": true
    },
    {
      "publicId": "spec_def456",
      "name": "Feeding Therapy",
      "isActive": false
    }
  ],
  "pagination": {
    "page": 1,
    "pageSize": 25,
    "totalCount": 2,
    "totalPages": 1
  }
}
```


## OpenAPI

````yaml GET /v1/specializations
openapi: 3.0.0
info:
  title: Hipp Health API
  version: 1.0.0
  description: API for managing users and resources within your Hipp Health organization
servers:
  - url: https://app.hipp.health/api
    description: Production Server
security: []
paths:
  /v1/specializations:
    get:
      tags:
        - specializations
      summary: Get paginated list of specialization categories
      description: >-
        Retrieve a paginated list of the organization's provider specialization
        categories. Each item includes its publicId, name and an isActive flag
        (soft-deleted categories are returned with isActive=false). Pass the
        'isActive' parameter to return only active (true) or soft-deleted
        (false) categories.
      operationId: getSpecializations
      parameters:
        - name: page
          in: query
          description: Page number (1-indexed)
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 1000000
            default: 1
        - in: query
          name: pageSize
          description: Number of items per page
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 25
          required: false
        - name: isActive
          in: query
          description: >-
            Filter by active state. true returns only active categories, false
            returns only soft-deleted ones; when omitted, categories in every
            state are returned.
          required: false
          schema:
            type: boolean
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetSpecializationsResponse'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
      security:
        - BearerAuth: []
components:
  schemas:
    GetSpecializationsResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/SpecializationCategory'
          description: Array of specialization categories
        pagination:
          $ref: '#/components/schemas/Pagination'
      required:
        - data
        - pagination
    SpecializationCategory:
      type: object
      description: >-
        A provider specialization category. isActive is derived from soft-delete
        state; soft-deleted categories are returned with isActive=false.
      properties:
        publicId:
          type: string
          description: Public identifier of the specialization category
        name:
          type: string
          description: Display name of the specialization category
        isActive:
          type: boolean
          description: Whether the category is active (not soft-deleted)
      required:
        - publicId
        - name
        - isActive
    Pagination:
      type: object
      properties:
        page:
          type: integer
          description: Current page number (1-indexed)
        pageSize:
          type: integer
          description: Number of items per page
        totalCount:
          type: integer
          description: Total number of items
        totalPages:
          type: integer
          description: Total number of pages
      required:
        - page
        - pageSize
        - totalCount
        - totalPages
    ValidationError:
      type: object
      required:
        - message
        - statusCode
        - validationErrors
      properties:
        message:
          type: string
          example: Validation Error
        statusCode:
          type: integer
          example: 400
        validationErrors:
          type: array
          description: Zod validation issues
          items:
            type: object
            properties:
              code:
                type: string
                example: invalid_type
              message:
                type: string
                example: Required
              path:
                type: array
                items:
                  oneOf:
                    - type: string
                    - type: integer
                example:
                  - email
    ApiErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Human-readable error message
          example: User not found
        statusCode:
          type: integer
          example: 404
      required:
        - error
        - statusCode
  responses:
    '400':
      description: Bad Request - Validation Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ValidationError'
    '401':
      description: Unauthorized - API key required
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiErrorResponse'
          example:
            error: API key required
            statusCode: 401
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        API key authentication. Include your API key in the Authorization header
        as 'Bearer <your-api-key>'

````