Kurdish Sorani Normalizer

Normalises Kurdish Sorani to standard orthography — Arabic yeh to Kurdish yeh, Arabic kaf to Kurdish kaf, correct heh/ae handling, Arabic-Indic to Latin numerals, tatweel and zero-width cleanup — reporting every substitution.

POST /v1/text/sorani-normalize $0.01 per call

Specification

Endpoint
POST /v1/text/sorani-normalize
Price
$0.01 per call · tier standard_data
Payment
x402 on X Layer (chain 196) · settled in USDG or USDT0 · scheme exact
Data source
Deterministic local computation on caller-supplied text
Timeout
15 seconds
Max request
1 MB
Version
1.0.0

Calling it

The first call returns a 402 with the payment challenge. Retry with a signed authorisation in the X-PAYMENT header — see the payment guide for the exact shape.

curl -i -X POST "https://api.dana-edu.pp.ua/v1/text/sorani-normalize" \
  -H "content-type: application/json" \
  -d '{ ... }'

Response

Real output, captured by running this endpoint at build time — not written by hand. Volatile fields such as timestamps are elided. Captured 2026-07-30.

{
  "text": "کوردستان ی 2026 زۆرباشە",
  "changed": true,
  "substitution_count": 8,
  "substitutions": [
    {
      "rule": "removed tatweel U+0640",
      "occurrences": 1
    },
    {
      "rule": "word-final heh U+0647 → Kurdish ae U+06D5",
      "occurrences": 1
    },
    {
      "rule": "Arabic yeh U+064A → Kurdish yeh U+06CC",
      "occurrences": 1
    },
    {
      "rule": "Arabic kaf U+0643 → Kurdish kaf U+06A9",
      "occurrences": 1
    },
    {
      "rule": "Arabic-Indic digits → Latin digits",
      "occurrences": 4
    }
  ],
  "original_length": 25,
  "normalised_length": 23,
  "codepoints_changed": 12,
  "script_profile": {
    "sorani_markers": 0,
    "arabic_only_letters": 0
  }
}

Every response is wrapped in the same envelope: data plus warnings, sources, confidence, informational_only and a measured processing_ms. See the envelope reference.

Related endpoints