grafana/docs/sources/developers/http_api/external_group_sync.md
Christopher Moyer 8c84d62e3d
Docs: combines all SAML topics into one topic (#49443)
* combines all SAML topics

* resolves merge conflicts

* makes prettier
2022-05-27 07:42:51 -05:00

3.0 KiB

aliases description keywords title
/docs/grafana/latest/developers/http_api/external_group_sync/
/docs/grafana/latest/http_api/external_group_sync/
Grafana External Group Sync HTTP API
grafana
http
documentation
api
team
teams
group
member
enterprise
External Group Sync HTTP API

External Group Synchronization API

External Group Synchronization is only available in Grafana Enterprise. Read more about [Grafana Enterprise]({{< relref "../../enterprise/" >}}).

If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "../../enterprise/access-control/custom-role-actions-scopes/" >}}) for more information.

Get External Groups

GET /api/teams/:teamId/groups

Required permissions

See note in the [introduction]({{< ref "#external-group-synchronization-api" >}}) for an explanation.

Action Scope
teams.permissions:read teams:*

Example Request:

GET /api/teams/1/groups HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Basic YWRtaW46YWRtaW4=

Example Response:

HTTP/1.1 200
Content-Type: application/json

[
  {
    "orgId": 1,
    "teamId": 1,
    "groupId": "cn=editors,ou=groups,dc=grafana,dc=org"
  }
]

Status Codes:

  • 200 - Ok
  • 401 - Unauthorized
  • 403 - Permission denied

Add External Group

POST /api/teams/:teamId/groups

Required permissions

See note in the [introduction]({{< ref "#external-group-synchronization-api" >}}) for an explanation.

Action Scope
teams.permissions:write teams:*

Example Request:

POST /api/teams/1/members HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Basic YWRtaW46YWRtaW4=

{
  "groupId": "cn=editors,ou=groups,dc=grafana,dc=org"
}

Example Response:

HTTP/1.1 200
Content-Type: application/json

{"message":"Group added to Team"}

Status Codes:

  • 200 - Ok
  • 400 - Group is already added to this team
  • 401 - Unauthorized
  • 403 - Permission denied
  • 404 - Team not found

Remove External Group

DELETE /api/teams/:teamId/groups/:groupId

Required permissions

See note in the [introduction]({{< ref "#external-group-synchronization-api" >}}) for an explanation.

Action Scope
teams.permissions:write teams:*

Example Request:

DELETE /api/teams/1/groups/cn=editors,ou=groups,dc=grafana,dc=org HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Basic YWRtaW46YWRtaW4=

Example Response:

HTTP/1.1 200
Content-Type: application/json

{"message":"Team Group removed"}

Status Codes:

  • 200 - Ok
  • 401 - Unauthorized
  • 403 - Permission denied
  • 404 - Team not found/Group not found