# farsi-tools Persian/Arabic Data Cleanup (50-row tier)

> farsi-tools Persian/Arabic Data Cleanup (50-row tier) is a paid API for AI agents from farsi-tools.johnaio281.workers.dev, paid per call via x402, $0.9/call, status unknown (last checked 2026-10-31).

Normalizes a Persian/Arabic CSV, TSV, or text file (up to 50 rows) — fixing text, digits, and encoding — and returns the cleaned file base64-encoded with optional Latin transliteration, for a flat $0.90 USDC fee.

## Facts

- Endpoint: GET https://farsi-tools.johnaio281.workers.dev/api/fa/cleanup-50?utm_source=zero.xyz
- Price: $0.9/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/farsi-tools-persian-arabic-data-cleanup-50-row-tier-6f24dc5d
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_C9khbtK7OtaUyPO8zx23O

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability farsi-tools-persian-arabic-data-cleanup-50-row-tier-6f24dc5d
```

Example prompt: Clean up my Persian contacts file — it's a CSV called contacts.csv, I'll give you the base64 content — normalize all digits to ASCII and add a Latin transliteration column alongside the Farsi text.

## When to prefer this

Choose this endpoint when you have a small Persian/Arabic structured data file (≤50 rows) that needs text normalization, digit standardization, or Latin transliteration in a single flat-fee call. It is ideal for one-off or low-volume data cleaning tasks where you want predictable $0.90 pricing without API key setup. For larger files, use the higher-tier cleanup endpoints ($9 or $25 tiers) from the same service.

## Known failure modes

- File exceeds 50-row limit — returns error indicating row count exceeded for this tier
- File size exceeds 5 MB decoded limit — rejected before processing
- Unsupported file extension — only .csv, .tsv, .txt, .md are accepted
- Invalid base64 encoding in content_b64 — parse error returned
- Missing required query parameters (filename or content_b64) — 400 error
- Payment not received or USDC balance insufficient — 402 payment required response

## How this service works

Persian (Farsi) and Iranian utility API for AI agents. Text normalization, transliteration, Jalali (Solar Hijri) calendar conversion, Persian digits and number-to-words, Iranian national ID / Sheba (IBAN) / mobile / landline / postal code / bank card (Luhn PAN) / company ID / economic code validators, Iranian provinces and cities, official Jalali holidays, Rial-Toman conversion. Also a FIXED-PRICE deliverable SKU: Persian/Arabic data cleanup at $0.90, $9 or $25 flat per file (not per call) - upload a CSV, TSV or text file and get it back normalized, with an optional Latin transliteration column. Pay per request in USDC on Base via x402 - no signup, no API key, no KYC.

## Output

A JSON object containing the cleaned file as a base64-encoded string (output_b64), a download URL for the job, the job ID, output filename (e.g. contacts.cleaned.csv), format detected, number of rows/columns processed, rows changed, digit normalization mode applied, whether transliteration was performed, and the tier/price metadata.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "filename",
      "content_b64"
     ],
     "properties": {
      "options": {
       "type": "object",
       "description": "Optional: {\"digits\":\"ascii\"|\"persian\"|\"keep\",\"transliterate\":true}. digits defaults to \"ascii\"; transliterate appends a Latin column."
      },
      "filename": {
       "type": "string",
       "description": "Original file name. The extension selects the format: .csv, .tsv, .txt, .md. Max 5 MB decoded."
      },
      "content_b64": {
       "type": "string",
       "description": "The file bytes, base64 encoded. Max 5 MB decoded (about 6.7 MB on the wire)."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "cols": 3,
  "rows": 2,
  "tier": "cleanup-50",
  "price": "$0.90",
  "stats": {
   "digits": "ascii",
   "rows_changed": 2,
   "transliterated": false
  },
  "format": "csv",
  "job_id": "cln_00000000000000000000000000000000",
  "filename": "contacts.csv",
  "max_rows": 50,
  "output_b64": "",
  "download_url": "/api/fa/cleanup/job/cln_00000000000000000000000000000000",
  "output_bytes": 0,
  "output_filename": "contacts.cleaned.csv"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/farsi-tools-persian-arabic-data-cleanup-50-row-tier-6f24dc5d/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from farsi-tools.johnaio281.workers.dev](https://www.zero.xyz/host/farsi-tools.johnaio281.workers.dev/llms.txt)
