Skip to main content
POST
/
api
/
v1
/
documents
/
{id}
/
sign
/
otp
Request a signing code
curl --request POST \
  --url https://sandbox.api.nkama.ga/api/v1/documents/{id}/sign/otp \
  --header 'Authorization: Bearer <token>'
{
  "challengeId": "<string>",
  "expiresAt": "2026-04-01T09:35:00Z",
  "maskedDestination": "+241••••••00"
}

Authorizations

Authorization
string
header
required

Bearer access token (JWT) issued by Keycloak or the sandbox token endpoint.

Path Parameters

id
string<uuid>
required

Document id

Response

A pending signing challenge

A pending signing challenge; carries no code or full destination.

challengeId
string

Opaque challenge id presented back to sign the document

channel
enum<string>
Available options:
WHATSAPP,
SMS,
EMAIL
expiresAt
string<date-time>

When the challenge expires (UTC)

Example:

"2026-04-01T09:35:00Z"

maskedDestination
string

Partially-redacted destination for display

Example:

"+241••••••00"

purpose
enum<string>
Available options:
PHONE_VERIFICATION,
REGISTRATION,
DOCUMENT_SIGNATURE,
PASSWORD_RESET,
PHONE_CHANGE