팀 API - Amazon Managed Grafana

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

팀 API

팀 API를 사용하여 Amazon 관리형 Grafana 워크스페이스에서 팀과 함께 작업하세요. 이 API에서 수행하는 모든 작업을 수행하려면 관리자 역할이 필요합니다.

참고

아마존 관리형 그라파나 워크스페이스에서 Grafana API를 사용하려면 유효한 Grafana API 토큰이 있어야 합니다. API 요청의 필드에 이를 포함시키세요. Authorization API 호출을 인증하기 위한 토큰을 생성하는 방법에 대한 자세한 내용은 을 참조하십시오토큰으로 인증.

페이지 매김을 통한 팀 검색

GET /api/teams/search?perpage=50&page=1&query=myteam

또는

GET /api/teams/search?name=myteam

요청 예제

GET /api/teams/search?perpage=10&page=1&query=myteam HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

쿼리 매개변수 사용

매개변수의 기본값은 1000이고 perpage page 매개변수의 기본값은 1입니다.

응답의 totalCount 필드는 팀 목록의 페이지 매김에 사용할 수 있습니다. 예를 들어, totalCount 가 100팀이고 perpage 매개변수가 10으로 설정된 경우 팀은 10페이지입니다.

query 매개 변수는 선택 사항이며 쿼리 값이 name 필드에 포함된 결과를 반환합니다. 공백이 있는 쿼리 값은 URL로 인코딩해야 합니다. 예를 들어 query=my%20team입니다.

name 파라미터 사용

name파라미터가 name 필드와 일치하면 파라미터는 단일 팀을 반환합니다.

응답의 예

HTTP/1.1 200 Content-Type: application/json { "totalCount": 1, "teams": [ { "id": 1, "orgId": 1, "name": "MyTestTeam", "email": "", "avatarUrl": "\/avatar\/3f49c15916554246daa714b9bd0ee39", "memberCount": 1 } ], "page": 1, "perPage": 1000

상태 코드:

  • 200 — 생성됨

  • 401 — 승인되지 않았습니다

  • 403 — 권한이 거부되었습니다.

  • 404 — 팀을 찾을 수 없음 (이름으로 검색하는 경우)

아이디로 팀 가져오기

GET /api/teams/:id

요청 예제

GET /api/teams/1 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

응답의 예

HHTTP/1.1 200 Content-Type: application/json { "id": 1, "orgId": 1, "name": "MyTestTeam", "email": "", "created": "2017-12-15T10:40:45+01:00", "updated": "2017-12-15T10:40:45+01:00" }

팀 추가

name 구성원은 고유해야 합니다. name필드는 필수이고 emailorgId 필드는 선택사항입니다.

POST /api/teams

요청 예제

POST /api/teams HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "name": "MyTestTeam", "email": "email@test.com", "orgId": 2 }

응답의 예

HTTP/1.1 200 Content-Type: application/json {"message":"Team created","teamId":2}

상태 코드:

  • 200 — 생성됨

  • 401 — 승인되지 않았습니다

  • 403 — 권한이 거부되었습니다.

  • 409 — 팀 이름이 이미 있습니다.

팀 업데이트

PUT /api/teams/:id

nameemail 필드만 업데이트할 수 있습니다.

요청 예제

PUT /api/teams/2 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "name": "MyTestTeam", "email": "email@test.com" }

응답의 예

HTTP/1.1 200 Content-Type: application/json {"message":"Team updated"}

상태 코드:

  • 200 — 생성됨

  • 401 — 승인되지 않았습니다

  • 403 — 권한이 거부되었습니다.

  • 404 — 팀을 찾을 수 없음

  • 409 — 팀 이름이 이미 있습니다.

아이디로 팀 삭제

DELETE /api/teams/:id

요청 예제

DELETE /api/teams/2 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

응답의 예

HTTP/1.1 200 Content-Type: application/json {"message":"Team deleted"}

상태 코드:

  • 200 — 생성됨

  • 401 — 승인되지 않았습니다

  • 403 — 권한이 거부되었습니다.

  • 404 — 팀을 찾을 수 없음

팀원 가져오기

GET /api/teams/:teamId/members

요청 예제

GET /api/teams/1/members HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

응답의 예

HTTP/1.1 200 Content-Type: application/json [ { "orgId": 1, "teamId": 1, "userId": 3, "email": "user1@email.com", "login": "user1", "avatarUrl": "\/avatar\/1b3c32f6386b0185c40d359cdc733a7" }, { "orgId": 1, "teamId": 1, "userId": 2, "email": "user2@email.com", "login": "user2", "avatarUrl": "\/avatar\/cad3c68da76e45d10269e8ef02f8e7" } ]

상태 코드:

  • 200 — 생성됨

  • 401 — 승인되지 않았습니다

  • 403 — 권한이 거부되었습니다.

팀원 추가

POST /api/teams/:teamId/members

요청 예제

POST /api/teams/1/members HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "userId": 2 }

응답의 예

HTTP/1.1 200 Content-Type: application/json {"message":"Member added to Team"}

상태 코드:

  • 200 — 생성됨

  • 400 - 사용자가 이미 팀에 속해 있습니다.

  • 401 — 승인되지 않음

  • 403 — 권한이 거부되었습니다.

  • 404 — 팀을 찾을 수 없음

팀에서 멤버 삭제

DELETE /api/teams/:teamId/members/:userId

요청 예제

DELETE /api/teams/2/members/3 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

응답의 예

HTTP/1.1 200 Content-Type: application/json {"message":"Team Member removed"}

상태 코드:

  • 200 — 생성됨

  • 401 — 승인되지 않았습니다

  • 403 — 권한이 거부되었습니다.

  • 404 — 팀을 찾을 수 없음/팀원을 찾을 수 없음

팀 환경설정 가져오기

GET /api/teams/:teamId/preferences

요청 예제

GET /api/teams/2/preferences HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

응답의 예

HTTP/1.1 200 Content-Type: application/json { "theme": "", "homeDashboardId": 0, "timezone": "" }

팀 환경설정 업데이트

PUT /api/teams/:teamId/preferences

요청 예제

PUT /api/teams/2/preferences HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "theme": "dark", "homeDashboardId": 39, "timezone": "utc" }

JSON 본문 스키마:

  • 테마 — 기본 테마를 사용하려면 lightdark, 또는 빈 문자열을 지정합니다.

  • homeDashboardId:id 대시보드의 숫자. 기본값은 0입니다.

  • 시간대utcbrowser, 또는 빈 문자열을 지정하여 기본값을 사용합니다.

매개 변수를 생략하면 현재 값이 시스템 기본값으로 대체됩니다.

응답의 예

HTTP/1.1 200 Content-Type: text/plain; charset=utf-8 { "message":"Preferences updated" }