Ir a la documentación
API

Recuperar un miembro

Una persona, su rol y sus direcciones, por id de cuenta.

GETapi.openemail.uk/members/{userId}

Ejecuta la llamada real contra tu espacio de trabajo, con tu propia clave.

GET /members/{userId}

Una persona, su rol y sus direcciones, por id de cuenta.

Ejemplo

Requiere members:read. Por ID DE USUARIO: el userId de la lista, no su dirección de correo.

curl
curl "$OE/members/nQ8vBz1aRd4tYwKx7fQ2mN8vBz1aRd4t" -H "$AUTH"
Respuesta
{  "object": "member",  "userId": "nQ8vBz1aRd4tYwKx7fQ2mN8vBz1aRd4t",  "email": "[email protected]",  "name": "Sam Okonjo",  "image": null,  "role": {    "id": "role_2b81de079c1f0a4b7e05d386",    "name": "Support",    "builtin": null  },  "implied": false,  "permissions": [    "emails:send",    "emails:read",    "threads:read",    "threads:write",    "labels:read",    "labels:write",    "contacts:read"  ],  "addresses": [    {      "addressId": "2b81de07-9c1f-4a4b-8e05-d3862c1f0a44",      "address": "[email protected]",      "access": "member"    }  ],  "createdAt": "2026-08-12T14:20:00.000Z"}

Aquí no hay búsqueda por correo electrónico. POST /members es la única llamada que acepta uno, porque es la única cuyo emisor realmente aún no tiene un id de usuario.

Un id de usuario que no pertenece a este espacio de trabajo es un 404 sin más. Es el único caso de este recurso que es, sin ambigüedad, «no existe tal recurso». La misma condición provocada por una escritura que no se pudo releer se traduce en un 422, que allí es lo correcto y aquí no.

Se lee de la lista completa de miembros en lugar de mediante una consulta de una sola fila, y es deliberado: un miembro es la UNIÓN de una fila de rol y un conjunto de concesiones de dirección, y cualquiera de las dos puede existir sin la otra; esa unión se calcula en un único lugar. Una consulta de una sola fila sería una segunda implementación de ella, y la población que se dejaría fuera en silencio son los titulares de concesiones heredadas, que hoy son la mayor parte de la tabla.