Deel Immigration API

Visas, work permits, immigration case management

Documentation

📖
Documentation
https://developer.deel.com/api/introduction
📖
GettingStarted
https://developer.deel.com/api/quickstart
📖
Authentication
https://developer.deel.com/api/authentication
📖
Documentation
https://developer.deel.com/api/employer-of-record/introduction
📖
Documentation
https://developer.deel.com/api/employer-of-record/employment-cost-calculator
📖
Documentation
https://developer.deel.com/api/employer-of-record/hiring
📖
Documentation
https://developer.deel.com/api/employer-of-record/accept-quote
📖
Documentation
https://developer.deel.com/api/contractors/introduction
📖
Documentation
https://developer.deel.com/api/contractors/invoice-adjustments
📖
Documentation
https://developer.deel.com/api/contractors/timesheets
📖
Documentation
https://developer.deel.com/api/global-payroll/introduction
📖
Documentation
https://developer.deel.com/api/global-payroll/time-tracking
📖
Documentation
https://developer.deel.com/api/global-payroll/adjustments
📖
Documentation
https://developer.deel.com/api/hris/introduction
📖
Documentation
https://developer.deel.com/api/scim-api/overview
📖
Documentation
https://developer.deel.com/api/hris-common-use-cases/sync-deel-users-to-identity-providers
📖
Documentation
https://developer.deel.com/api/ats-guides/introduction
📖
Documentation
https://developer.deel.com/api/ats-guides/getting-started
📖
Documentation
https://developer.deel.com/api/ats-guides/manage-jobs
📖
Documentation
https://developer.deel.com/api/ats-guides/manage-candidates-and-applications
📖
Documentation
https://developer.deel.com/api/ats-guides/webhooks
📖
Documentation
https://developer.deel.com/api/webhooks/introduction
📖
Documentation
https://developer.deel.com/api/webhooks/quickstart
📖
Documentation
https://developer.deel.com/api/webhooks/events
📖
Documentation
https://developer.deel.com/api/webhooks/simulations
📖
Documentation
https://developer.deel.com/api/platform/screenings
📖
Documentation
https://developer.deel.com/api/platform/immigration
📖
Documentation
https://developer.deel.com/api/deel-it/getting-started/introduction

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

deel-com-immigration-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Deel ATS Adjustments Immigration API
  description: 'Applicant Tracking System API for managing the full recruiting pipeline — jobs and

    job postings, candidates, applications, attachments, offers, departments, locations,

    email templates, hiring members, employment types, application sources, tags, and

    reasons — with an end-to-end candidate-to-contract flow via Deel Hire.

    '
  version: '2026-05-25'
  contact:
    name: Deel Developer Support
    url: https://developer.deel.com/api/ats-guides/introduction
servers:
- url: https://api.letsdeel.com/rest/v2
  description: Production
- url: https://api-sandbox.demo.deel.com/rest/v2
  description: Sandbox
security:
- BearerAuth: []
tags:
- name: Immigration
  description: Visas, work permits, immigration case management
paths:
  /immigration/visa-types:
    get:
      operationId: getVisaTypes
      summary: Immigration Visa Types
      tags:
      - Immigration
      parameters:
      - name: country
        in: query
        schema:
          type: string
      responses:
        '200':
          description: Visa types
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/VisaType'
  /immigration/business-visa/requirements:
    get:
      operationId: getBusinessVisaRequirement
      summary: Get Business Visa Eligibility And Requirements
      tags:
      - Immigration
      parameters:
      - name: nationality
        in: query
        required: true
        schema:
          type: string
      - name: destination_country
        in: query
        required: true
        schema:
          type: string
      - name: purpose
        in: query
        schema:
          type: string
      responses:
        '200':
          description: Requirements
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      visa_required:
                        type: boolean
                      visa_types:
                        type: array
                        items:
                          type: string
                      max_stay_days:
                        type: integer
                      requirements:
                        type: array
                        items:
                          type: string
  /immigration/cases:
    get:
      operationId: getImmigrationCases
      summary: List Of Immigration Cases
      tags:
      - Immigration
      responses:
        '200':
          description: Cases
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/ImmigrationCase'
  /immigration/cases/{case_id}:
    get:
      operationId: getImmigrationCase
      summary: Get Immigration Case Details
      tags:
      - Immigration
      parameters:
      - name: case_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Case detail
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ImmigrationCase'
  /immigration/cases/{case_id}/required-documents/{document_id}:
    post:
      operationId: uploadRequiredDocument
      summary: Upload A Required Immigration Document
      tags:
      - Immigration
      parameters:
      - name: case_id
        in: path
        required: true
        schema:
          type: string
      - name: document_id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              required:
              - file
              properties:
                file:
                  type: string
                  format: binary
                notes:
                  type: string
      responses:
        '201':
          description: Document uploaded
components:
  schemas:
    VisaType:
      type: object
      properties:
        id:
          type: string
        country:
          type: string
        name:
          type: string
        category:
          type: string
          enum:
          - work
          - business
          - student
          - dependent
          - permanent
          - other
        duration_days:
          type: integer
        renewable:
          type: boolean
    ImmigrationCase:
      type: object
      properties:
        id:
          type: string
        person_id:
          type: string
        country:
          type: string
        visa_type:
          type: string
        status:
          type: string
          enum:
          - draft
          - document_collection
          - in_review
          - submitted
          - approved
          - rejected
          - completed
        created_at:
          type: string
          format: date-time
        target_start_date:
          type: string
          format: date
        required_documents:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              name:
                type: string
              status:
                type: string
                enum:
                - missing
                - uploaded
                - approved
                - rejected
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: opaque