Justworks Webhooks API

Manage Justworks Partner API webhooks. Justworks signs every request, delivers events at-least-once with automatic retries, and closes a webhook on sustained failures (resumable via API). Event types cover member.profile.*, member.employment_state.termination_*, and department.* lifecycle changes. A Tour-environment simulate endpoint allows partners to validate their listener without real data.

OpenAPI Specification

justworks-webhooks-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Justworks Company Webhooks API
  description: 'Read company-level data from the Justworks Partner API including

    company identity, bank account on file, verified business information,

    custom field definitions, and operating jurisdictions.

    '
  version: '2026-05-25'
  contact:
    name: Justworks Partner Support
    url: https://public-api.justworks.com/v1/docs
servers:
- url: https://public-api.justworks.com
  description: Production Server
security:
- OAuth2: []
tags:
- name: Webhooks
  description: List, resume, and simulate Justworks webhooks
paths:
  /v1/webhooks/get:
    post:
      summary: Justworks List Webhooks
      description: List webhooks registered on the installation, optionally filtered by open or closed status.
      operationId: listWebhooks
      tags:
      - Webhooks
      parameters:
      - name: status
        in: query
        schema:
          type: string
          enum:
          - opened
          - closed
      responses:
        '200':
          description: List of webhooks
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/Webhook'
  /v1/webhooks/{webhook_id}/resume:
    post:
      summary: Justworks Resume Webhook
      description: Resume delivery on a webhook that was previously closed due to repeated failures.
      operationId: resumeWebhook
      tags:
      - Webhooks
      parameters:
      - $ref: '#/components/parameters/WebhookId'
      responses:
        '200':
          description: Webhook resumed
  /v1/webhooks/{webhook_id}/simulate:
    post:
      summary: Justworks Simulate Webhook
      description: Simulate webhook delivery in the Tour environment to validate the partner listener.
      operationId: simulateWebhook
      tags:
      - Webhooks
      parameters:
      - $ref: '#/components/parameters/WebhookId'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                payload_override:
                  type: object
                url_override:
                  type: string
                  format: uri
      responses:
        '200':
          description: Simulation accepted
components:
  parameters:
    WebhookId:
      name: webhook_id
      in: path
      required: true
      schema:
        type: string
  schemas:
    Webhook:
      type: object
      properties:
        id:
          type: string
        url:
          type: string
          format: uri
        status:
          type: string
          enum:
          - opened
          - closed
        event_types:
          type: array
          items:
            type: string
            enum:
            - member.profile.created
            - member.profile.updated
            - member.employment_state.termination_scheduled
            - member.employment_state.termination_canceled
            - department.created
            - department.updated
            - department.deleted
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://secure.justworks.com/oauth/authorize
          tokenUrl: https://public-api.justworks.com/oauth/token
          refreshUrl: https://public-api.justworks.com/oauth/token
          scopes:
            company.basic:read: Read basic company data
            company.detail:read: Read detailed company data
            company.bank_account:read: Read company bank account on file