Skip to content
Proud to collaborate with Microsoft for Startups

github.installation.parse_webhook ​

Validate and normalize GitHub App installation webhook payload

Validate and normalize a GitHub App installation webhook payload.

Inputs:

  • delivery_id: Webhook delivery ID (required)
  • event_type: Event type e.g. installation, installation_repositories (required)
  • action: Action e.g. created, deleted, added (required)
  • payload: Full webhook payload dict (required)
  • organization_uuid: Optional organization UUID

Outputs (terminal state_data):

  • delivery_id, event_type, action, payload, organization_uuid
  • github_installation_id: From payload.installation.id
  • installation_data: payload.installation
  • sync_type: create_or_update | delete | suspend | unsuspend | update_permissions | repos_added | repos_removed
  • initiated_at: ISO-8601 timestamp

Raises WorkflowNotRetryableError if delivery_id, event_type, payload are missing or installation.id is not in payload.

Overview ​

PropertyValue
Workflow typeAtomic
LibraryApp-github
Version1.0

Input Schema ​

FieldTypeRequiredDefaultDescription
delivery_idstringYes—Webhook delivery ID
event_typestringYes—Event type (e.g. installation)
actionstringYes—Action (e.g. created, deleted)
payloaddictYes—Full webhook payload
organization_uuiduuidNo—Organization UUID

Output Schema ​

FieldTypeRequiredDefaultDescription
actionstringNo——
delivery_idstringNo——
event_typestringNo——
github_installation_idstringNo——
initiated_atstringNo——
installation_datadictNo——
organization_uuiduuidNo——
payloaddictNo——
sync_typestringNo——
failure_reasonstringNo——
failure_typestringNo——
failed_actionstringNo——
failed_at_statestringNo——
failed_stepstringNo——
failed_layerstringNo——
errorstringNo——
error_typestringNo——

States ​

StateInitialTerminalSuccessAuto-advanceDescription
pendingYesNo—execute—
completedNoYesYes——
failedNoYesNo——

State Diagram ​

Transitions ​

FromActionToDescription
pendingexecutecompleted—
* (any state)failfailed—

API Usage ​

bash
POST /api/workflows/start
Content-Type: application/json

{
  "workflow_type": "github.installation.parse_webhook",
  "initial_data": {
    "delivery_id": "value",
    "event_type": "value",
    "action": "value",
    "payload": "value"
  }
}