For the complete documentation index, see llms.txt. This page is also available as Markdown.

Users

Create a new user

post
/users

Creates a new user and associates them with the authenticated partner. If a user with the provided email already exists but is not associated with the partner, the existing user will be associated with the partner instead of creating a new user.

Authorizations
AuthorizationstringRequired

API keys are provided when a partner account is created and can be regenerated if needed. To authenticate requests, include your API key in the request headers using the Bearer token format: Authorization: Bearer your-api-key

Required Permissions

The following permissions are required for the User endpoints:

  • user:create - Create new users and associate them with your partner account
  • user:read - View users associated with your partner account
  • user:update - Modify user information for users associated with your partner account
  • user:delete - Disassociate users from your partner account
Body
emailstring · emailRequired

User's email address (required)

Example: user@example.com
twitterUsernamestringOptional

User's twitter username (optional)

Example: twitter_handle
walletAddressstringOptional

User's blockchain wallet address (optional)

Example: 0x1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b
Responses
201

User created or associated successfully

application/json
successbooleanOptional

Indicates that the request was successful

Example: true
metaobjectOptional

Additional metadata (empty for user creation)

post/users
POST /v1/users HTTP/1.1
Host: api.reveel.id
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 124

{
  "email": "user@example.com",
  "twitterUsername": "twitter_handle",
  "walletAddress": "0x1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b"
}
{
  "success": true,
  "data": {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "email": "user@example.com",
    "twitterUsername": "twitter_handle",
    "walletAddress": "0x1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b",
    "createdAt": "2023-01-15T12:00:00.000Z"
  },
  "meta": {}
}

Get a user by ID

get
/users/{id}

Retrieves a specific user by their ID (user must be associated with the authenticated partner)

Authorizations
AuthorizationstringRequired

API keys are provided when a partner account is created and can be regenerated if needed. To authenticate requests, include your API key in the request headers using the Bearer token format: Authorization: Bearer your-api-key

Required Permissions

The following permissions are required for the User endpoints:

  • user:create - Create new users and associate them with your partner account
  • user:read - View users associated with your partner account
  • user:update - Modify user information for users associated with your partner account
  • user:delete - Disassociate users from your partner account
Path parameters
idstring · uuidRequired

ID of the user to operate on

Responses
200

User retrieved successfully

application/json
successbooleanOptional

Indicates that the request was successful

Example: true
get/users/{id}
GET /v1/users/{id} HTTP/1.1
Host: api.reveel.id
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "success": true,
  "data": {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "email": "user@example.com",
    "twitterUsername": "twitter_handle",
    "walletAddress": "0x1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b",
    "createdAt": "2023-01-15T12:00:00.000Z",
    "updatedAt": "2023-01-16T14:30:00.000Z",
    "payId": {
      "id": "123e4567-e89b-12d3-a456-426614174001",
      "name": "johndoe"
    }
  },
  "meta": {
    "message": "User retrieved successfully"
  }
}

Update a user

put
/users/{id}

Updates information for a specific user by their ID. The user must be associated with the authenticated partner. At least one field must be provided for update.

Authorizations
AuthorizationstringRequired

API keys are provided when a partner account is created and can be regenerated if needed. To authenticate requests, include your API key in the request headers using the Bearer token format: Authorization: Bearer your-api-key

Required Permissions

The following permissions are required for the User endpoints:

  • user:create - Create new users and associate them with your partner account
  • user:read - View users associated with your partner account
  • user:update - Modify user information for users associated with your partner account
  • user:delete - Disassociate users from your partner account
Path parameters
idstring · uuidRequired

ID of the user to operate on

Body
emailstring · emailOptional

User's updated email address

Example: updated@example.com
twitterUsernamestringOptional

User's updated twitter username

Example: new_twitter_handle
walletAddressstringOptional

User's updated blockchain wallet address

Example: 0x1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b
Responses
200

User updated successfully

application/json
successbooleanOptional

Indicates that the request was successful

Example: true
put/users/{id}
PUT /v1/users/{id} HTTP/1.1
Host: api.reveel.id
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 131

