K-OTP

발급 이력 단건

GET /v1/issues/{issueId}

GET https://api.k-otp.dev/v1/issues/{issueId}

개요

Returns the same PII-free projection as GET /issues for a single issue, including billing status and attempt counters. Issue identifiers belonging to other apps are indistinguishable from missing records.

Requires an sk_ secret key; pk_ public keys are rejected with 403.

인증

허용 키필요 scope대체 허용 scope
sk_otp:dashboard:readotp:read, *

파라미터

이름위치타입필수설명
issueIdpathstring (uuid)예issueId returned by POST /v1/issue.

응답 (200)

The issue projection.

필드타입필수설명
issueIdstring (uuid)예
purposestring예
templateIdstring예
channel"alimtalk" | "sms"예
verificationStatus"expired" | "issued" | "max_attempts" | "replaced" | "verified"예Effective status: an issued row past its expiry is reported as expired.
deliveryStatus"delivered" | "failed" | "queued" | "sent" | "unknown"예Latest tracked delivery status; unknown when the tracker has no record or is unavailable.
overallStatus"delivered" | "delivery_failed" | "expired" | "in_progress" | "max_attempts" | "pending_lookup" | "replaced" | "verified"예Same derivation as GET /v1/status.
billingStatus"debit_pending" | "debited" | "release_pending" | "released" | "reserved"예Billing lifecycle of an issue: credit is reserved at admission, then either debited (debit_pending -> debited) or released (release_pending -> released) once send processing finishes.
debitedAmountinteger예Credits debited for this issue so far.
currencystring예Credit unit, currently CREDIT.
expiresAtstring (date-time)Undefined only for legacy records that predate persisted expiry timestamps.
verifiedAtstring (date-time)Present once the issue was verified.
attemptsUsedinteger예
maxAttemptsinteger예
attemptsRemaininginteger예
createdAtstring (date-time)예
updatedAtstring (date-time)예

오류 응답

모든 오류는 { defined, code, status, message, data? } 형태입니다. 자세한 내용은 오류를 참고하세요.

상태code설명
400BAD_REQUESTissueId is not a UUID.
401UNAUTHORIZEDthe Authorization: Bearer credential is missing, malformed, inactive, or rejected by introspection.
403FORBIDDENthe credential lacks otp:dashboard:read (or an accepted alias), or a pk_ public key was used. Public keys are limited to issue/verify.
404NOT_FOUNDno issue with this issueId exists for the authenticated app.
409CONFLICTthe request conflicts with the current state of the resource.
500INTERNAL_SERVER_ERRORunexpected server failure. Undefined errors (defined: false) use the same envelope.
503SERVICE_UNAVAILABLEcredential introspection or a downstream dependency is temporarily unavailable. Retry with backoff.

요청 예시

curl "https://api.k-otp.dev/v1/issues/0192f3c4-8b7a-7c3e-9a51-2f4d6e8b1a90" \
  -H "Authorization: Bearer $KOTP_SECRET_KEY"

이 페이지의 내용