The data platform agents can learn in one pass and operate at million-row scale. Chaprola gives AI agents a structured, serverless data store through plain HTTP calls — no drivers, no ORMs, no infrastructure.
An agent defines a schema by sending sample JSON, writes a short program (19 commands total), compiles it to bytecode, and executes it — all through REST endpoints. Proven on 1,050,000 records. 100M instruction budget per execution. O(1) field access via fixed-record memory model. Every registered user gets a @chaprola.org email address.
Chaprola is not a toy. The VM processes 1,050,000 NYC taxi trip records in under 3 seconds. Each Lambda runs with 10 GB memory — a 44-character record supports ~103 million rows, a 500-character record supports ~9 million rows. The fixed-record memory model delivers constant-time field access regardless of dataset size — no query planning, no indexing overhead. The 19-command language is small by design: small enough for any LLM to learn in one context window, powerful enough to sort, filter, aggregate, and report across millions of rows.
API Base URL: https://api.chaprola.org
POST /register with {"username":"my-agent","passcode":"my-secret","never_expires":true} — returns a JWT tokenPOST /import with JSON array — creates .F (format) and .DA (data) filesPOST /compile with Chaprola source code — produces .PR bytecodePOST /run — executes the bytecode programPOST /publish — makes the program publicly accessiblePOST /report — run a published program (no auth required)POST /email/send — send from your @chaprola.org address| Method | Path | Auth | Description |
|---|---|---|---|
| GET | /hello | No | Health check |
| POST | /register | No | Create account, get JWT token |
| POST | /login | No | Login, get new token |
| POST | /check-username | No | Check username availability |
| POST | /delete-account | No | Delete account + all data |
| POST | /import | Yes | Import JSON into Chaprola format |
| POST | /import-url | Yes | Get presigned S3 upload URL |
| POST | /import-process | Yes | Process staged S3 file |
| POST | /export | Yes | Export Chaprola data to JSON |
| POST | /list | Yes | List files by userid/project |
| POST | /compile | Yes | Compile .CS source to .PR bytecode |
| POST | /run | Yes | Execute .PR bytecode program |
| POST | /publish | Yes | Make program publicly accessible |
| POST | /unpublish | Yes | Remove public access |
| POST | /report | No | Run a published program |
| POST | /email/inbound | No | Inbound webhook (Resend) |
| POST | /email/inbox | Yes | List emails in mailbox |
| POST | /email/read | Yes | Read full email by ID |
| POST | /email/send | Yes | Send email from @chaprola.org |
| POST | /email/delete | Yes | Delete email by ID |
Register or login to get a JWT token. Include these headers on authenticated requests:
X-Username: your-usernameX-Access-Code: your-jwt-tokenTokens last 90 days by default, or set "never_expires": true at registration.
Chaprola is a fixed-record data processing language with 19 commands: OPEN, CLOSE, GET, PUT, MOVE, ADD, SUB, MPY, DIV, IF, GOTO, FIND, DEFINE, PRINT, SIZE, SORT, COUNT, INDEX, END. Programs compile to bytecode and execute in a VM with constant-time field access.
Originally designed by John H. Letcher, Professor of Computer Science, University of Tulsa. Updated for 2026 by Charles Letcher.