Program administrators and company administrators can configure webhooks to be notified by Snugg Pro when the following events happen:
Job created
Stage changed
Chat posted
File(s) uploaded
First model
Job details changed
HEScore obtained
Account transfer
Company transfer
Remember that you need to be an administrator of your company or program in order to define webhooks. You can do this by going to Settings > Your Companies (or Your Programs) and clicking on the relevant organization. In the 'App Integrations' tab, you'll have the opportunity to define webhooks:
Webhook Payload Examples
Manual webhooks
If you wish to arbitrarily select job IDs and inform your servers via web hooks you can defined a manual webhook in the same App Integrations tab of your organization's settings. You can use the manual webhook from the job or the job list's export pane.
This webhook requires manual selection from the export pane of the job or the job list.
{ "event": "PING", "payload": { "jobs": [ { "id": "42161" }, { "id": "42482" } ] } }
Activity webhooks examples:
These webhooks are automatically triggered based on an action in the app...
1. When a job is created
{ "event": "NEW_JOB_CREATED", "payload": { "jobs": [ { "id": 48621, "altId": "234552" } ] } }
2. When a job changes stage
{ "event": "STAGE_CHANGED", "payload": { "jobs": [ { "jobId": 48604, "previousStage": 4, "newStage": 6, "previousStageTimestamp": "2021-05-20T05:15:19.000Z", "newStageTimestamp": "2021-05-20T05:15:23.457Z" } ] } }
3. The first time a job is modeled
{ "event": "JOB_FIRST_TIME_MODELED", "payload": { "jobs": [ { "id": 48621, "altId": "234552" } ] } }
4. When a chat message or file is posted to the job's activity feed
{ event: 'CHAT_POSTED', payload: { data: [ { uuid: 'eac07e58-fd16-41ce-8553-e009e16c60c0', job_id: 48586, account_id: 125, message: null, file_name: 'Screenshot 2021-05-21 at 17.01.45.png', file_uuid: 'f5994e21-8a30-43de-b6c8-0ebce8c4a8f6', file_url: 'https://947a1321ab700fc2bb8e.ucr.io/https://snuggpro-stg-files.s3.amazonaws.com/uploads/f5994e21-8a30-43de-b6c8-0ebce8c4a8f6/Screenshot20210521at170145.png', created_at: '2021-06-02T06:29:47.000Z', updated_at: null, deleted_at: null, accountFullName: 'Roman Voloboev' } ] } } { "event": "CHAT_POSTED", "payload": { "data": [ { "uuid": "d5da6ded-6c37-4a10-b5c8-22096fee7169", "job_id": 48609, "account_id": 23, "message": "Chat.", "file_name": null, "file_uuid": null, "file_url": null, "created_at": "2021-05-20T05:08:56.000Z", "updated_at": null, "deleted_at": null } ] } }
5. When a Home Energy Score is obtained
{ event: 'HES_SCORE_OBTAINED', payload: { hesData: [ { jobId: 41968, altId: null, hesLabelNumber: 236447, hesType: 'final', baseScore: 6, hesAssessmentDate: '2021-06-02T00:00:00.000Z' } ] } }
6. When a job address has been changed
{ "event": "ADDRESS_CHANGED", "payload": { "jobs": [ { "id": 42161, "altId": null } ] } }
7. When a job is transferred from one user account to another
{ "event": "JOB_TRANSFERRED", "payload": { "jobs": [ { "id": 42161, "altId": null, "accountIdFrom": 1, "accountIdTo": 26 } ] } }
8. When a job is transferred from one company to another
{ "event": "JOB_TRANSFERRED_TO_OTHER_COMPANY", "payload": { "jobs": [ { "id": 42161, "altId": null, "companyIdFrom": 1, "companyIdTo": 3464 } ] } }
Workflow Ticket Webhooks
1. When a ticket status has been changed.
{ event: 'TICKET_STATUS_CHANGED', payload: { tickets: [ { jobId: 48586, ticketId: 37, fromTemplateId: 18, statusFrom: 'Draft', statusTo: 'Submitted for Review', changedByAccountId: 125, changedAt: '2021-06-02T07:01:51.000Z' } ] } }