Overview
Talview webhooks deliver event payloads to your infrastructure when candidate, assessment, scheduling, or payment changes happen. Before you can receive any hook, you must register an application, expose an HTTPS endpoint, and subscribe that application to one or more event types via the Graph API actions (hook_register_app, hook_subscribe). Tenant or platform administrator privileges are required.
Registration Workflow
- Create a hook application – call
hook_register_appwith a human-readable name (for example, the system that will consume events). - Provision your endpoint – host a publicly reachable HTTPS URL, decide which HTTP method (
POST,PUT, orPATCH) and headers you support, and plan for retries/signature validation. - Subscribe to event types – invoke
hook_subscribeperevent_type_name, passing the application ID, endpoint URL, and optional overrides for method or transport. - Validate delivery – trigger a lower-risk event (for example, create a test record) or use the re-trigger action to confirm you log responses correctly.
- Operate the lifecycle – disable, re-trigger, or unsubscribe via the companion actions as needed when rotating endpoints.
Registration API Inputs
Provide a single field when registering:- name: String. Display name for the consuming system; appears in admin consoles and audit logs.
Registration Payload Response Shape
Successful registration returns identifiers and audit metadata. Use the numericid when subscribing.
Registration Response Example
Successful registration returns identifiers and audit metadata.Subscription Options
- Graph API action (
hook_subscribe): Preferred programmatic path; send a GraphQL mutation to the Hasura endpoint with authenticated admin credentials.
Subscription API Inputs
Each subscription binds one event type to one endpoint target. Required and optional fields mirror the Joi schema used by the Lambda handler.- event_type_name: String identifier (e.g.,
ae_test_instance_created) from the approved enum list. - url: HTTPS endpoint the platform will call.
- application_id: Integer referencing the registered app.
- method (optional): One of
POST,PUT,PATCH; defaults toPOST. - transport (optional): Transport enum; currently only
HTTPis supported and used by default.
Subscription Payload Response Shape
The action returns the saved subscription, including its unique identifiers and the event metadata snapshot.Subscription Response Example
The response to the graphql query will be of the following shapeCreating a Subscription
Use the Graph API mutation below after registering your app. Replace the variables with your application ID, endpoint URL, and event type. When omitted,method becomes POST and transport becomes HTTP.
Managing Existing Subscriptions
- Disable or delete: Use the
hook_unsubscribeaction with the subscriptionuuidwhen retiring an endpoint. - Re-trigger deliveries:
hook_re_triggerlets platform admins replay events (event_type_name+ recordid) to facilitate recovery or testing.
Testing & Verification
- Trigger a known event in a staging tenant to observe the payload structure before enabling production subscriptions.
- Confirm your endpoint returns a
2xxstatus within Talview’s timeout to prevent retries. - Store the
uuidso you can map incoming deliveries back to the subscription configuration for troubleshooting.
Troubleshooting
- Invalid input: The actions return
422 Unprocessable Entitywhen a required field is missing orevent_type_nameis outside the allow list. - Permission denied: Ensure the auth token carries
TENANT_ADMINorPLATFORM_ADMIN; other roles cannot call these actions. - Duplicate endpoint logic: The platform allows multiple subscriptions to the same URL; use your own idempotency logic to suppress duplicate downstream processing if needed.
- Endpoint unreachable: Retries continue until the service marks the target as failed—monitor your logs and update the subscription with a working URL before re-triggering events.
Related Resources
docs/graph-api-reference/webhooks/overview.mdx– transport behavior, retry schedule, and event catalog.- Individual hook docs (for example,
ae_test_instance_created.mdx) – payload contracts and sample data.

