티켓 수정
지정한 티켓의 중요도, 제목, 내용, 내용 형식을 수정합니다. 새 티켓은 티켓 생성 API로 만들 수 있습니다.
필요 권한
사용자 이상의 계정으로 이용할 수 있습니다.
HTTP 요청
PUT /api/sonar/tickets/:guid
cURL 예시
curl -H "Authorization: Bearer <API_KEY>" \
-d 'priority=HIGH' \
-d 'title=웹 서버 설정 수집 시도' \
-d 'format=JSON' \
--data-urlencode 'content={"first_seen":"2022-09-20 14:55:54+0900","last_seen":"2022-09-20 19:44:24+0900","priority":"HIGH","src_ip":"203.0.113.230","dst_ip":"198.51.100.152","dst_port":443}' \
-X PUT \
https://HOSTNAME/api/sonar/tickets/638cfeb2-e259-46af-961a-1eeb65ea35f0
요청 매개변수
경로 매개변수
| 키 | 타입 | 설명 | 비고 |
|---|---|---|---|
| guid | 문자열 | 티켓 GUID | 36자 |
요청 본문 매개변수
| 키 | 필수 | 타입 | 설명 | 비고 |
|---|---|---|---|---|
| priority | O | 문자열 | 중요도 | LOW, MEDIUM, HIGH 중 하나 |
| title | O | 문자열 | 제목 | 최소 1자, 최대 255자 |
| format | O | 문자열 | 내용 형식 | PLAIN, JSON, MARKDOWN 중 하나 |
| content | O | 문자열 | 내용 | 최소 1자, 최대 100,000자 |
정상 응답
{}
오류 응답
필수 매개변수가 누락된 경우
HTTP 상태 코드 400 응답
{
"error_code": "null-argument",
"error_msg": "title should be not null"
}
매개변수 값의 길이가 잘못된 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "'title' must be shorter than or equal to 255 characters."
}
유효하지 않은 형식을 지정한 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "format should be one of 'JSON', 'MARKDOWN', 'PLAIN'."
}
유효하지 않은 중요도를 지정한 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "priority should be one of 'LOW', 'MEDIUM', 'HIGH'."
}
내용이 JSON 형식이 아닌 경우
내용 형식(format)을 JSON으로 지정했으나 내용(content)이 JSON 형식이 아니면 오류가 발생합니다.
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "content should be JSON format - Expected a ',' or '}' at character 146"
}
티켓이 존재하지 않는 경우
HTTP 상태 코드 500 응답
{
"error_code": "illegal-state",
"error_msg": "ticket not found: 638cfeb2-e259-46af-961a-1eeb65ea35f0"
}
시스템이 생성한 티켓을 수정하는 경우
HTTP 상태 코드 500 응답
{
"error_code": "illegal-state",
"error_msg": "cannot update system ticket: 638cfeb2-e259-46af-961a-1eeb65ea35f0"
}
권한이 없는 경우
HTTP 상태 코드 500 응답
{
"error_code": "illegal-state",
"error_msg": "no-permission"
}