{
  "email": "updated@example.com",
  "twitterUsername": "new_twitter_handle",
  "walletAddress": "0x1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b"
}
{
  "success": true,
  "data": {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "email": "updated@example.com",
    "twitterUsername": "new_twitter_handle",
    "walletAddress": "0x1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b",
    "createdAt": "2023-01-15T12:00:00.000Z",
    "updatedAt": "2023-01-16T14:30:00.000Z"
  },
  "meta": {
    "message": "User updated successfully"
  }
}

Disassociate a user

delete
/users/{id}

Removes the association between a user and the authenticated partner. This does not delete the user from the system, only removes the association.

Authorizations
AuthorizationstringRequired

API keys are provided when a partner account is created and can be regenerated if needed. To authenticate requests, include your API key in the request headers using the Bearer token format: Authorization: Bearer your-api-key

Required Permissions

The following permissions are required for the User endpoints:

  • user:create - Create new users and associate them with your partner account
  • user:read - View users associated with your partner account
  • user:update - Modify user information for users associated with your partner account
  • user:delete - Disassociate users from your partner account
Path parameters
idstring · uuidRequired

ID of the user to operate on

Responses
200

User disassociated successfully

application/json
successbooleanOptional

Indicates that the request was successful

Example: true
delete/users/{id}
DELETE /v1/users/{id} HTTP/1.1
Host: api.reveel.id
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "success": true,
  "meta": {
    "message": "User disassociated from partner successfully"
  }
}

Disconnect wallet

post
/users/{id}/disconnect-wallet

Disconnects a wallet from a specific user by setting their walletAddress to null. The user must be associated with the authenticated partner and must have a wallet connected.

Authorizations
AuthorizationstringRequired

API keys are provided when a partner account is created and can be regenerated if needed. To authenticate requests, include your API key in the request headers using the Bearer token format: Authorization: Bearer your-api-key

Required Permissions

The following permissions are required for the User endpoints:

  • user:create - Create new users and associate them with your partner account
  • user:read - View users associated with your partner account
  • user:update - Modify user information for users associated with your partner account
  • user:delete - Disassociate users from your partner account
Path parameters
idstring · uuidRequired

ID of the user to disconnect wallet from

Responses
200

Wallet disconnected successfully

application/json
successbooleanOptional

Indicates that the request was successful

Example: true
post/users/{id}/disconnect-wallet
POST /v1/users/{id}/disconnect-wallet HTTP/1.1
Host: api.reveel.id
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "success": true,
  "data": {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "email": "user@example.com",
    "twitterUsername": "twitter_handle",
    "walletAddress": null,
    "createdAt": "2023-01-15T12:00:00.000Z",
    "updatedAt": "2023-01-16T14:30:00.000Z"
  },
  "meta": {
    "message": "Wallet disconnected successfully"
  }
}

Get a user by email

get
/users/email/{email}

Retrieves a specific user by their email address. The user must exist and be associated with the authenticated partner.

Authorizations
AuthorizationstringRequired

API keys are provided when a partner account is created and can be regenerated if needed. To authenticate requests, include your API key in the request headers using the Bearer token format: Authorization: Bearer your-api-key

Required Permissions

The following permissions are required for the User endpoints:

  • user:create - Create new users and associate them with your partner account
  • user:read - View users associated with your partner account
  • user:update - Modify user information for users associated with your partner account
  • user:delete - Disassociate users from your partner account
Path parameters
emailstring · emailRequired

Email of the user to retrieve

Responses
200

User retrieved successfully

application/json
successbooleanOptional

Indicates that the request was successful

Example: true
get/users/email/{email}
GET /v1/users/email/{email} HTTP/1.1
Host: api.reveel.id
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "success": true,
  "data": {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "email": "user@example.com",
    "twitterUsername": "twitter_handle",
    "walletAddress": "0x1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b",
    "createdAt": "2023-01-15T12:00:00.000Z",
    "updatedAt": "2023-01-16T14:30:00.000Z",
    "payId": {
      "id": "123e4567-e89b-12d3-a456-426614174001",
      "name": "johndoe"
    }
  },
  "meta": {
    "message": "User retrieved successfully"
  }
}

Last updated

Was this helpful?