External API 변경사항 (9.10.0 버전)
이전 버전 OpenAPI Specification JSON 참고 문서 (9.9.5 기준)
삭제된 External API
Approval Rule API
Create
Update
추가된 External API
Workflow API (기존 Access Approval API 와 Approval API 를 대체합니다.)
[Access Request] Detail
[Access Request] Approve
[Access Request] Reject
[Export Request] Detail
[Export Request] Approve
[Export Request] Reject
[SQL Request] Detail
[SQL Request] Approve
[SQL Request] Reject
All Requests
Approval Rule API V2 (기존 Approval Rule API 를 대체합니다.)
List
Add approval rule
Remove approval rule
Detail
Edit approval rule
변경된 External API
Access Approval API
List of Access Approval
Approval Rule API
Detail
Approval API
List of Approval
Access Approval API - List of Access Approval
GET /api/external/access-approvals
Request 의 변경사항
Query Parameter 로 사용할 수 있는
status가 변경되었습니다.PARTIALLY_APPROVED가IN_PROGRESS로 대체되었고,NONE이 삭제되었습니다.before :
"NONE""PENDING""CANCELED""REJECTED""PARTIALLY_APPROVED""APPROVED""EXPIRED"after :
"PENDING""CANCELED""REJECTED""IN_PROGRESS""APPROVED""EXPIRED"
Response 변경사항
currentDegree가 삭제되었습니다.approvalStatus가 변경되었습니다.before :
"NONE""PENDING""CANCELED""REJECTED""PARTIALLY_APPROVED""APPROVED""EXPIRED"after :
"PENDING""CANCELED""REJECTED""IN_PROGRESS""APPROVED""EXPIRED"
updatedUser가 삭제되었습니다.lines의uuid가 삭제되었습니다.lines의degree가step으로 대체되었습니다.lines의approvedAt이actionAt으로 대체되었습니다.lines의status가 변경되었습니다.before :
"PENDING""REQUESTED""CANCELED""APPROVED""REJECTED""SQL_EXECUTED""SQL_CANCELED""SQL_SUCCEED""SQL_FAILED""CONFIRMED"after :
"NONE""PENDING""CANCELED""APPROVED""REJECTED""EXECUTED""UNREAD""CONFIRMED"
lines의type이 변경되었습니다.before :
"REPORTER""APPROVER""EXECUTOR""REFERRER""REVIEWER"after :
"APPROVER""EXECUTOR""REVIEWER"
connections의clusterGroupDescription이 삭제되었습니다.connections의databaseName이 삭제되었습니다.connections의schemaName이 삭제되었습니다.
Response 변경 전 예시
{
"list": [
{
"approvalStatus": "PENDING",
"connections": [
{
"clusterGroupDescription": "Cluster Group description",
"clusterGroupName": "Cluster Group Name",
"clusterGroupUuid": "63d2cc6d-dd83-4a31-a817-fc13f1fc57a3",
"clusterHost": "Cluster Host",
"clusterReplicationType": "`MASTER`, `SLAVE`, `SINGLE`",
"clusterUuid": "63d2cc6d-dd83-4a31-a817-fc13f1fc57a3",
"databaseName": "Database Name",
"roleName": "Role Name",
"roleUuid": "63d2cc6d-dd83-4a31-a817-fc13f1fc57a3",
"schemaName": "Schema Name",
"uuid": "63d2cc6d-dd83-4a31-a817-fc13f1fc57a3"
}
],
"createdAt": "2019-08-24T14:15:22Z",
"createdUser": "User Information",
"currentDegree": 1,
"description": "Approval Description",
"id": 0,
"lines": [
{
"approvedAt": "2019-08-24T14:15:22Z",
"comment": "comment",
"degree": 1,
"status": "APPROVED",
"type": "APPROVER",
"userDepartment": "string",
"userEmail": "string",
"userLoginId": "string",
"userName": "string",
"userType": "USER",
"userUuid": "string",
"uuid": "UUID"
}
],
"title": "Approval Title",
"type": "ACCESS",
"updatedAt": "2019-08-24T14:15:22Z",
"updatedUser": "User Information",
"uuid": "UUID"
}
],
"page": {
"currentPage": 0,
"pageSize": 0,
"totalElements": 0,
"totalPages": 0
}
}Response 변경 후 예시
{
"list": [
{
"approvalStatus": "PENDING",
"connections": [
{
"clusterGroupName": "Cluster Group Name",
"clusterGroupUuid": "63d2cc6d-dd83-4a31-a817-fc13f1fc57a3",
"clusterHost": "Cluster Host",
"clusterReplicationType": "`MASTER`, `SLAVE`, `SINGLE`",
"clusterUuid": "63d2cc6d-dd83-4a31-a817-fc13f1fc57a3",
"roleName": "Role Name",
"roleUuid": "63d2cc6d-dd83-4a31-a817-fc13f1fc57a3",
"uuid": "63d2cc6d-dd83-4a31-a817-fc13f1fc57a3"
}
],
"createdAt": "2019-08-24T14:15:22Z",
"createdUser": "User Information",
"description": "Approval Description",
"id": 0,
"lines": [
{
"actionAt": "2019-08-24T14:15:22Z",
"comment": "comment",
"status": "APPROVED",
"step": 1,
"type": "APPROVER",
"userDepartment": "string",
"userEmail": "string",
"userLoginId": "string",
"userName": "string",
"userType": "USER",
"userUuid": "string"
}
],
"title": "Approval Title",
"type": "ACCESS",
"updatedAt": "2019-08-24T14:15:22Z",
"uuid": "UUID"
}
],
"page": {
"currentPage": 0,
"pageSize": 0,
"totalElements": 0,
"totalPages": 0
}
}
Approval Rule API - Detail
GET /api/external/approval-rules/{uuid}
Response 변경사항
approvalCondition이 삭제되었습니다.executionCondition이 변경되었습니다.before :
"NONE""MANUAL""SELF""CONNECTION_OWNER""ANY"after :
"ADMIN_ONLY""ALL_USERS""FIXED""CONNECTION_OWNER"
reviewEnabled가 삭제되었습니다.urgentMode가 추가되었습니다.lines의degree가step으로 대체되었습니다.lines의type이 변경되었습니다.before :
"REPORTER""APPROVER""EXECUTOR""REFERRER""REVIEWER"after :
"APPROVER""EXECUTOR""REVIEWER"
lines의resourceType이 변경되었습니다.before :
USER,ROLEafter :
USER,GROUP
lines의uuid가 삭제되었습니다.
Response 변경 전 예시
{
"approvalCondition": "MANUAL",
"createdAt": "2019-08-24T14:15:22Z",
"executionCondition": "MANUAL",
"lines": [
{
"degree": 1,
"resourceType": "USER",
"resourceUuid": "63d2cc6d-dd83-4a31-a817-fc13f1fc57a3",
"type": "APPROVER",
"uuid": "63d2cc6d-dd83-4a31-a817-fc13f1fc57a3"
}
],
"name": "Default Rule",
"requestType": "SQL",
"reviewEnabled": true,
"updatedAt": "2019-08-24T14:15:22Z",
"uuid": "63d2cc6d-dd83-4a31-a817-fc13f1fc57a3"
}Response 변경 후 예시
{
"createdAt": "2019-08-24T14:15:22Z",
"executionCondition": "ADMIN_ONLY",
"lines": [
{
"resourceType": "USER",
"resourceUuid": "63d2cc6d-dd83-4a31-a817-fc13f1fc57a3",
"step": 1,
"type": "APPROVER"
}
],
"name": "Default Rule",
"requestType": "SQL",
"updatedAt": "2019-08-24T14:15:22Z",
"urgentMode": true,
"uuid": "63d2cc6d-dd83-4a31-a817-fc13f1fc57a3"
}
Approval API - List of Approval
GET /api/external/approvals
Response 변경사항
currentDegree가 삭제되었습니다.approvalStatus가 변경되었습니다.before :
"NONE""PENDING""CANCELED""REJECTED""PARTIALLY_APPROVED""APPROVED""EXPIRED"after :
"PENDING""CANCELED""REJECTED""IN_PROGRESS""APPROVED""EXPIRED"
updatedUser가 삭제되었습니다.lines의uuid가 삭제되었습니다.lines의degree가step으로 대체되었습니다.lines의approvedAt이actionAt으로 대체되었습니다.lines의status가 변경되었습니다.before :
"PENDING""REQUESTED""CANCELED""APPROVED""REJECTED""SQL_EXECUTED""SQL_CANCELED""SQL_SUCCEED""SQL_FAILED""CONFIRMED"after :
"NONE""PENDING""CANCELED""APPROVED""REJECTED""EXECUTED""UNREAD""CONFIRMED"
lines의type이 변경되었습니다.before :
"REPORTER""APPROVER""EXECUTOR""REFERRER""REVIEWER"after :
"APPROVER""EXECUTOR""REVIEWER"
Response 변경 전 예시
{
"list": [
{
"approvalStatus": "PENDING",
"createdAt": "2019-08-24T14:15:22Z",
"createdUser": "User Information",
"currentDegree": 1,
"description": "Approval Description",
"id": 0,
"lines": [
{
"approvedAt": "2019-08-24T14:15:22Z",
"comment": "comment",
"degree": 1,
"status": "APPROVED",
"type": "APPROVER",
"userDepartment": "string",
"userEmail": "string",
"userLoginId": "string",
"userName": "string",
"userType": "USER",
"userUuid": "string",
"uuid": "UUID"
}
],
"title": "Approval Title",
"type": "ACCESS",
"updatedAt": "2019-08-24T14:15:22Z",
"updatedUser": "User Information",
"uuid": "UUID"
}
],
"page": {
"currentPage": 0,
"pageSize": 0,
"totalElements": 0,
"totalPages": 0
}
}Response 변경 후 예시
{
"list": [
{
"approvalStatus": "PENDING",
"createdAt": "2019-08-24T14:15:22Z",
"createdUser": "User Information",
"description": "Approval Description",
"id": 0,
"lines": [
{
"actionAt": "2019-08-24T14:15:22Z",
"comment": "comment",
"status": "APPROVED",
"step": 1,
"type": "APPROVER",
"userDepartment": "string",
"userEmail": "string",
"userLoginId": "string",
"userName": "string",
"userType": "USER",
"userUuid": "string"
}
],
"title": "Approval Title",
"type": "ACCESS",
"updatedAt": "2019-08-24T14:15:22Z",
"uuid": "UUID"
}
],
"page": {
"currentPage": 0,
"pageSize": 0,
"totalElements": 0,
"totalPages": 0
}
}