Configuring Webhooks

This topic describes how to configure notifications for external systems when an asset or bin in C3 Portal is created or modified using a webhook.

  1. Select the [Webhook] page on the [Settings] screen.
  2. Click the (Add) button.
    A dialog appears.
  3. Enter a name for the webhook and click the [Save] button.
  4. Select the added webhook.
  5. Enter the destination URL in [URL].
  6. Select the events for sending notifications to external systems in [Event Types].
  7. Select ON or OFF in [Use authentication]. When set to ON, configure the authentication information.
  8. Click the [Test] button to test send the webhook to the specified destination.
  9. Click the [Save] button.

The body of a POST message notification sent by the specified webhook is shown below.

Example webhook body for an asset

{
  "senderId": "51987e87-8c97-47ac-a604-427da571d885",
  "webhookId": "uAne_H4BsCp6f5HEAtE7",
  "tenantId": "xxxxxxxxxxxx",
  "groupId": "5QVEunwBbes12346d0dU",
  "type": "UpdateMetadata",
  "createdOn": "2022-03-01T06:23:55+0000",
  "assets": [
    {
      "id": "2kklRH8Bnq3Km-B7mIcu",
      "name": "CLIP1472S03"
    }
  ]
}

Example webhook body for a bin

{
  "senderId": "d7b78b5a-6ca5-4389-8701-a4ceb16ae87f",
  "webhookId": "uAne_H4BsCp6f5HEAtE7",
  "tenantId": "xxxxxxxxxxxxxx",
  "groupId": "5QVEunwBbes12346d0dU",
  "type": "Create",
  "createdOn": "2022-03-01T11:00:57+0000",
  "bins": [
    {
      "id": "5QVEunwBbes1sNs6d0dU.AU.3vbT_oon5y-GlKtEU1Tx8A.eOhIEZ4Bm9ybaqYTQ0zLPw",
      "name": "webhook 01 "
    }
  ]
}

Example webhook body for chunk recording

{
  "senderId": "8961b7df-328f-4ac6-9a90-bb960c7d1db1",
  "webhookId": "yeWQ4X4B7gph0Ncfrmq0",
  "tenantId": "xxxxxxxxxxxxxxxxxxx",
  "groupId": "xxxxxxxxxxxxxxxxxx",
  "type": "StartChunkRecording",
  "createdOn": "2022-08-04T08:13:43+0000",
  "assets": [
    {
      "id": "3fTqZ4IBd-ykx5pI41Nh",
      "name": "CLIP3416S03"
    }
  ]
}

Example webhook body for a story

{
  "senderId": "409b438c-0c9b-41d1-81dc-3d525bfeee10",
  "webhookId": "uAne_H4BsCp6f5HEAtE7",
  "tenantId": "xxxxxxxxxxxxxxxxxxx",
  "groupId": null,
  "type": "UpdatePlanningMetadata",
  "createdOn": "2022-08-09T01:57:27+0000",
  "updatePlanningMetadata": [
    {
      "id": "edd4a897-90e5-428b-8b40-5a0bc......",
      "name": "TEST Story 0809"
    }
  ]
}

Example webhook body for transfer status

{
  "senderId": "9cc45b1e-b787-4ceb-9df0-6ddbe7bbe876",
  "webhookId": "qDc02oYB7Wwts70T_3Iu",
  "tenantId": "xxxxxxxxxxxxxxxx",
  "groupId": "xxxxxxxxxxxxxxx",
  "type": "TransferStatus",
  "createdOn": "2023-03-13T09:04:26+0000",
  "assets": [
    {
      "id": "1O-12IYBxPyBFPyZJoe2",
      "name": "CLIP3369S03"
    }
  ]
}

Example body sent as webhook test

{
  "senderId": "f08ab53d-bf52-44b9-9758-0fde7a355106",
  "webhookId": "uAne_H4BsCp6f5HEAtE7",
  "tenantId": "xxxxxxxxx",
  "groupId": null,
  "type": "Test",
  "createdOn": "2022-03-01T11:53:26+0000",
  "assets": []
}

Body elements

  • senderId: Unique webhook ID
  • webhookId: Registered webhook configuration ID
  • tenantId: Tenant ID
  • groupId: Group ID of the bin where a chunk recording, bins, or assets event occurred (“null” for a story)
  • Type: Event type
    A notification corresponding to the selected event is sent.
    • assets or bins
      • Create
      • Move
      • Copy
      • Trash
      • Untrash
      • Delete
      • UpdateMetadata
      • StatusChange
      • SpeechToTextStatusChange
    • StartChunkRecording
    • EndChunkRecording
    • CreatePlanningMetadata
    • UpdatePlanningMetadata
    • UpdatePlanningMaterial
    • UpdatePlanningAssign
    • DeletePlanningMetadata
    • TransferStatus
  • createdOn: Event creation date and time
  • assets, bins, StartChunkRecording, or EndChunkRecording: Array of assets or bins
    (assets and bins are not mixed)
    • assets[].id / bins[].id: asset or bin ID
    • assets[].name / bins[].name: asset or bin name
  • CreatePlanningMetadata, UpdatePlanningMetadata, UpdatePlanningMaterial, UpdatePlanningAssign, or DeletePlanningMetadata:
    • UpdatePlanningMetadata[].id: Story assignId
    • UpdatePlanningMetadata[].name: Story Title