Users API Endpoints
Base URLs
https://users-api.dimo.zone
Basic User Operations 🔐
Get Authenticated User
GET
{baseUrl}
/v1/user
Retrieves user attributes for the authenticated user.
Headers
Authorization*
String
Bearer authentication using the access_token
generated from the Web3 challenge.
Update Authenticated User
PUT
{baseUrl}
/v1/user
Updates/modifies attributes for the authenticated user.
Headers
Authorization*
String
Bearer authentication using the access_token
generated from the Web3 challenge.
Request Body
userUpdateRequest*
Object
See example below for data structure:
Delete Authenticated User
DELETE
{baseUrl}/v1/user
Deletes the authenticated user. Throws a 409 error if the authenticated user has device registered.
Headers
Authorization*
String
Bearer authentication using the access_token
generated from the Web3 challenge.
2FA Email Confirmation Flow 🔐
Send a Confirmation Email
POST
{baseUrl}
/v1/user/send-confirmation-email
Sends a confirmation email to the registered email address of the authenticated user. This is the initiation step of the 2-factor authentication (2FA).
Headers
Authorization*
String
Bearer authentication using the access_token
generated from the Web3 challenge.
Submit an Email Confirmation Key
POST
{baseUrl}
/v1/user/confirm-email
Confirms the receipt of the confirmation email, this is the completion step of the 2-factor authentication (2FA).
Headers
Authorization*
String
Bearer authentication using the access_token
generated from the Web3 challenge.
Request Body
confirmEmailRequest*
Object
Specifies the key from the email. This needs to be in the format of { "key": "<6-digit-number>" }
Web3 User Auth Flow 🔐
Generate a Challenge for the User to Sign
POST
{baseUrl}
/v1/user/web3/challenge/generate
Generates a Web3 challenge message with an expiration timestamp for the user to sign.
Headers
Authorization*
String
Bearer authentication using the access_token
generated from the Web3 challenge.
Submit a Signed Challenge
POST
{baseUrl}
/v1/user/web3/challenge/submit
Confirms ownership of an Ethereum address.
Headers
Authorization*
String
Bearer authentication using the access_token
generated from the Web3 challenge.
Request Body
confirmEthereumRequest*
Object
This needs to be in the format of { "signature": "<signed_challenge_msg>" }
Get User's Other Accounts
GET
{baseUrl}/v1/user/check-accounts
Retrieves other connected accounts of the authenticated user.
Headers
Authorization*
String
Bearer authentication using the access_token
generated from the Web3 challenge.
Miscellaneous 🔐
Agree to Terms of Service
POST
{baseUrl}
/v1/user/agree-tos
Sends a confirmation agreeing to the current Terms of Service.
Headers
Authorization*
String
Bearer authentication using the access_token
generated from the Web3 challenge.
Submit a Referral Code
POST
{baseUrl}
/v1/user/submit-referral-code
Submits a referral code from another user. The request sends the referral code, validates, and stores it for referral rewards recognition.
Headers
Authorization*
String
Bearer authentication using the access_token
generated from the Web3 challenge.
Request Body
submitReferralCodeRequest*
Object
This needs to be in the format of { "referralCode": "<6-digit-code>" }
Swagger Doc
Last updated