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.

Scope

APIs

Webhook Names

APIs and webhooks which don't require a scope

Get Branding

BRANDING_CHANGED

GET_ACCOUNT_DETAILS

Get account info

GET_WEBSITE

Get 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_WEBSITE

Update site
Upload resources

DOMAIN_UPDATED

PUBLISH_SITE

Publish site
Create site backup
Get site backups
Restore site

PUBLISH
UNPUBLISH
DOMAIN_UPDATED
BLOG_POST_PUBLISH

SITE_WIDE_HTML

Get Site Wide Code
Update Site-wide widgets

GET_PAGES

Get pages
Get page

UPDATE_PAGES

Update page
Delete page
Upload resources

GET_COMMENTS

NEW_CONVERSATION
NEW_COMMENT
CONVERSATION_UPDATED
COMMENT_EDITED
COMMENT_DELETED

GET_CONTENT_LIBRARY

Get Content Library Data
Get Location Data

CONTENT_LIB_PUBLISHED
CONTENT_LIB_CHANGED

UPDATE_CONTENT_LIBRARY

Update content library data
Publish content library changes
Create additional location
Update Location
Delete location
Upload resources

CONTENT_LIB_PUBLISHED
CONTENT_LIB_CHANGED

GET_INJECT_CONTENT

Get Inject Content Values

UPDATE_INJECT_CONTENT

Inject content
Upload resources

GET_COLLECTION

Get Site Collections
Get Collection

UPDATE_COLLECTIONS

Create 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

REPORTING

Get contact form data
Get analytics

CONTACT_FORM_SENT
CONTACT_FORM_SENT_V2

GET_BACKUP

Get site backups

SITE_RESTORED

MANAGE_BACKUPS

Get site backups
Restore site

SITE_RESTORED

UPDATE_SSL

Generate SSL Certificate
Delete SSL Certificate
Renew SSL Certificate

GET_PRODUCTS

List product
Get product

ECOMM_PRODUCT_CREATED
ECOMM_PRODUCT_UPDATED
ECOMM_PRODUCT_DELETED
ECOMM_CATEGORY_CREATED
ECOMM_CATEGORY_UPDATED
ECOMM_CATEGORY_DELETED

UPDATE_PRODUCTS

Create product
Update product
Delete product

GET_ORDERS

List orders
Get order

ECOMM_ORDER_CREATED
ECOMM_ORDER_PAID
ECOMM_ORDER_UPDATED

UPDATE_ORDERS

Create order
Update order

GET_CARTS

List carts
Get cart

GET_DISCOUNTS

List discounts
Get discount

UPDATE_DISCOUNTS

Create discount
Update discount
Delete discount

GET_MEMBER

MEMBER_CREATED
MEMBER_UPDATED
MEMBER_DELETED

GET_PAYMENT_SESSION

Get Payment Session

UPDATE_PAYMENT_SESSION

Update Payment Session