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

# Webhook Reconciliation

> Allows you to resend a failed webhook based on status and timestamp.



## OpenAPI

````yaml POST /api/webhooks/resend
openapi: 3.0.0
info:
  title: Employee List API
  description: Retrieve a paginated list of employees from the organization.
  version: 1.0.0
servers:
  - url: https://{env}.tartanhq.com
    description: Dynamic environment-based server
    variables:
      env:
        default: dev
security: []
paths:
  /api/webhooks/resend:
    post:
      tags:
        - Webhooks
      summary: Resend a failed webhook
      description: Allows you to resend a failed webhook based on status and timestamp.
      operationId: resendWebhook
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
                - $ref: '#/components/schemas/SyncSessionOnly'
                - $ref: '#/components/schemas/SyncSessionWithCounter'
                - $ref: '#/components/schemas/SyncSessionWithStatus'
                - $ref: '#/components/schemas/SyncSessionWithCounterStatus'
                - $ref: '#/components/schemas/TimestampRange'
                - $ref: '#/components/schemas/TimestampRangeWithStatus'
                - $ref: '#/components/schemas/TimestampRangeWithOrg'
                - $ref: '#/components/schemas/TimestampRangeWithStatusOrg'
                - $ref: '#/components/schemas/OrgOnly'
                - $ref: '#/components/schemas/RequestIdOnly'
              discriminator:
                propertyName: search_type
      responses:
        '200':
          description: Webhook resend request accepted
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  message:
                    type: string
                    example: Webhook resend triggered successfully.
        '400':
          description: Invalid request payload
        '401':
          description: Unauthorized – Invalid token
        '500':
          description: Server error
      security:
        - TokenAuth: []
components:
  schemas:
    SyncSessionOnly:
      type: object
      properties:
        sync_session_id:
          $ref: '#/components/schemas/UUID'
        search_type:
          type: string
          enum:
            - sync_session
      required:
        - sync_session_id
    SyncSessionWithCounter:
      type: object
      properties:
        sync_session_id:
          $ref: '#/components/schemas/UUID'
        webhook_counter:
          $ref: '#/components/schemas/WebhookCounter'
        search_type:
          type: string
          enum:
            - sync_session_counter
      required:
        - sync_session_id
        - webhook_counter
    SyncSessionWithStatus:
      type: object
      properties:
        sync_session_id:
          $ref: '#/components/schemas/UUID'
        status:
          $ref: '#/components/schemas/StatusEnum'
        search_type:
          type: string
          enum:
            - sync_session_status
      required:
        - sync_session_id
        - status
    SyncSessionWithCounterStatus:
      type: object
      properties:
        sync_session_id:
          $ref: '#/components/schemas/UUID'
        webhook_counter:
          $ref: '#/components/schemas/WebhookCounter'
        status:
          $ref: '#/components/schemas/StatusEnum'
        search_type:
          type: string
          enum:
            - sync_session_counter_status
      required:
        - sync_session_id
        - webhook_counter
        - status
    TimestampRange:
      type: object
      properties:
        request_timestamp:
          $ref: '#/components/schemas/Epoch'
        end_request_timestamp:
          $ref: '#/components/schemas/Epoch'
        search_type:
          type: string
          enum:
            - time_range
      required:
        - request_timestamp
        - end_request_timestamp
    TimestampRangeWithStatus:
      allOf:
        - $ref: '#/components/schemas/TimestampRange'
        - type: object
          properties:
            status:
              $ref: '#/components/schemas/StatusEnum'
            search_type:
              type: string
              enum:
                - time_range_status
          required:
            - status
    TimestampRangeWithOrg:
      allOf:
        - $ref: '#/components/schemas/TimestampRange'
        - type: object
          properties:
            client_org_id:
              $ref: '#/components/schemas/UUID'
            search_type:
              type: string
              enum:
                - time_range_org
          required:
            - client_org_id
    TimestampRangeWithStatusOrg:
      allOf:
        - $ref: '#/components/schemas/TimestampRangeWithStatus'
        - type: object
          properties:
            client_org_id:
              $ref: '#/components/schemas/UUID'
            search_type:
              type: string
              enum:
                - time_range_status_org
          required:
            - client_org_id
    OrgOnly:
      type: object
      properties:
        client_org_id:
          $ref: '#/components/schemas/UUID'
        search_type:
          type: string
          enum:
            - org_only
      required:
        - client_org_id
    RequestIdOnly:
      type: object
      properties:
        request_id:
          $ref: '#/components/schemas/UUID'
        search_type:
          type: string
          enum:
            - request_id
      required:
        - request_id
    UUID:
      type: string
      format: uuid
    WebhookCounter:
      type: array
      items:
        type: integer
        minimum: 1
    StatusEnum:
      type: string
      enum:
        - success
        - fail
        - all
    Epoch:
      type: integer
      description: Epoch timestamp in seconds
  securitySchemes:
    TokenAuth:
      type: apiKey
      in: header
      name: Authorization

````