Administrar atributos¶
Un atributo, como el departamento o la oficina de un miembro, es un dato que las reglas pueden leer. Esta página muestra cómo defines un atributo, qué valores puede tener y cómo das un valor a miembros y grupos. Qué son los atributos está en Roles y acceso.
Definir, modificar y eliminar atributos puede hacerlo org-admin. Dar un valor puede hacerlo quien
puede modificar al miembro o al grupo, como people-admin, si tiene ese valor él mismo; org-admin
puede dar cualquier valor. Los atributos aún no tienen pantalla en OS: los administras mediante la
API. Los ejemplos usan $OS, $TOKEN y $ORG como en Administrar grupos.
Definir un atributo¶
curl -s -X POST "$OS/api/v1/organisations/$ORG/attributes" \
-H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
-d '{"name": "department", "allowed_values": ["sales", "finance"], "multiple": true}'
OS responde 201:
{"id": "atd_...", "name": "department", "allowed_values": ["sales", "finance"],
"multiple": true, "version": 1, "allowed_actions": ["see", "use", "write", "delete"]}
name: letras, cifras y_ . : -, como máximo 64 caracteres.role,group,subject,os_toolbox,os_offered,os_element,os_audience,os_assistant,os_element_editor,os_project,os_project_chats,os_project_files,os_visitor,os_desk,os_consultant,os_editor_scopeyos_kblos lee OS por sí mismo y no puedes definirlos.allowed_values: los valores que puede tener el atributo. Si lo omites, cualquier valor es válido. Con una lista fija, OS rechaza también una regla que nombre otro valor, para que una errata no se quede sin efecto en silencio.multiple: si un miembro o grupo puede tener más de un valor. Por defecto, uno.
Una organización define como máximo 16 atributos: los 32 que puede llevar un miembro, menos role,
group, os_toolbox, os_offered, os_element, os_audience, os_assistant, os_element_editor, os_project, os_project_chats, os_project_files, os_visitor, os_desk, os_consultant, os_editor_scope y os_kb, que pone OS por sí mismo. Además, OS cuenta en conjunto cuántos atributos
y etiquetas usan las reglas de tu organización y de cada organización de debajo: como máximo 32. OS
rechaza con 409 un atributo nuevo que llevara a una organización por encima de eso.
Cambiar los valores permitidos¶
PUT .../attributes/department sustituye allowed_values y multiple enteros, con la versión que
leíste en If-Match. OS rechaza con 409 si el cambio rompiera algo:
- un miembro o grupo tiene un valor que ya no está en la lista: quítalo antes;
- una regla nombra un valor que ya no está en la lista, en tu propia organización o en una de debajo: modifica antes esa regla;
- desactivas
multiplemientras alguien tiene más de un valor: quita antes esos valores.
Dar un valor¶
curl -s -X POST "$OS/api/v1/organisations/$ORG/attribute-values" \
-H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
-d '{"attribute": "department", "value": "sales", "member_id": "mem_..."}'
Indica member_id para un miembro o group_id para un grupo; un valor de un grupo lo tiene todo
miembro del grupo. La respuesta tiene un id como mat_... (en un miembro) o gat_... (en un grupo).
GET .../attribute-values?member_id=mem_...o?group_id=grp_...muestra los valores que un miembro o grupo tiene por sí mismo, no los que recibe mediante grupos.DELETE .../attribute-values/mat_...quita un valor.
Un miembro tiene como máximo 32 valores por atributo, cada uno de como máximo 256 caracteres.
Eliminar un atributo¶
DELETE .../attributes/department elimina el atributo y todos sus valores, en miembros, en grupos y
en invitaciones pendientes. Si una regla aún lee el atributo, en tu propia organización o en una de
debajo que no lo define ella misma, OS rechaza con 409; modifica antes esa regla.
Si OS rechaza¶
| Respuesta | Significado | Qué haces |
|---|---|---|
403 |
No puedes hacer esto, o das un valor que tú mismo no tienes; el mensaje indica entonces el atributo ("a value of department"). | Pide a un administrador. |
404 |
El atributo, el valor, el miembro o el grupo no existe, o no puedes verlo. | Comprueba el nombre o el id. |
409 |
El nombre ya está en uso, ya hay 16 atributos, el atributo se modificó desde que lo leíste, el valor ya se dio allí, el atributo solo admite un valor y ya existe, un miembro superaría el límite de 32, tu organización o una de debajo usaría más de 32 atributos y etiquetas, o un cambio o una eliminación rompería un valor o una regla. | Lee el mensaje y limpia antes lo que menciona. |
422 |
La solicitud no es correcta: un nombre que usa OS por sí mismo (role, group, subject, os_toolbox, os_offered, os_element, os_audience, os_assistant, os_element_editor, os_project, os_project_chats, os_project_files, os_visitor, os_desk, os_consultant, os_editor_scope, os_kb), un atributo desconocido, un valor que la lista no permite, o tanto member_id como group_id (o ninguno de los dos). |
Lee detail o errors en la respuesta. |