Users
Base URL: https://api.miridia.io. Read Authentication and Conventions before you call these operations.
| Method | Path | Operation |
|---|---|---|
| GET | /api/user/my-account | My account |
| GET | /api/me | My account |
| PUT | /api/user | Update details |
My account
GET/api/user/my-account
Returns the profile plus the businesses the user can access in this org, so the client can then pick a business and attach the header on every following request. Also mounted at GET /api/me.
Access. Send a bearer token or an API key. Any signed-in member can call this operation.
Response
200. Returns a SingleResult envelope. The data field is PrimitiveUserAccountResponse.
curl -X GET "https://api.miridia.io/api/user/my-account" \
-H "Authorization: Bearer $MIRIDIA_TOKEN" \
-H "X-Business-Id: $MIRIDIA_BUSINESS_ID"My account (GET me)
GET/api/me
Returns the profile plus the businesses the user can access in this org, so the client can then pick a business and attach the header on every following request. Also mounted at GET /api/me.
Access. Send a bearer token or an API key. Any signed-in member can call this operation.
Response
200. Returns a SingleResult envelope. The data field is PrimitiveUserAccountResponse.
curl -X GET "https://api.miridia.io/api/me" \
-H "Authorization: Bearer $MIRIDIA_TOKEN" \
-H "X-Business-Id: $MIRIDIA_BUSINESS_ID"Update details
PUT/api/user
Access. Send a bearer token or an API key. Any signed-in member can call this operation.
Request body
Send JSON with the shape UpdateUserProfileRequest.
| Field | Type | Required | Description |
|---|---|---|---|
title | string | No | Limits: maximum 10 characters. |
firstName | string | Yes | Limits: maximum 100 characters. |
lastName | string | Yes | Limits: maximum 100 characters. |
email | string (email) | Yes | Limits: maximum 255 characters. |
phoneNumber | string (tel) | No | Limits: maximum 20 characters. |
accountStatus | enum UserAccountStatus | No | One of: Active, Suspended. |
acceptedTerms | boolean | No | |
address | UpdateAddressRequest | No | |
driver | DriverRequest | No | |
roles | enum UserRoles[] | No | One of: Sudo, Administrator, Manager, Operations, Driver, Accountant, General, Support, Unassigned. |
Response
200. Returns a SingleResult envelope. The data field is boolean.
curl -X PUT "https://api.miridia.io/api/user" \
-H "Authorization: Bearer $MIRIDIA_TOKEN" \
-H "X-Business-Id: $MIRIDIA_BUSINESS_ID" \
-H "Content-Type: application/json" \
-d '{
"title": "string",
"firstName": "string",
"lastName": "string",
"email": "name@example.com",
"phoneNumber": "string",
"accountStatus": "Active",
"acceptedTerms": true,
"address": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"placeId": "string",
"name": "string",
"website": "https://example.com",
"fullAddress": "string",
"street": "string",
"suburb": "string",
"city": "string",
"country": "string",
"postcode": "string",
"unit": "string",
"number": "string",
"province": "string",
"latitude": 0,
"longitude": 0
},
"driver": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"idNumber": "string",
"licenseNumber": "string",
"licenseTypeId": 0,
"licenseRenewalDate": "2026-09-29T08:00:00Z",
"licenseIssuedDate": "2026-09-29T08:00:00Z"
},
"roles": [
"Sudo"
]
}'{
"message": "string",
"messages": [
{
"title": "string",
"message": "string",
"level": "Standard",
"icon": "SyncAlert",
"code": "string"
}
],
"data": true,
"statusCode": "OK",
"canRead": true,
"canEdit": true,
"canDelete": true
}Models
The operations on this page use these object types. Select a type to see its fields.
AddressResponse
| Field | Type | Description |
|---|---|---|
id | string (uuid) | |
placeId | string | |
name | string | |
website | string | |
fullAddress | string | |
street | string | |
suburb | string | |
city | string | |
country | string | |
postcode | string | |
unit | string | |
number | string | |
province | string | |
latitude | number (double) | |
longitude | number (double) |
DriverRequest
| Field | Type | Description |
|---|---|---|
id | string (uuid) | |
idNumber | string | |
licenseNumber | string | |
licenseTypeId | integer (int32) | |
licenseRenewalDate | string (date-time) | |
licenseIssuedDate | string (date-time) |
DriverResponse
| Field | Type | Description |
|---|---|---|
id | string (uuid) | |
idNumber | string | |
licenseNumber | string | |
licenseTypeId | integer (int32) | |
licenseRenewalDate | string (date-time) | |
licenseIssuedDate | string (date-time) | |
user | DriverUserResponse |
DriverUserResponse
| Field | Type | Description |
|---|---|---|
id | string (uuid) | |
firstName | string | |
lastName | string | |
email | string | |
phoneNumber | string |
PrimitiveUserAccountResponse
| Field | Type | Description |
|---|---|---|
id | string (uuid) | |
title | string | |
firstName | string | |
lastName | string | |
email | string | |
phoneNumber | string | |
accountStatus | enum UserAccountStatus | One of: Active, Suspended. |
acceptedTerms | boolean | |
isVerified | boolean | |
dateVerified | string (date-time) | |
address | AddressResponse | |
driver | DriverResponse | |
roles | RoleResponse[] | |
userBusinesses | UserBusinessResponse[] |
RoleResponse
| Field | Type | Description |
|---|---|---|
id | string (uuid) | |
title | string | |
description | string | |
roleType | enum RoleType | One of: Default, Remote, Custom. |
scope | enum RoleScope | One of: Branch, Franchise. |
isSystem | boolean | |
permissions | object | |
peopleCount | integer (int32) |
UpdateAddressRequest
| Field | Type | Description |
|---|---|---|
id | string (uuid) | |
placeId | string (string) | Limits: maximum 100 characters. |
name | string (string) | Limits: maximum 50 characters. |
website | string (uri) | Limits: maximum 100 characters. |
fullAddress | string | Limits: maximum 500 characters. |
street | string (string) | Limits: maximum 80 characters. |
suburb | string (string) | Limits: maximum 80 characters. |
city | string | Limits: maximum 80 characters. |
country | string | Limits: maximum 80 characters. |
postcode | string (postal-code) | Limits: maximum 15 characters. |
unit | string | Limits: maximum 10 characters. |
number | string (postal-code) | Limits: maximum 20 characters. |
province | string (string) | Limits: maximum 80 characters. |
latitude | number (double) | Limits: minimum -90, maximum 90. |
longitude | number (double) | Limits: minimum -180, maximum 180. |
UserBusinessResponse
| Field | Type | Description |
|---|---|---|
businessId | string (uuid) | |
displayName | string | |
isDefault | boolean | |
currencyCode | enum CurrencyCode | One of: Invalid, Eur, Usd, Gbp, Zar, Zmw. |
countryCode | enum CountryCode | One of: Invalid, Global, FallbackZa, Be, De, Lu, Nl, Za, Zw, Gb, Us, Zm. |