Повышение привилегий

Moses SkodaИнженер1 мин чтения

При этой ошибке API возвращает 403 Forbidden. Значение type — https://lingo.dev/docs/api/errors/privilege-escalation. Общая структура ошибок описана в разделе Ошибки и коды состояния.

Роль не может давать разрешения, которых нет у вашей роли: org:manage_team. Сначала запросите эти разрешения для себя или не включайте их в роль.

Поля#

Кроме стандартных полей type, status, title и detail, в теле ответа есть следующие поля. На их основе формируется текст detail, поэтому клиент может показать вместо него свой текст.

ПолеТип
permissions("org:manage_team" | "org:manage_billing" | "org:manage_settings" | "org:manage_api_keys" | "org:manage_integrations" | "org:delete" | "org:view_audit_logs" | "engine:read" | "engine:translate" | "engine:create" | "engine:edit" | "engine:delete" | "engine:review_translations" | "org:manage_reviews" | "org:glossary:read" | "org:glossary:edit" | "org:brandvoice:read" | "org:brandvoice:edit" | "org:ruleset:read" | "org:ruleset:edit" | "org:suggestion:read" | "org:suggestion:edit")[]

Пример#

json
{
  "detail": "A role cannot grant permissions your own role does not carry: org:manage_team. Ask for them yourself first, or leave them out of the role.",
  "permissions": [
    "org:manage_team"
  ],
  "type": "https://lingo.dev/docs/api/errors/privilege-escalation",
  "status": 403,
  "title": "Privilege escalation"
}

Эндпоинты, возвращающие эту ошибку#

  • PATCH /v2/invites/{id}
  • PATCH /v2/organizations/{orgId}/members/{userId}
  • PATCH /v2/roles/{id}
  • PATCH /v2/service-api-keys/{id}
  • POST /v2/organizations/{orgId}/invites
  • POST /v2/organizations/{orgId}/roles
  • POST /v2/organizations/{orgId}/service-api-keys
  • POST /v2/organizations/{orgId}/service-api-keys/scim