Miridia
Portal
Administration

Users

The users operations of the Core API.

Base URL: https://api.miridia.io. Read Authentication and Conventions before you call these operations.

MethodPathOperation
GET/api/user/my-accountMy account
GET/api/meMy account
PUT/api/userUpdate 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.

Request
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.

Request
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.

FieldTypeRequiredDescription
titlestringNoLimits: maximum 10 characters.
firstNamestringYesLimits: maximum 100 characters.
lastNamestringYesLimits: maximum 100 characters.
emailstring (email)YesLimits: maximum 255 characters.
phoneNumberstring (tel)NoLimits: maximum 20 characters.
accountStatusenum UserAccountStatusNoOne of: Active, Suspended.
acceptedTermsbooleanNo
addressUpdateAddressRequestNo
driverDriverRequestNo
rolesenum UserRoles[]NoOne of: Sudo, Administrator, Manager, Operations, Driver, Accountant, General, Support, Unassigned.

Response

200. Returns a SingleResult envelope. The data field is boolean.

Request
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"
  ]
}'
Response
{
  "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
FieldTypeDescription
idstring (uuid)
placeIdstring
namestring
websitestring
fullAddressstring
streetstring
suburbstring
citystring
countrystring
postcodestring
unitstring
numberstring
provincestring
latitudenumber (double)
longitudenumber (double)
DriverRequest
FieldTypeDescription
idstring (uuid)
idNumberstring
licenseNumberstring
licenseTypeIdinteger (int32)
licenseRenewalDatestring (date-time)
licenseIssuedDatestring (date-time)
DriverResponse
FieldTypeDescription
idstring (uuid)
idNumberstring
licenseNumberstring
licenseTypeIdinteger (int32)
licenseRenewalDatestring (date-time)
licenseIssuedDatestring (date-time)
userDriverUserResponse
DriverUserResponse
FieldTypeDescription
idstring (uuid)
firstNamestring
lastNamestring
emailstring
phoneNumberstring
PrimitiveUserAccountResponse
FieldTypeDescription
idstring (uuid)
titlestring
firstNamestring
lastNamestring
emailstring
phoneNumberstring
accountStatusenum UserAccountStatusOne of: Active, Suspended.
acceptedTermsboolean
isVerifiedboolean
dateVerifiedstring (date-time)
addressAddressResponse
driverDriverResponse
rolesRoleResponse[]
userBusinessesUserBusinessResponse[]
RoleResponse
FieldTypeDescription
idstring (uuid)
titlestring
descriptionstring
roleTypeenum RoleTypeOne of: Default, Remote, Custom.
scopeenum RoleScopeOne of: Branch, Franchise.
isSystemboolean
permissionsobject
peopleCountinteger (int32)
UpdateAddressRequest
FieldTypeDescription
idstring (uuid)
placeIdstring (string)Limits: maximum 100 characters.
namestring (string)Limits: maximum 50 characters.
websitestring (uri)Limits: maximum 100 characters.
fullAddressstringLimits: maximum 500 characters.
streetstring (string)Limits: maximum 80 characters.
suburbstring (string)Limits: maximum 80 characters.
citystringLimits: maximum 80 characters.
countrystringLimits: maximum 80 characters.
postcodestring (postal-code)Limits: maximum 15 characters.
unitstringLimits: maximum 10 characters.
numberstring (postal-code)Limits: maximum 20 characters.
provincestring (string)Limits: maximum 80 characters.
latitudenumber (double)Limits: minimum -90, maximum 90.
longitudenumber (double)Limits: minimum -180, maximum 180.
UserBusinessResponse
FieldTypeDescription
businessIdstring (uuid)
displayNamestring
isDefaultboolean
currencyCodeenum CurrencyCodeOne of: Invalid, Eur, Usd, Gbp, Zar, Zmw.
countryCodeenum CountryCodeOne of: Invalid, Global, FallbackZa, Be, De, Lu, Nl, Za, Zw, Gb, Us, Zm.