Изменение участия организации в федерации

Позволяет организации принять или отклонить приглашение в федерацию, выйти из федерации или скрыть своих сотрудников от участников федерации. В теле запроса передайте status или blacklist_scope. В режиме только для чтения доступно изменение только скрытия сотрудников.

Если из федерации выходит последний принятый участник, федерация удаляется автоматически.

Требуется разрешение directory:write_federations — управление федерациями.

Отправить запрос может администратор организации или сотрудник с ролью Менеджер федераций.

Request

PATCH

https://cloud-api.yandex.net/v1/directory/organizations/{organization_id}/federations/{federation_id}

Path parameters

Name

Description

federation_id

Type: string

Идентификатор федерации (UUID).

Pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$

Example: ``

organization_id

Type: integer

Идентификатор организации-участника.

Min value: 1

Body

application/json
{
  "status": "example"
}

Name

Description

blacklist_scope

Type: string

Какие сотрудники организации скрыты от участников федерации:

  • none — сотрудники не скрыты;
  • group — скрыта группа сотрудников;
  • organization — скрыты все сотрудники организации.

Поле можно изменить отдельно от статуса.

Pattern: ^(none|group|organization)$

Example: example

status

Type: string

Действие организации — accepted (принять приглашение), rejected (отклонить приглашение) или terminated (выйти из федерации).

Pattern: ^(accepted|rejected|terminated)$

Example: example

Any of 2 types
  • Type: object

    status

    Type: string

    Действие организации — accepted (принять приглашение), rejected (отклонить приглашение) или terminated (выйти из федерации).

    Pattern: ^(accepted|rejected|terminated)$

    Example: example

    Example
    {
      "status": "example"
    }
    
  • Type: object

    blacklist_scope

    Type: string

    Какие сотрудники организации скрыты от участников федерации:

    • none — сотрудники не скрыты;
    • group — скрыта группа сотрудников;
    • organization — скрыты все сотрудники организации.

    Поле можно изменить отдельно от статуса.

    Pattern: ^(none|group|organization)$

    Example: example

    Example
    {
      "blacklist_scope": "example"
    }
    

Responses

200 OK

Участие изменено. Ответ содержит публичные поля участия и скрытия сотрудников.

Body

application/json
{
  "membership_id": "example",
  "federation_id": "example",
  "member_organization_id": 0,
  "initiator_organization_id": 0,
  "status": "requested",
  "created_at": "example",
  "updated_at": "example",
  "blacklist_scope": "none",
  "blacklist_group_id": 0
}

Name

Description

created_at

Type: string

Дата и время создания участия.

Example: example

federation_id

Type: string

Идентификатор федерации (UUID).

Example: example

initiator_organization_id

Type: integer

Идентификатор организации-инициатора приглашения.

member_organization_id

Type: integer

Идентификатор организации-участника.

membership_id

Type: string

Идентификатор участия (UUID).

Example: example

status

Type: string

Статус участия организации в федерации.

Enum: requested, accepted, rejected, terminated

updated_at

Type: string

Дата и время последнего изменения участия.

Example: example

blacklist_group_id

Type: integer

Идентификатор группы скрытых сотрудников. Присутствует в ответе, если скрыта группа сотрудников (group).

blacklist_scope

Type: string

Какие сотрудники организации скрыты от участников федерации:

  • none — сотрудники не скрыты;
  • group — скрыта группа сотрудников;
  • organization — скрыты все сотрудники организации.

Enum: none, group, organization

400 Bad Request

Некорректный запрос.

Body

application/json
{
  "error": "bad_request",
  "description": "Bad request",
  "message": "Bad request",
  "details": {}
}

Name

Description

description

Type: string

Техническое описание ошибки.

Example: Bad request

error

Type: string

Код ошибки

Example: bad_request

message

Type: string

Сообщение об ошибке.

Example: Bad request

details

Type: object

Дополнительные детали ошибки

Example
{}

401 Unauthorized

Пользователь не авторизован.

Body

application/json
{
  "error": "unauthorized",
  "description": "Unauthorized",
  "message": "Unauthorized",
  "details": {}
}

Name

Description

description

Type: string

Техническое описание ошибки.

Example: Unauthorized

error

Type: string

Код ошибки

Example: unauthorized

message

Type: string

Сообщение об ошибке.

Example: Unauthorized

details

Type: object

Дополнительные детали ошибки

Example
{}

403 Forbidden

Доступ к ресурсу запрещен. У пользователя или приложения недостаточно прав.

Body

application/json
{
  "error": "forbidden",
  "description": "Forbidden",
  "message": "Forbidden",
  "details": {}
}

Name

Description

description

Type: string

Техническое описание ошибки.

Example: Forbidden

error

Type: string

Код ошибки

Example: forbidden

message

Type: string

Сообщение об ошибке.

Example: Forbidden

details

Type: object

Дополнительные детали ошибки

Example
{}

404 Not Found

Запрашиваемый ресурс не найден.

Body

application/json
{
  "error": "not_found",
  "description": "Not found",
  "message": "Not found",
  "details": {}
}

Name

Description

description

Type: string

Техническое описание ошибки.

Example: Not found

error

Type: string

Код ошибки

Example: not_found

message

Type: string

Сообщение об ошибке.

Example: Not found

details

Type: object

Дополнительные детали ошибки

Example
{}

409 Conflict

Возможные ошибки:

  • Federation membership already exists
  • Federation membership already exists

Body

application/json
{
  "error": "conflict",
  "description": "Conflict",
  "message": "Conflict",
  "details": {}
}

Name

Description

description

Type: string

Техническое описание ошибки.

Example: Conflict

error

Type: string

Код ошибки

Example: conflict

message

Type: string

Сообщение об ошибке.

Example: Conflict

details

Type: object

Дополнительные детали ошибки

Example
{}

422 Unprocessable Entity

Возможные ошибки:

  • Feature unavailable
  • Invalid data

Body

application/json
{
  "error": "feature_unavailable",
  "description": "Feature unavailable",
  "message": "Feature unavailable",
  "details": {}
}

Name

Description

description

Type: string

Техническое описание ошибки.

Example: Feature unavailable

error

Type: string

Код ошибки

Example: feature_unavailable

message

Type: string

Сообщение об ошибке.

Example: Feature unavailable

details

Type: object

Дополнительные детали ошибки

Example
{}