Base URL
https://app.dmu.email/api/v1
Authentication
Bearer dmk_… API key
Rate limit
120 requests a minute per key

List teams

GET/teams

Lists your organisation’s teams, with their people and mailboxes.

Needs the permissionteams:list

Anyone may list teams, as in DMU Mail. A team’s mailboxes never names a mailbox the key’s owner can’t open, so asking about teams doesn’t reveal an address.

Returns

A list of teams, each with:

idstring
The team.
namestring
Its name.
descriptionstring or null
What it’s for, if anyone wrote it down.
memberslist
Its people, each with userId, name, email and suspended. Someone suspended keeps their place; only an administrator’s key lists them.
mailboxeslist
The shared mailboxes it’s ticked on, each with id, email, name and label. Only those the key’s owner can open are listed.

Errors

401invalid_key
The key is wrong, expired or revoked. With no Authorization header at all, the code is missing_credentials.
403missing_scope
The key doesn’t have teams:list. The X-Required-Scope header names what’s missing.
429rate_limited
More than 120 requests a minute from this key. Wait for Retry-After seconds.
curl https://app.dmu.email/api/v1/teams \
  -H "Authorization: Bearer dmk_7f3a9c2e1b4d_Xq8v…"

Response

200 OK

{
  "data": [
    {
      "id": "6e1b7c40",
      "name": "Customer Service",
      "description": "Front desk and returns",
      "members": [
        {
          "userId": "284113279415566337",
          "name": "Maria Kalogirou",
          "email": "maria@aegeanfreight.gr",
          "suspended": false
        }
      ],
      "mailboxes": [
        {
          "id": "9e53e6ba",
          "email": "info@aegeanfreight.gr",
          "name": "Aegean Freight",
          "label": null
        }
      ]
    }
  ]
}

Every response wraps its result in data. A page of threads adds nextCursor, which is null on the last page.