Choose language

Webhooks

Webhooks allow Shifton to send real-time notifications to your external systems whenever specific events occur in your company.


What Is This?

The Webhooks tab on the Developer page lets you create webhook endpoints that receive automatic notifications from Shifton. When events happen in your account — such as a shift being created, an employee clocking in, or a schedule being published — Shifton sends a data payload to your specified URL. This eliminates the need for your systems to constantly poll Shifton for updates, making integrations faster and more efficient.


Prerequisites

RequirementDetails
RoleOwner
EndpointA publicly accessible URL on your server to receive webhook payloads
KnowledgeBasic understanding of HTTP requests and webhooks (or access to a developer)

Step-by-Step Instructions

Accessing the Webhooks Tab

Shifton screenshot
1
From the left sidebar, click Integrations.
2
Navigate to the Developer page.
3
Click the Webhooks tab.
4
If no webhooks have been created yet, you will see an empty state with a puzzle illustration.

Creating a New Webhook

Shifton screenshot
Shifton screenshot
1
Click the “New webhook” button.
2
Fill in the webhook configuration:
FieldDescription
URLThe endpoint URL where Shifton will send event data
EventsSelect which Shifton events should trigger this webhook
ActiveToggle to enable or disable the webhook
1
Save the webhook.
2
Shifton will now send HTTP POST requests to your URL whenever the selected events occur.

Managing Existing Webhooks

1
On the Webhooks tab, you will see a list of all created webhooks.
2
Click on a webhook to edit its configuration.
3
You can change the URL, update the event selection, or toggle the active status.
4
To remove a webhook, use the delete option.

Testing a Webhook

1
After creating a webhook, trigger the relevant event in Shifton (for example, create a test shift).
2
Check your endpoint server logs to confirm the webhook payload was received.
3
If the payload did not arrive, verify that the URL is correct and publicly accessible.

Access Permissions

Shifton screenshot
RoleView WebhooksCreate/Edit WebhooksDelete Webhooks
OwnerYesYesYes
NoNoNo
ManagerNoNoNo
EmployeeNoNoNo

FAQ

Q: What format does Shifton use for webhook payloads?
A: Webhooks are sent as HTTP POST requests with a JSON body. Refer to the API documentation for the exact payload structure for each event type.

Q: Can I set up multiple webhooks for the same event?
A: Yes, you can create multiple webhooks that listen to the same event, each pointing to a different URL.

Q: What happens if my server is down when a webhook fires?
A: If your endpoint is unreachable, the webhook delivery may fail. Check the API documentation for details on retry policies and failure handling.

Q: Can I filter webhooks to only trigger for specific employees or projects?
A: Webhook event selection is typically at the event-type level. You would need to filter the incoming data on your server side to handle specific employees or projects.

Q: How do I secure my webhook endpoint?
A: Consider using a secret token or signature verification to validate that incoming requests genuinely come from Shifton. Refer to the API documentation for security recommendations.


Possible Issues and Solutions

IssuePossible CauseSolution
Webhook not firingWebhook is set to inactiveEdit the webhook and ensure the Active toggle is enabled
Endpoint returns errorsURL is incorrect or server is downVerify the URL is correct and your server is running and publicly accessible
Payload not receivedFirewall blocking incoming requestsCheck your server firewall settings to allow incoming POST requests from Shifton
Webhook fires but data is incompleteWrong event type selectedEdit the webhook and verify the correct events are selected
Empty state shown despite existing webhooksPage not refreshedRefresh the Webhooks tab to load the latest data
“New webhook” button not visibleInsufficient permissionsEnsure you have Owner role