Webhooks are used to send notifications to a destination (URL), triggered by an event. Developers can use webhooks to send Tally form submissions to a URL or third-party web application.
The event used to trigger Tally webhooks is a new form submission. When a respondent submits a Tally form a notification containing the form response data is being sent to your URL in JSON format as a POST request.
Webhooks are available for free to all Tally users. If you're looking for a non-technical way to sync form submissions from Tally to other tools, our Zapier or Integromat integration will help you out!
Add a webhook
Publish your form and go to the
Integrations
tab → Webhooks
Click
Connect
and add the URL of your endpoint. Connect
again to activate your webhook.
Manage webhooks
You will see your active URLs in your dashboard. You can connect unlimited webhook URLs and pause them by clicking the toggle on the right.

Click 🕔 next to your active webhook to see the events log. This log contains all requests made to your webhook endpoint. Click 🖊 to edit or 🗑 to remove the webhook.

Example webhook event
This example event contains every type of field that Tally supports. You can also use this free tool to test the requests to your webhook endpoint.
POST /[webhook_url] HTTP/1.1 User-Agent: Tally Webhooks Content-Type: application/json
{ eventId: '75bd4876-d5f1-4771-9fb6-251c430acbd5', eventType: 'FORM_RESPONSE', createdAt: '2021-08-10T08:00:47.578Z', data: { submissionId: 'Pn0xNn', respondentId: 'Zw8lwJ', formId: 'pnrB2n', formName: 'Integrations Test', createdAt: '2021-03-19T14:11:01.000Z', fields: [ { key: 'question_Rw7vL3_ff12dd5c-e8f2-40a1-b67d-6336fb0a7767', label: 'utm_campaign', type: 'HIDDEN_FIELDS', value: 'newsletter', }, { key: 'question_rm6vem_251a6eef-74f6-457b-9a01-1c96229e9484', label: 'Score', type: 'CALCULATED_FIELDS', value: 109, }, { key: 'question_rm6vem_795d1624-3fbd-472a-a831-db736009f1a6', label: 'Type', type: 'CALCULATED_FIELDS', value: 'Hard', }, { key: 'question_5mVVam', label: 'Name', type: 'INPUT_TEXT', value: 'Filip', }, { key: 'question_E3ELom', label: 'Full name', type: 'INPUT_TEXT', value: 'Filip Minev', }, { key: 'question_l3jLRn', label: 'Age', type: 'INPUT_NUMBER', value: 33, }, { key: 'question_Vw2Lpm', label: 'Email', type: 'INPUT_EMAIL', value: '[email protected]', }, { key: 'question_63x2Gn', label: 'Phone number', type: 'INPUT_PHONE_NUMBER', value: '0491999999', }, { key: 'question_vmZl0w', label: 'Website', type: 'INPUT_LINK', value: 'https://tally.so', }, { key: 'question_M3NLGn', label: 'Birthdate', type: 'INPUT_DATE', value: '2001-03-15', }, { key: 'question_V3qO2n', label: 'Time of birth', type: 'INPUT_TIME', value: '04:06', }, { key: 'question_KnPlQn', label: 'Bio', type: 'TEXTAREA', value: 'Testing 999', }, { key: 'question_pnrVMn', label: 'Time of day', type: 'MULTIPLE_CHOICE', value: 'cab5a492-69f6-458a-a689-f57caea0b681', options: [ { id: 'e766bee3-c365-4c9a-ae9a-9459068b4f6e', text: 'Morning', }, { id: '85ba1ce6-e3c4-47e7-bbc4-59b36f2feb95', text: 'Noon', }, { id: 'cab5a492-69f6-458a-a689-f57caea0b681', text: 'Afternoon', }, { id: '8922a9b8-5817-44e0-8f95-f259ece01382', text: 'Evening', }, ], }, { key: 'question_Bw4Lbw', label: 'Activity', type: 'CHECKBOXES', value: ['9c6cf07e-f347-4e4f-b114-9d9436ce646e'], options: [ { id: 'a03a2226-4df9-4d51-bba6-769821643656', text: 'Soccer', }, { id: '9c6cf07e-f347-4e4f-b114-9d9436ce646e', text: 'Swimming', }, { id: '31a47e25-bcf7-44ed-8a5f-48042018010d', text: 'Skiing', }, ], }, { key: 'question_Bw4Lbw_a03a2226-4df9-4d51-bba6-769821643656', label: 'Activity (Soccer)', type: 'CHECKBOXES', value: false, }, { key: 'question_Bw4Lbw_9c6cf07e-f347-4e4f-b114-9d9436ce646e', label: 'Activity (Swimming)', type: 'CHECKBOXES', value: true, }, { key: 'question_Bw4Lbw_31a47e25-bcf7-44ed-8a5f-48042018010d', label: 'Activity (Skiing)', type: 'CHECKBOXES', value: false, }, { key: 'question_dwQdg3', label: 'Intensity', type: 'DROPDOWN', value: '4003b3f9-1f85-498f-b970-0c657a46ab68', options: [ { id: 'ca5235fd-d8c5-42df-824d-09bf0135e7cc', text: 'Easy', }, { id: '4003b3f9-1f85-498f-b970-0c657a46ab68', text: 'Hard', }, ], }, { key: 'question_ln9vGm', label: 'CV docs', type: 'FILE_UPLOAD', value: [ { name: 'Tally.png', url: 'https://storage.googleapis.com/tally-response-assets-dev/3BG2VP/5a0177b6-90af-4b8f-9ac3-d32c20e7c0ce', mimeType: 'image/png', size: 2868, }, ], }, { key: 'question_Rme2q3_price', label: 'Payment (price)', type: 'PAYMENT', value: 19.0, }, { key: 'question_Rme2q3_currency', label: 'Payment (currency)', type: 'PAYMENT', value: 'USD', }, { key: 'question_Rme2q3_name', label: 'Payment (name)', type: 'PAYMENT', value: 'Bob Tester', }, { key: 'question_Rme2q3_email', label: 'Payment (email)', type: 'PAYMENT', value: '[email protected]', }, { key: 'question_Rme2q3_link', label: 'Payment (link)', type: 'PAYMENT', value: 'https://dashboard.stripe.com/payments/[PAYMENT_ID]', }, { key: 'question_dnWYJ3', label: 'Rating', type: 'RATING', value: 4, }, { key: 'question_ywaE9w', label: 'NPS', type: 'LINEAR_SCALE', value: 9, }, ], }, }