Creates a new Push Protocol token gated group if it does not yet exists. The group is associated with an Unstoppable Domains badge.
Messaging API (1.0.0)
The Messaging API is responsible for messaging interactions related to email, Push Protocol or XMTP.
This API uses signed messages to validate a given wallet is authorized to submit the request. Authentication headers must be provided using the approach described below.
- Determine the message that must be signed through the message generator endpoint
- Request GET /api/user/{domain}/signature?device=true&expiry={timestamp}
- Replace '{domain}' with desired domain
- Replace '{expiry}' with desired Unix epoch timestamp
- Response contains the message that must be signed
- Message is a unique hash value
- Represents combination of provided request parameters
- Includes an expiration timestamp
- Request GET /api/user/{domain}/signature?device=true&expiry={timestamp}
- User must sign the message returned by the message generator API
- For example, the Metamask wallet could be used to sign the message
- Generated signature is used in header of subsequent GET or POST request
- Construct a request to the desired endpoint that requires user authentication
- Must include headers
- x-auth-domain - Must equal the {domain} in context
- x-auth-expiration - Must equal the {expiry} timestamp in the signed message
- x-auth-signature - Must be set to the value of the user generated signature
- Must include headers
Languages
Servers
Production
https://api.unstoppabledomains.com/messaging/
- Productionhttps://api.unstoppabledomains.com/messaging/push/group/join
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
curl -i -X POST \
https://api.unstoppabledomains.com/messaging/push/group/join \
-H 'Content-Type: application/json' \
-d '{
"address": 291,
"badgeCode": 123,
"signature": 291
}'- Productionhttps://api.unstoppabledomains.com/messaging/push/group/leave
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
curl -i -X POST \
https://api.unstoppabledomains.com/messaging/push/group/leave \
-H 'Content-Type: application/json' \
-d '{
"address": 291,
"badgeCode": 123,
"signature": 291
}'