etc

Sentivex Incidents Ticket API

GET/health

Health

Responses

200 Successful Response
any
cURL
curl -X GET https://sit.in-bridge.com/health
JavaScript
const res = await fetch("https://sit.in-bridge.com/health", {
  method: "GET"
});
const data = await res.json();
GET/metrics

Metrics Endpoint

Prometheus 스크레이프 엔드포인트(H11). 인증 없이 노출(클러스터 내부 스크레이프). 큐 깊이(pending)는 스크레이프 시점에 DB 에서 갱신해 게이지에 반영한다.

Responses

200 Successful Response
any
cURL
curl -X GET https://sit.in-bridge.com/metrics
JavaScript
const res = await fetch("https://sit.in-bridge.com/metrics", {
  method: "GET"
});
const data = await res.json();
POST/process

Process

Request body

incident_keystringrequired
project_idstringrequired

Responses

200 Successful Response422 Validation Error
any
cURL
curl -X POST https://sit.in-bridge.com/process \
  -H "Content-Type: application/json" \
  -d '{"incident_key":"string","project_id":"string"}'
JavaScript
const res = await fetch("https://sit.in-bridge.com/process", {
  method: "POST",
  headers: {
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    "incident_key": "string",
    "project_id": "string"
  })
});
const data = await res.json();
POST/resume

Resume

Request body

thread_idstringrequired
decisionDecisionrequired

HITL 사람 결정 (M18). `approved` 는 **필수 bool** — 누락/오타(`{"aproved": true}`)면 FastAPI 가 422 로 거부한다. 예전엔 decision 이 자유 dict 라 오타가 falsy 로 떨어져 **조용히 '거부'로 종결**됐고, n8n 등 직접 호출에서 의도치 않은 클로즈를 유발할 수 있었다. by/not

approvedbooleanrequired
bystring | null
notestring | null

Responses

200 Successful Response422 Validation Error
any
cURL
curl -X POST https://sit.in-bridge.com/resume \
  -H "Content-Type: application/json" \
  -d '{"thread_id":"string","decision":{"approved":true,"by":"string","note":"string"}}'
JavaScript
const res = await fetch("https://sit.in-bridge.com/resume", {
  method: "POST",
  headers: {
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    "thread_id": "string",
    "decision": {
      "approved": true,
      "by": "string",
      "note": "string"
    }
  })
});
const data = await res.json();
POST/enqueue

Enqueue

백로그 일괄 처리 — 제한된 동시성으로 각 인시던트를 await_approval 까지 흘린다.

Request body

incident_keysstring[]required
project_idstringrequired

Responses

200 Successful Response422 Validation Error
any
cURL
curl -X POST https://sit.in-bridge.com/enqueue \
  -H "Content-Type: application/json" \
  -d '{"incident_keys":["string"],"project_id":"string"}'
JavaScript
const res = await fetch("https://sit.in-bridge.com/enqueue", {
  method: "POST",
  headers: {
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    "incident_keys": [
      "string"
    ],
    "project_id": "string"
  })
});
const data = await res.json();
GET/queue

Queue State

큐 스냅샷 — 동시성/상태별 카운트/건별 상태.

Responses

200 Successful Response422 Validation Error
any
cURL
curl -X GET https://sit.in-bridge.com/queue
JavaScript
const res = await fetch("https://sit.in-bridge.com/queue", {
  method: "GET"
});
const data = await res.json();
POST/unisolate

Unisolate

Request body

incident_keystringrequired
project_idstringrequired
bystring | null

Responses

200 Successful Response422 Validation Error
any
cURL
curl -X POST https://sit.in-bridge.com/unisolate \
  -H "Content-Type: application/json" \
  -d '{"incident_key":"string","project_id":"string","by":"string"}'
JavaScript
const res = await fetch("https://sit.in-bridge.com/unisolate", {
  method: "POST",
  headers: {
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    "incident_key": "string",
    "project_id": "string",
    "by": "string"
  })
});
const data = await res.json();