IM
ES
Inicio de documentación
Menú
Guías

Contexto de cuenta y miembros

seleccione el alcance de la cuenta e inspeccione la membresía de la cuenta antes de las operaciones de credenciales o proveedores.

inbox-manager client-flow

Contexto de cuenta y miembros

Propósito: seleccionar el alcance de la cuenta e inspeccionar la membresía de la cuenta antes de las operaciones de credenciales o proveedores.

Flujo de interfaz de usuario

  1. La interfaz de usuario llama a GET /api/accounts para enumerar las cuentas accesibles.
  2. El usuario selecciona la cuenta activa.
  3. La interfaz de usuario conserva el contexto de la cuenta a través de POST /api/account-views/switch.
  4. La interfaz de usuario carga GET /api/accounts/:account_id.
  5. La interfaz de usuario carga GET /api/accounts/:account_id/members.
  6. El propietario puede crear una cuenta infantil con POST /api/accounts.
  7. El propietario puede actualizar los valores de visualización de la cuenta con PATCH /api/accounts/:account_id.
  8. El propietario puede agregar o eliminar miembros con /api/accounts/:account_id/members*.
  9. La interfaz de usuario almacena account_id en el estado de la ruta y antepone todas las llamadas posteriores con alcance de cuenta.

Flujo de la biblioteca del cliente

const accounts = await api.accounts.list();
const active = selectAccount(accounts.data);
const account = await api.accounts.get(active.id);
const members = await api.members.list(active.id);

Flujo HTTP/curl

API_BASE_URL="https://api.inbox-manager.com"

curl -sS "${API_BASE_URL}/api/accounts" \
  -H "authorization: Bearer ${BEARER_TOKEN}"

curl -sS "${API_BASE_URL}/api/accounts/${ACCOUNT_ID}" \
  -H "authorization: Bearer ${BEARER_TOKEN}"

curl -sS -X POST "${API_BASE_URL}/api/account-views/switch" \
  -H "authorization: Bearer ${BEARER_TOKEN}" \
  -H "content-type: application/json" \
  --data "{\"account_id\":\"${ACCOUNT_ID}\"}"

curl -sS "${API_BASE_URL}/api/accounts/${ACCOUNT_ID}/members" \
  -H "authorization: Bearer ${BEARER_TOKEN}"

curl -sS -X POST "${API_BASE_URL}/api/accounts/${ACCOUNT_ID}/members/search" \
  -H "authorization: Bearer ${BEARER_TOKEN}" \
  -H "content-type: application/json" \
  --data '{"query":"owner","limit":20,"offset":0}'

curl -sS -X POST "${API_BASE_URL}/api/accounts" \
  -H "authorization: Bearer ${BEARER_TOKEN}" \
  -H "content-type: application/json" \
  --data '{"name":"Operations"}'

curl -sS -X PATCH "${API_BASE_URL}/api/accounts/${ACCOUNT_ID}" \
  -H "authorization: Bearer ${BEARER_TOKEN}" \
  -H "content-type: application/json" \
  --data '{"name":"Operations Team"}'

curl -sS -X POST "${API_BASE_URL}/api/accounts/${ACCOUNT_ID}/members" \
  -H "authorization: Bearer ${BEARER_TOKEN}" \
  -H "content-type: application/json" \
  --data '{"user_id":"uid_target","role":"member"}'

curl -sS -X PATCH "${API_BASE_URL}/api/accounts/${ACCOUNT_ID}/members/${MEMBER_ID}" \
  -H "authorization: Bearer ${BEARER_TOKEN}" \
  -H "content-type: application/json" \
  --data '{"role":"owner"}'

curl -sS -X DELETE "${API_BASE_URL}/api/accounts/${ACCOUNT_ID}/members/${MEMBER_ID}" \
  -H "authorization: Bearer ${BEARER_TOKEN}"

Notas

  • La discrepancia en la ruta de la cuenta devuelve 403.
  • Los endpoints de membresía tienen un alcance de cuenta y están controlados por roles.
  • Los endpoints de escritura de cuenta/miembro requieren la función owner.
  • La creación de miembros admite member y viewer; La promoción de propiedad utiliza parche.
  • La degradación del propietario y la eliminación de la membresía propia están bloqueadas.
  • La degradación o eliminación del último propietario devuelve 409.