Consumer Authentication
Handle consumer user registration and login for e-commerce flows.
Base URL: /api/v1/partner/user
Endpoints Overview
| Method | Endpoint | Description |
|---|---|---|
| GET | /{cuid} | Get User By Id |
| GET | /find | Find User |
| POST | /register | Register Consumer |
| POST | /login | Consumer Login |
Get User By Id
GET /api/v1/partner/user/{cuid}
Retrieve a consumer user profile by their ID.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
cuid | string | The cuid |
Response
Returns a ConsumerUser object.
- Fields
- JSON
| Field | Type | Required | Description |
|---|---|---|---|
id | string | No | Unique identifier |
companyId | string | No | Company identifier |
created | long | No | Created timestamp (epoch ms) |
modified | long | No | Last modified timestamp (epoch ms) |
deleted | boolean | No | Whether the record is deleted |
updated | boolean | No | Whether the record has been updated |
email | string | No | Email address |
password | string | No | Password |
firstName | string | No | First name |
lastName | string | No | Last name |
middleName | string | No | Middle name |
address | Address | No | Address |
dob | long | No | Dob |
birthdate | string | No | Birthdate |
localDob | string | No | Local Dob |
primaryPhone | string | No | Primary phone number |
cpn | string | No | Cpn |
textOptIn | boolean | No | Text Opt In |
emailOptIn | boolean | No | Email Opt In |
medical | boolean | No | Medical (default: false) |
searchText | string | No | Search Text |
anonymous | boolean | No | Anonymous |
marketingSource | string | No | Marketing Source |
sourceCompanyId | string | No | Source Company identifier |
verifyMethod | string | No | Verify Method. One of: Website, Phone (default: Website) |
verificationWebsite | string | No | Verification Website |
verificationPhone | string | No | Verification Phone |
doctorFirstName | string | No | Doctor First Name |
doctorLastName | string | No | Doctor Last Name |
doctorLicense | string | No | Doctor License |
dlNo | string | No | Dl No |
dlExpiration | long | No | Dl Expiration |
localDlExpiration | string | No | Local Dl Expiration |
dlState | string | No | Dl State |
dlPhoto | ConsumerAsset | No | Dl Photo |
recPhoto | ConsumerAsset | No | Rec Photo |
recNo | string | No | Rec No |
recExpiration | long | No | Rec Expiration |
recIssueDate | long | No | Rec Issue timestamp (epoch ms) |
notificationType | string | No | Notification Type. One of: None, Email, Text (default: Email) |
consumerType | string | No | Consumer Type. One of: Other, AdultUse, MedicinalState, MedicinalThirdParty (default: AdultUse) |
verified | boolean | No | Verified |
active | boolean | No | Whether active (default: true) |
memberIds | string[] | No | Member Ids |
memberStatuses | ConsumerMemberStatus[] | No | Member Statuses |
signedContracts | SignedContract[] | No | Signed Contracts |
source | string | No | Source. One of: Blaze, WooCommerce (default: Blaze) |
importId | string | No | Import identifier |
memberId | string | No | Member identifier |
accepted | boolean | No | Accepted (default: false) |
acceptedDate | long | No | Accepted timestamp (epoch ms) |
reason | string | No | Reason |
lastSyncDate | long | No | Last Sync timestamp (epoch ms) |
rejectedDate | long | No | Rejected timestamp (epoch ms) |
addresses | Address[] | No | Addresses |
{
"id": "abc123",
"companyId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"email": "user@example.com",
"password": "string",
"firstName": "John",
"lastName": "Doe",
"middleName": "string",
"address": {
"id": "abc123",
"companyId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"address": "",
"city": "",
"state": "",
"zipCode": "",
"addressLine2": "",
"country": "DEFAULT_COUNTRY",
"latitude": 0,
"longitude": 0
},
"dob": 1704067200000,
"birthdate": "string",
"localDob": "string",
"primaryPhone": "555-0100",
"cpn": "string",
"textOptIn": false,
"emailOptIn": false,
"medical": false,
"searchText": "string",
"anonymous": false,
"marketingSource": "string",
"sourceCompanyId": "abc123",
"verifyMethod": "Website",
"verificationWebsite": "string",
"verificationPhone": "string",
"doctorFirstName": "string",
"doctorLastName": "string",
"doctorLicense": "string",
"dlNo": "string",
"dlExpiration": 0,
"localDlExpiration": "string",
"dlState": "string",
"dlPhoto": {
"id": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"name": "string",
"key": "string",
"active": false,
"documentId": "abc123"
},
"recPhoto": {
"id": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"name": "string",
"key": "string",
"active": false,
"documentId": "abc123"
},
"recNo": "string",
"recExpiration": 0,
"recIssueDate": 1704067200000,
"notificationType": "Email",
"consumerType": "AdultUse",
"verified": false,
"active": true,
"memberIds": [],
"memberStatuses": [
{
"id": "abc123",
"companyId": "abc123",
"shopId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"consumerId": "abc123",
"memberId": "abc123",
"accepted": false,
"acceptedDate": 1704067200000,
"reason": "string",
"lastSyncDate": 1704067200000
}
],
"signedContracts": [
{
"id": "abc123",
"companyId": "abc123",
"shopId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"contractId": "abc123",
"membershipId": "abc123",
"signedDate": 1704067200000,
"signaturePhoto": {},
"signedDigitally": false,
"consumerId": "abc123",
"memberName": "string",
"employeeName": "string",
"employeeSignaturePhoto": {},
"witnessName": "string",
"witnessSignaturePhoto": {}
}
],
"source": "Blaze",
"importId": "abc123",
"memberId": "abc123",
"accepted": false,
"acceptedDate": 1704067200000,
"reason": "string",
"lastSyncDate": 1704067200000,
"rejectedDate": 1704067200000,
"addresses": [
{
"id": "abc123",
"companyId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"address": "",
"city": "",
"state": "",
"zipCode": "",
"addressLine2": "",
"country": "DEFAULT_COUNTRY",
"latitude": 0,
"longitude": 0
}
]
}
Find User
GET /api/v1/partner/user/find
Search for a consumer user by email, phoneNumber, and/or country. All parameters are optional — provide whichever identifiers you have available.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
email | string | No | |
phoneNumber | string | No | phone number |
country | string | No | country |
Response
Returns a ConsumerUser object.
- Fields
- JSON
| Field | Type | Required | Description |
|---|---|---|---|
id | string | No | Unique identifier |
companyId | string | No | Company identifier |
created | long | No | Created timestamp (epoch ms) |
modified | long | No | Last modified timestamp (epoch ms) |
deleted | boolean | No | Whether the record is deleted |
updated | boolean | No | Whether the record has been updated |
email | string | No | Email address |
password | string | No | Password |
firstName | string | No | First name |
lastName | string | No | Last name |
middleName | string | No | Middle name |
address | Address | No | Address |
dob | long | No | Dob |
birthdate | string | No | Birthdate |
localDob | string | No | Local Dob |
primaryPhone | string | No | Primary phone number |
cpn | string | No | Cpn |
textOptIn | boolean | No | Text Opt In |
emailOptIn | boolean | No | Email Opt In |
medical | boolean | No | Medical (default: false) |
searchText | string | No | Search Text |
anonymous | boolean | No | Anonymous |
marketingSource | string | No | Marketing Source |
sourceCompanyId | string | No | Source Company identifier |
verifyMethod | string | No | Verify Method. One of: Website, Phone (default: Website) |
verificationWebsite | string | No | Verification Website |
verificationPhone | string | No | Verification Phone |
doctorFirstName | string | No | Doctor First Name |
doctorLastName | string | No | Doctor Last Name |
doctorLicense | string | No | Doctor License |
dlNo | string | No | Dl No |
dlExpiration | long | No | Dl Expiration |
localDlExpiration | string | No | Local Dl Expiration |
dlState | string | No | Dl State |
dlPhoto | ConsumerAsset | No | Dl Photo |
recPhoto | ConsumerAsset | No | Rec Photo |
recNo | string | No | Rec No |
recExpiration | long | No | Rec Expiration |
recIssueDate | long | No | Rec Issue timestamp (epoch ms) |
notificationType | string | No | Notification Type. One of: None, Email, Text (default: Email) |
consumerType | string | No | Consumer Type. One of: Other, AdultUse, MedicinalState, MedicinalThirdParty (default: AdultUse) |
verified | boolean | No | Verified |
active | boolean | No | Whether active (default: true) |
memberIds | string[] | No | Member Ids |
memberStatuses | ConsumerMemberStatus[] | No | Member Statuses |
signedContracts | SignedContract[] | No | Signed Contracts |
source | string | No | Source. One of: Blaze, WooCommerce (default: Blaze) |
importId | string | No | Import identifier |
memberId | string | No | Member identifier |
accepted | boolean | No | Accepted (default: false) |
acceptedDate | long | No | Accepted timestamp (epoch ms) |
reason | string | No | Reason |
lastSyncDate | long | No | Last Sync timestamp (epoch ms) |
rejectedDate | long | No | Rejected timestamp (epoch ms) |
addresses | Address[] | No | Addresses |
{
"id": "abc123",
"companyId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"email": "user@example.com",
"password": "string",
"firstName": "John",
"lastName": "Doe",
"middleName": "string",
"address": {
"id": "abc123",
"companyId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"address": "",
"city": "",
"state": "",
"zipCode": "",
"addressLine2": "",
"country": "DEFAULT_COUNTRY",
"latitude": 0,
"longitude": 0
},
"dob": 1704067200000,
"birthdate": "string",
"localDob": "string",
"primaryPhone": "555-0100",
"cpn": "string",
"textOptIn": false,
"emailOptIn": false,
"medical": false,
"searchText": "string",
"anonymous": false,
"marketingSource": "string",
"sourceCompanyId": "abc123",
"verifyMethod": "Website",
"verificationWebsite": "string",
"verificationPhone": "string",
"doctorFirstName": "string",
"doctorLastName": "string",
"doctorLicense": "string",
"dlNo": "string",
"dlExpiration": 0,
"localDlExpiration": "string",
"dlState": "string",
"dlPhoto": {
"id": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"name": "string",
"key": "string",
"active": false,
"documentId": "abc123"
},
"recPhoto": {
"id": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"name": "string",
"key": "string",
"active": false,
"documentId": "abc123"
},
"recNo": "string",
"recExpiration": 0,
"recIssueDate": 1704067200000,
"notificationType": "Email",
"consumerType": "AdultUse",
"verified": false,
"active": true,
"memberIds": [],
"memberStatuses": [
{
"id": "abc123",
"companyId": "abc123",
"shopId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"consumerId": "abc123",
"memberId": "abc123",
"accepted": false,
"acceptedDate": 1704067200000,
"reason": "string",
"lastSyncDate": 1704067200000
}
],
"signedContracts": [
{
"id": "abc123",
"companyId": "abc123",
"shopId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"contractId": "abc123",
"membershipId": "abc123",
"signedDate": 1704067200000,
"signaturePhoto": {},
"signedDigitally": false,
"consumerId": "abc123",
"memberName": "string",
"employeeName": "string",
"employeeSignaturePhoto": {},
"witnessName": "string",
"witnessSignaturePhoto": {}
}
],
"source": "Blaze",
"importId": "abc123",
"memberId": "abc123",
"accepted": false,
"acceptedDate": 1704067200000,
"reason": "string",
"lastSyncDate": 1704067200000,
"rejectedDate": 1704067200000,
"addresses": [
{
"id": "abc123",
"companyId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"address": "",
"city": "",
"state": "",
"zipCode": "",
"addressLine2": "",
"country": "DEFAULT_COUNTRY",
"latitude": 0,
"longitude": 0
}
]
}
Register Consumer
POST /api/v1/partner/user/register
Register a new consumer user account. Send a ConsumerCreateRequest in the request body with the user's registration details.
Request Body
- Fields
- JSON
| Field | Type | Required | Description |
|---|---|---|---|
email | string | Yes | Email address |
firstName | string | Yes | First name |
lastName | string | Yes | Last name |
password | string | No | Password |
phoneNumber | string | No | Phone Number |
dob | long | No | Dob |
birthdate | string | No | Birthdate |
localDob | string | No | Local Dob |
marketingSource | string | No | Marketing Source |
agreement | CompanyAsset | No | Agreement |
contractId | string | No | Contract identifier |
{
"email": "user@example.com",
"firstName": "John",
"lastName": "Doe",
"password": "string",
"phoneNumber": "string",
"dob": 1704067200000,
"birthdate": "string",
"localDob": "string",
"marketingSource": "string",
"agreement": {
"id": "abc123",
"companyId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"name": "string",
"key": "string",
"type": {},
"publicURL": "string",
"active": false,
"priority": 0,
"secured": true,
"thumbURL": "string",
"mediumURL": "string",
"largeURL": "string",
"largeX2URL": "string",
"origURL": "string",
"platformFileUrl": "string"
},
"contractId": "abc123"
}
Response
Returns a ConsumerUser object.
- Fields
- JSON
| Field | Type | Required | Description |
|---|---|---|---|
id | string | No | Unique identifier |
companyId | string | No | Company identifier |
created | long | No | Created timestamp (epoch ms) |
modified | long | No | Last modified timestamp (epoch ms) |
deleted | boolean | No | Whether the record is deleted |
updated | boolean | No | Whether the record has been updated |
email | string | No | Email address |
password | string | No | Password |
firstName | string | No | First name |
lastName | string | No | Last name |
middleName | string | No | Middle name |
address | Address | No | Address |
dob | long | No | Dob |
birthdate | string | No | Birthdate |
localDob | string | No | Local Dob |
primaryPhone | string | No | Primary phone number |
cpn | string | No | Cpn |
textOptIn | boolean | No | Text Opt In |
emailOptIn | boolean | No | Email Opt In |
medical | boolean | No | Medical (default: false) |
searchText | string | No | Search Text |
anonymous | boolean | No | Anonymous |
marketingSource | string | No | Marketing Source |
sourceCompanyId | string | No | Source Company identifier |
verifyMethod | string | No | Verify Method. One of: Website, Phone (default: Website) |
verificationWebsite | string | No | Verification Website |
verificationPhone | string | No | Verification Phone |
doctorFirstName | string | No | Doctor First Name |
doctorLastName | string | No | Doctor Last Name |
doctorLicense | string | No | Doctor License |
dlNo | string | No | Dl No |
dlExpiration | long | No | Dl Expiration |
localDlExpiration | string | No | Local Dl Expiration |
dlState | string | No | Dl State |
dlPhoto | ConsumerAsset | No | Dl Photo |
recPhoto | ConsumerAsset | No | Rec Photo |
recNo | string | No | Rec No |
recExpiration | long | No | Rec Expiration |
recIssueDate | long | No | Rec Issue timestamp (epoch ms) |
notificationType | string | No | Notification Type. One of: None, Email, Text (default: Email) |
consumerType | string | No | Consumer Type. One of: Other, AdultUse, MedicinalState, MedicinalThirdParty (default: AdultUse) |
verified | boolean | No | Verified |
active | boolean | No | Whether active (default: true) |
memberIds | string[] | No | Member Ids |
memberStatuses | ConsumerMemberStatus[] | No | Member Statuses |
signedContracts | SignedContract[] | No | Signed Contracts |
source | string | No | Source. One of: Blaze, WooCommerce (default: Blaze) |
importId | string | No | Import identifier |
memberId | string | No | Member identifier |
accepted | boolean | No | Accepted (default: false) |
acceptedDate | long | No | Accepted timestamp (epoch ms) |
reason | string | No | Reason |
lastSyncDate | long | No | Last Sync timestamp (epoch ms) |
rejectedDate | long | No | Rejected timestamp (epoch ms) |
addresses | Address[] | No | Addresses |
{
"id": "abc123",
"companyId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"email": "user@example.com",
"password": "string",
"firstName": "John",
"lastName": "Doe",
"middleName": "string",
"address": {
"id": "abc123",
"companyId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"address": "",
"city": "",
"state": "",
"zipCode": "",
"addressLine2": "",
"country": "DEFAULT_COUNTRY",
"latitude": 0,
"longitude": 0
},
"dob": 1704067200000,
"birthdate": "string",
"localDob": "string",
"primaryPhone": "555-0100",
"cpn": "string",
"textOptIn": false,
"emailOptIn": false,
"medical": false,
"searchText": "string",
"anonymous": false,
"marketingSource": "string",
"sourceCompanyId": "abc123",
"verifyMethod": "Website",
"verificationWebsite": "string",
"verificationPhone": "string",
"doctorFirstName": "string",
"doctorLastName": "string",
"doctorLicense": "string",
"dlNo": "string",
"dlExpiration": 0,
"localDlExpiration": "string",
"dlState": "string",
"dlPhoto": {
"id": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"name": "string",
"key": "string",
"active": false,
"documentId": "abc123"
},
"recPhoto": {
"id": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"name": "string",
"key": "string",
"active": false,
"documentId": "abc123"
},
"recNo": "string",
"recExpiration": 0,
"recIssueDate": 1704067200000,
"notificationType": "Email",
"consumerType": "AdultUse",
"verified": false,
"active": true,
"memberIds": [],
"memberStatuses": [
{
"id": "abc123",
"companyId": "abc123",
"shopId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"consumerId": "abc123",
"memberId": "abc123",
"accepted": false,
"acceptedDate": 1704067200000,
"reason": "string",
"lastSyncDate": 1704067200000
}
],
"signedContracts": [
{
"id": "abc123",
"companyId": "abc123",
"shopId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"contractId": "abc123",
"membershipId": "abc123",
"signedDate": 1704067200000,
"signaturePhoto": {},
"signedDigitally": false,
"consumerId": "abc123",
"memberName": "string",
"employeeName": "string",
"employeeSignaturePhoto": {},
"witnessName": "string",
"witnessSignaturePhoto": {}
}
],
"source": "Blaze",
"importId": "abc123",
"memberId": "abc123",
"accepted": false,
"acceptedDate": 1704067200000,
"reason": "string",
"lastSyncDate": 1704067200000,
"rejectedDate": 1704067200000,
"addresses": [
{
"id": "abc123",
"companyId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"address": "",
"city": "",
"state": "",
"zipCode": "",
"addressLine2": "",
"country": "DEFAULT_COUNTRY",
"latitude": 0,
"longitude": 0
}
]
}
Consumer Login
POST /api/v1/partner/user/login
Authenticate a consumer user. On success, returns a ConsumerAuthResult containing the access token. The token is also set in the X-Auth-Token response header for convenience.
Request Body
- Fields
- JSON
| Field | Type | Required | Description |
|---|---|---|---|
email | string | Yes | Email address |
password | string | Yes | Password |
timezone | string | No | Timezone |
{
"email": "user@example.com",
"password": "string",
"timezone": "string"
}
Response
Returns a ConsumerAuthResult object.
- Fields
- JSON
| Field | Type | Required | Description |
|---|---|---|---|
accessToken | string | No | Access Token |
assetAccessToken | string | No | Asset Access Token |
user | ConsumerUser | No | User |
loginTime | long | No | Login timestamp (epoch ms) |
expirationTime | long | No | Expiration timestamp (epoch ms) |
sessionId | string | No | Session identifier |
{
"accessToken": "string",
"assetAccessToken": "string",
"user": {
"id": "abc123",
"companyId": "abc123",
"created": 1704067200000,
"modified": 1704067200000,
"deleted": false,
"updated": false,
"email": "user@example.com",
"password": "string",
"firstName": "John",
"lastName": "Doe",
"middleName": "string",
"address": {},
"dob": 1704067200000,
"birthdate": "string",
"localDob": "string",
"primaryPhone": "555-0100",
"cpn": "string",
"textOptIn": false,
"emailOptIn": false,
"medical": false,
"searchText": "string",
"anonymous": false,
"marketingSource": "string",
"sourceCompanyId": "abc123",
"verifyMethod": "Website",
"verificationWebsite": "string",
"verificationPhone": "string",
"doctorFirstName": "string",
"doctorLastName": "string",
"doctorLicense": "string",
"dlNo": "string",
"dlExpiration": 0,
"localDlExpiration": "string",
"dlState": "string",
"dlPhoto": {},
"recPhoto": {},
"recNo": "string",
"recExpiration": 0,
"recIssueDate": 1704067200000,
"notificationType": "Email",
"consumerType": "AdultUse",
"verified": false,
"active": true,
"memberIds": [],
"memberStatuses": [],
"signedContracts": [],
"source": "Blaze",
"importId": "abc123",
"memberId": "abc123",
"accepted": false,
"acceptedDate": 1704067200000,
"reason": "string",
"lastSyncDate": 1704067200000,
"rejectedDate": 1704067200000,
"addresses": []
},
"loginTime": 1704067200000,
"expirationTime": 1704067200000,
"sessionId": "abc123"
}