Base URL and authentication
Every call is HTTPS with a JSON body (TLS only). The base URL is issued with the API key, and each environment has its own host and its own key, first rehearsal and then production.Every call carries the key in theAuthorization header, as the whole header value:Two keys are valid during a rotation, which happens on a fixed schedule. Keys are handed over outside Slack. A key can be limited to some calls, and a call outside its scope returns
403. If DCinside has fixed egress addresses, an IP allowlist can be added.Formats
Idempotency
Calls that change state are safe to repeat.Cycle interval
Five minutes is the proposed default. DCinside’s interval is a setting that starts at 2–5 minutes.cycle_time is on the five-minute grid and the model’s growth windows are built on a five-minute series, so this proposal starts at five. A shorter interval needs a change to the grid rule and to the window features.Limits and timeouts
These limits are proposed. They come from the queue snapshots of 14–21 September: 649 posts were pending on average (p95 1,203, max 1,381), and 7.8 new posts arrived per five-minute cycle (p95 17, max 36).
Scoring runs inside the request, so the timeout has to cover embedding a burst of new posts. If synchronous scoring proves too slow, the call switches to a
202 reply and the result is polled from GET /v1/scores/{cycle_id}.