App Scopes

The manifest of your App sets which APIs it can access and which webhooks it can register to via the concept of scope. Scopes tell Duda which APIs & Webhooks your App should have access too. When the user installs an application, the scopes are presented to the user to confirm they want to give you access to those scopes.

If you need more details about the exact data sent in a webhook, please refer to the webhooks reference directly.

In your manifest, you set which webhook names you want to access via the webhooks.events array. When a user installs your App, Duda will automatically register those webhooks to be sent to your App, for that website.

📘

Changing Webhooks

If you change what webhooks you ask for, it will only take affect on future installs of the App. This is because Apps are only registered for webhooks at time of install, not after.

Duda currently must set scopes on your behalf. We will guess what's best for you during the initial setup, but, please let us know exactly which scopes you need. Below are all the scopes & the related webhooks you can set with them.

ScopeAPIsWebhook Names
APIs and webhooks which don't require a scopeGet BrandingBRANDING_CHANGED
GET_ACCOUNT_DETAILSGet account info
GET_WEBSITEGet site
Get site backups
PUBLISH
UNPUBLISH
CERTIFICATE_CREATED
CERTIFICATE_DELETED
PAGE_PUBLISHED
SITE_RESTORED
NEW_CONVERSATION
NEW_COMMENT
CONVERSATION_UPDATED
COMMENT_EDITED
COMMENT_DELETED
UPDATE_WEBSITEUpdate site
Upload resources
DOMAIN_UPDATED
PUBLISH_SITEPublish site
Create site backup
Get site backups
Restore site
PUBLISH
UNPUBLISH
DOMAIN_UPDATED
BLOG_POST_PUBLISH
SITE_WIDE_HTMLGet Site Wide Code
Update Site-wide widgets
GET_PAGESGet pages
Get page
UPDATE_PAGESUpdate page
Delete page
Upload resources
GET_COMMENTSNEW_CONVERSATION
NEW_COMMENT
CONVERSATION_UPDATED
COMMENT_EDITED
COMMENT_DELETED
GET_CONTENT_LIBRARYGet Content Library Data
Get Location Data
CONTENT_LIB_PUBLISHED
CONTENT_LIB_CHANGED
UPDATE_CONTENT_LIBRARYUpdate content library data
Publish content library changes
Create additional location
Update Location
Delete location
Upload resources
CONTENT_LIB_PUBLISHED
CONTENT_LIB_CHANGED
GET_INJECT_CONTENTGet Inject Content Values
UPDATE_INJECT_CONTENTInject content
Upload resources
GET_COLLECTIONGet Site Collections
Get Collection
UPDATE_COLLECTIONSCreate Collection
Update Collection
Delete Collection
Add new rows to the collection
Update Collection Rows
Delete Collection Rows
Add a new field to the collection
Delete collection field
Update Field Name
REPORTINGGet contact form data
Get analytics
CONTACT_FORM_SENT
CONTACT_FORM_SENT_V2
GET_BACKUPGet site backupsSITE_RESTORED
MANAGE_BACKUPSGet site backups
Restore site
SITE_RESTORED
UPDATE_SSLGenerate SSL Certificate
Delete SSL Certificate
Renew SSL Certificate
GET_PRODUCTSList product
Get product
PRODUCT_CREATED
PRODUCT_UPDATED
PRODUCT_DELETED
CATEGORY_CREATED
CATEGORY_UPDATED
CATEGORY_DELETED
UPDATE_PRODUCTSCreate product
Update product
Delete product
GET_ORDERSList orders
Get order
ECOMM_ORDER_CREATED
UPDATE_ORDERSCreate order
Update order
ECOMM_ORDER_UPDATED
GET_CARTSList carts
Get cart
GET_DISCOUNTSList discounts
Get discount
UPDATE_DISCOUNTSCreate discount
Update discount
Delete discount
GET_MEMBERMEMBER_CREATED
MEMBER_UPDATED
MEMBER_DELETED
GET_PAYMENT_SESSIONGet Payment Session
UPDATE_PAYMENT_SESSIONUpdate Payment Session