openapi: 3.1.0 info: title: Deel ATS Adjustments Off Cycle 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: Off Cycle description: One-off payments outside the normal cycle paths: /off-cycle: post: operationId: createOffCyclePayment summary: Create Off-Cycle Payment description: Pay a contractor outside of the normal billing cycle (bonus, expense, ad-hoc). tags: - Off Cycle parameters: - $ref: '#/components/parameters/IdempotencyKey' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/OffCycleCreate' responses: '201': description: Off-cycle payment created content: application/json: schema: $ref: '#/components/schemas/OffCyclePayment' components: schemas: OffCycleCreate: type: object required: - contract_id - amount - currency - reason properties: contract_id: type: string amount: type: number currency: type: string reason: type: string enum: - bonus - commission - expense - reimbursement - advance - other notes: type: string OffCyclePayment: type: object properties: id: type: string contract_id: type: string amount: type: number currency: type: string reason: type: string status: type: string enum: - pending - processing - paid - failed created_at: type: string format: date-time parameters: IdempotencyKey: name: Idempotency-Key in: header required: false schema: type: string format: uuid securitySchemes: BearerAuth: type: http scheme: bearer bearerFormat: opaque