Skip to content

Contact routes: subscribe, suppress, unsubscribe

The Contact Verbs subscribe, suppress, unsubscribe as api.sb routes, with inputs, result, refusals and an example.

Reference for Contact, one group of Contact routes.

Contact.subscribe

Subscribe records a Contact’s chosen topics and frequency from the hosted preference page, with Consent for each topic. Verb page.

Text
POST /{namespace}/contacts/{contact}/subscribe

Path: contact. Body, as JSON: the other inputs. Emits Contact.subscribed.

Inputs

InputTypeRequiredDescription
contactContactrequiredThe Contact.
topicsstring[]requiredThe topics the Contact chose.

Returns

OutputTypeRequiredDescription
contactContactrequiredThe Contact, with their topics.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.

Example

Terminal
curl -X POST https://api.sb/leaseline.app/contacts/contact_WsrosCQi6J/subscribe \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"topics":["Example topics"]}'
JSON
{
  "api": "https://api.sb/leaseline.app",
  "contact": {
    "$id": "https://api.sb/leaseline.app/contacts/contact_WsrosCQi6J",
    "$type": "Contact",
    "email": "marcus@riversideproperty.com",
    "phone": "Example phone"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "Contact.subscribe",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}

Contact.suppress

Suppress records a Suppression for a Contact’s address, which every Startup honors forever. Verb page.

Text
POST /{namespace}/contacts/{contact}/suppress

Path: contact. Emits Contact.suppressed.

Inputs

InputTypeRequiredDescription
contactContactrequiredThe Contact who opts out.

Returns

OutputTypeRequiredDescription
contactContactrequiredThe suppressed Contact.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.

Example

Terminal
curl -X POST https://api.sb/leaseline.app/contacts/contact_WsrosCQi6J/suppress \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"
JSON
{
  "api": "https://api.sb/leaseline.app",
  "contact": {
    "$id": "https://api.sb/leaseline.app/contacts/contact_WsrosCQi6J",
    "$type": "Contact",
    "email": "marcus@riversideproperty.com",
    "phone": "Example phone"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "Contact.suppress",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}

Contact.unsubscribe

Unsubscribe stops commercial Messages to a Contact in one click, for one topic or all, honored at once. Verb page.

Text
POST /{namespace}/contacts/{contact}/unsubscribe

Path: contact. Body, as JSON: the other inputs. Emits Contact.unsubscribed.

Inputs

InputTypeRequiredDescription
contactContactrequiredThe Contact.
topicstringOne topic; omitted, every commercial topic.

Returns

OutputTypeRequiredDescription
contactContactrequiredThe Contact, unsubscribed.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.

Example

Terminal
curl -X POST https://api.sb/leaseline.app/contacts/contact_WsrosCQi6J/unsubscribe \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"
JSON
{
  "api": "https://api.sb/leaseline.app",
  "contact": {
    "$id": "https://api.sb/leaseline.app/contacts/contact_WsrosCQi6J",
    "$type": "Contact",
    "email": "marcus@riversideproperty.com",
    "phone": "Example phone"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "Contact.unsubscribe",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}