blocklist.gsheet_url must be a Google Sheets link (https://docs.google.com/spreadsheets/d/...). The URL is saved immediately and the sheet is verified in the background — if it is not publicly accessible, blocklist.gsheet_sync_error (see GET) is set within a few seconds. Pass "" or null to disconnect the sheet.domain_daily_cap requires max_leads_per_day to be set (in the same request or earlier).ai_lead_labeling.labels and auto_follow_up.labels accept label KEYS only — list valid keys with GET /workspace-settings/lead-labels. auto_follow_up.labels additionally accepts "UNLABELLED" for conversations without a label.auto_follow_up requires at least one step and at least one label (in the same request or earlier).status field.curl --location --request PATCH 'https://api.plusvibe.ai/api/v1/workspace-settings/update' \
--header 'x-api-key: <api-key>' \
--header 'Content-Type: application/json' \
--data '{
"workspace_id": "6764274d64169c4e88eec418",
"auto_follow_up": {
"is_enabled": "yes",
"wait_days": 3,
"labels": [
"INTERESTED",
"UNLABELLED"
],
"steps": [
{
"body": "<p>Hi {{first_name}}, just floating this back up.</p>",
"wait_days": 3
}
]
}
}'{
"status": "Success",
"blocklist": {
"apply_on": [
"AUTO_FOLLOW_UP",
"MANUAL_REPLY"
],
"gsheet_url": "https://docs.google.com/spreadsheets/d/1AbCdEfG/edit#gid=0",
"gsheet_sync_error": null
},
"domain_daily_cap": {
"is_enabled": "yes",
"max_leads_per_day": 3
},
"ai_lead_labeling": {
"labels": [
"INTERESTED",
"HOT_LEAD"
]
},
"auto_follow_up": {
"is_enabled": "yes",
"wait_days": 3,
"labels": [
"INTERESTED",
"UNLABELLED"
],
"steps": [
{
"body": "<p>Hi {{first_name}}, just floating this back up.</p>",
"wait_days": 3
},
{
"body": "<p>Any thoughts on my last note?</p>",
"wait_days": 4
}
]
}
}