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

# Get Applications

> List job applications with optional filtering by job and status

Returns a paginated list of applications for jobs owned by your organization.

## Query Parameters

<ParamField query="job_id" type="string">
  Filter to applications for a specific job UUID.
</ParamField>

<ParamField query="status" type="string">
  Filter by application status: `pending`, `reviewed`, `shortlisted`, `rejected`, or `hired`.
</ParamField>

<ParamField query="page" type="number" default="1">
  Page number.
</ParamField>

<ParamField query="per_page" type="number" default="20">
  Records per page, up to `100`.
</ParamField>

## Examples

### List recent applications

```bash cURL theme={null}
curl --request GET \
  --url "https://api.kardow.com/applications?per_page=10" \
  --header "x-api-key: your-api-key-here"
```

### Filter by job

```bash cURL theme={null}
curl --request GET \
  --url "https://api.kardow.com/applications?job_id=550e8400-e29b-41d4-a716-446655440000" \
  --header "x-api-key: your-api-key-here"
```

## Response

<ResponseField name="data" type="array">
  <Expandable title="properties">
    <ResponseField name="id" type="string">Application ID</ResponseField>
    <ResponseField name="job_id" type="string">Job ID</ResponseField>
    <ResponseField name="job_title" type="string">Job title</ResponseField>
    <ResponseField name="company_name" type="string">Company name</ResponseField>
    <ResponseField name="applicant_name" type="string">Applicant name</ResponseField>
    <ResponseField name="applicant_email" type="string">Applicant email</ResponseField>
    <ResponseField name="applicant_phone" type="string">Applicant phone</ResponseField>
    <ResponseField name="status" type="string">Application status</ResponseField>
    <ResponseField name="submitted_at" type="string">ISO 8601 timestamp</ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="meta" type="object">
  <Expandable title="properties">
    <ResponseField name="pagination" type="object">
      Includes `current_page`, `per_page`, `total_items`, `total_pages`, `has_more`.
    </ResponseField>
  </Expandable>
</ResponseField>


## OpenAPI

````yaml GET /applications
openapi: 3.1.0
info:
  title: Kardow Public API
  description: Public API for jobs and member automation on Kardow.
  version: 1.0.0
  contact:
    name: Kardow Support
    email: support@kardow.com
    url: https://kardow.com
servers:
  - url: https://api.kardow.com
    description: Production API
security:
  - ApiKeyAuth: []
paths:
  /applications:
    get:
      tags:
        - Applications
      summary: Get Applications
      description: List applications for jobs owned by your organization.
      operationId: getApplications
      parameters:
        - name: job_id
          in: query
          required: false
          schema:
            type: string
            format: uuid
          description: Filter to applications for a specific job UUID.
        - name: status
          in: query
          required: false
          schema:
            type: string
            enum:
              - pending
              - reviewed
              - shortlisted
              - rejected
              - hired
          description: Filter by application status.
        - name: page
          in: query
          required: false
          schema:
            type: integer
            default: 1
            minimum: 1
        - name: per_page
          in: query
          required: false
          schema:
            type: integer
            default: 20
            minimum: 1
            maximum: 100
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicationsListResponse'
        '400':
          $ref: '#/components/responses/ValidationError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '500':
          $ref: '#/components/responses/InternalError'
      security:
        - ApiKeyAuth: []
components:
  schemas:
    ApplicationsListResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Application'
        meta:
          type: object
          properties:
            pagination:
              type: object
              properties:
                current_page:
                  type: integer
                per_page:
                  type: integer
                total_items:
                  type: integer
                total_pages:
                  type: integer
                has_more:
                  type: boolean
              required:
                - current_page
                - per_page
                - total_items
                - total_pages
                - has_more
          required:
            - pagination
      required:
        - data
        - meta
    Application:
      type: object
      properties:
        id:
          type: string
          format: uuid
        job_id:
          type: string
          format: uuid
        job_title:
          type:
            - string
            - 'null'
        company_name:
          type:
            - string
            - 'null'
        applicant_name:
          type:
            - string
            - 'null'
        applicant_email:
          type:
            - string
            - 'null'
          format: email
        applicant_phone:
          type:
            - string
            - 'null'
        status:
          type: string
          enum:
            - pending
            - reviewed
            - shortlisted
            - rejected
            - hired
        submitted_at:
          type:
            - string
            - 'null'
          format: date-time
        resume_url:
          type:
            - string
            - 'null'
          format: uri
        custom_form_answers:
          oneOf:
            - type: object
              additionalProperties: true
            - type: array
            - type: 'null'
      required:
        - id
        - job_id
        - status
    ErrorEnvelope:
      type: object
      properties:
        error:
          type: object
          properties:
            message:
              type: string
            code:
              type: string
            details: {}
            url:
              type: string
          required:
            - message
            - code
      required:
        - error
  responses:
    ValidationError:
      description: Validation error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorEnvelope'
    UnauthorizedError:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorEnvelope'
    InternalError:
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorEnvelope'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        API key for authentication. Get yours from Settings > API Keys in the
        Kardow dashboard.

````