Webhooks

Configuring webhooksCopied!

If you’d like to set-up webhooks on Pencil Spaces, please contact us and provide the following information. For authentication, we’ll include the webhook secret as a bearer token in the authentication header in all of our requests to your endpoints.

  • Staging environment

    • Webhook URL

    • Secret

  • Production environment

    • Webhook URL

    • Secret

Supported eventsCopied!

Space-User eventsCopied!

These are webhook events that affect a particular user during a session in a Space. We provide analytics for the following webhook events: 

  • Join room: When a user joins a Space or a room within the Space during a session

  • Leave room: When a user leaves a Space or a room within the Space during a session

  • User enters background: When a user navigates to a different tab on their device

  • User enters foreground: When a user returns back to the tab containing Pencil Spaces on their device

Space-User events have the following payload: 

   return {
     spaceId: // SpaceId,
     sessionId: // SessionId,
     timestamp: // Timestamp,
     eventType: // Any of joinSpace, leaveSpace, hideTab, unhideTab
     userId: // UserId
     roomId: // RoomId,
     userTabId: // UserTabId,
     _type: // ‘SPACE_USER’,
   };

Space-Session eventsCopied!

These are webhook events that pertain to a session in a Space. We provide analytics for the session ended event, which fires when analytics processing has completed for an event in a Space.

Space-Session events have the following payload:

   return {
     spaceId: // SpaceId,
     sessionId: // SessionId,
     timestamp: // Timestamp,
     eventType: // ‘SESSION_ENDED’,
     _type: // ‘SPACE_SESSION’,
   };

Space-Recording eventsCopied!

These are webhook events that pertain to a recording in a Space. We provide analytics for two events: 

  • Recording available: When a recording has finished processing in a Space

  • Transcript available: When a transcript and summary has finished processing in a Space

Space recording events have the following payload:

return {
     spaceId: // SpaceId,
     recordingId: // RecordingId,
     timestamp: // Timestamp,
     eventType: // ‘RECORDING_AVAILABLE’,
     _type: // ‘SPACE_RECORDING’,
   };

Additional eventsCopied!

Additional events can be made available on-request. Please contact Pencil Spaces support and we’d be happy to assist you.