Skip to main content
Admins are Users who have access to the Cadana Dashboard and can manage business settings, payroll, and worker records. They are distinct from Persons, which represent worker HR records. Use these endpoints to programmatically grant or revoke Dashboard access for team members — for example, adding a finance manager or removing someone who has left the company.

Prerequisites

1

API key from Dashboard

Get your API key from the Cadana Dashboard. See Authentication for details.
2

Business set up

You need an active business. Platform integrators should include the X-MultiTenantKey header with the business’s tenant key — see Multi-Tenant Setup.

Add an Admin

Add a new admin to your business with POST /v1/users/admins. Provide the admin’s name and email address.
bash
curl -X POST 'https://api.cadanapay.com/v1/users/admins' \
  -H 'Authorization: Bearer YOUR_API_KEY'
Response:
{
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
By default, the new admin receives a welcome email with a sign-up link to set their password and access the Dashboard.
To skip the welcome email (for example, if you handle onboarding separately), set suppressWelcomeEmail to true in the request body.

Assign a Custom Role

If your business has custom roles configured, pass the roleId to restrict what the admin can access. See Custom Roles below to list available roles.
bash
curl -X POST 'https://api.cadanapay.com/v1/users/admins' \
  -H 'Authorization: Bearer YOUR_API_KEY'

Remove an Admin

Remove an admin from your business with DELETE /v1/users/admins/{userId}. Pass the admin’s user ID (returned when you added them).
bash
curl -X DELETE 'https://api.cadanapay.com/v1/users/admins/a1b2c3d4-e5f6-7890-abcd-ef1234567890' \
  -H 'Authorization: Bearer YOUR_API_KEY'
Returns 204 on success, 404 if the user is not found.
This action is immediate and cannot be undone. The admin loses Dashboard access as soon as the request completes. To restore access, add them again with a new POST /v1/users/admins request.

Custom Roles

Custom roles let you control what each admin can do in the Dashboard. Use GET /v1/permissions/roles to list the roles available for your business.
bash
curl -X GET 'https://api.cadanapay.com/v1/permissions/roles' \
  -H 'Authorization: Bearer YOUR_API_KEY'
Response:
{
  "data": [
    {
      "id": "f7e6d5c4-b3a2-1098-fedc-ba9876543210",
      "name": "Finance Manager",
      "description": "This is the role for a finance manager",
      "operations": [
        {
          "resource": "payroll",
          "description": "Operations related to payroll management",
          "permissions": ["read", "write"]
        }
      ]
    }
  ]
}
Custom roles are created in the Dashboard under Settings > Permissions > Add new role. Once created, they appear in this endpoint and can be assigned to admins via roleId.
Pass a role’s id as the roleId field when adding an admin to assign them that role. If no roleId is provided, the admin gets full access.

Next Steps