A small API for useful practice.

Get a worksheet

Send a GET request to /api/v1/worksheet. Set type, an optional grade, a reproducible seed and the options for that worksheet. The response includes questions, answers, normalized options, a preview URL and a PDF URL.

GET /api/v1/worksheet?type=multiplication&grade=3&seed=2026&problems=12

Open the example response.

Available types

addition, subtraction, multiplication, division, fractions, decimals, place-value, skip-counting, number-bonds, rounding, money, measurement, word-problems, telling-time, number-lines, handwriting, name-tracing, sight-words, spelling.

Options and validation

Options include grade, difficulty for arithmetic, decimals, money, measurement and word problems, problems, paper=letter|a4, answer_key=0|1 and seed from 1 to 2,147,483,646. Type-specific options match the controls on each generator. Unknown types return 404. Invalid or unsupported options return 422 with field errors. A method other than GET or HEAD returns 405.

Open the example endpoint to inspect the complete JSON response, including each question and its answer. Types expose their supported settings in the corresponding generator form.

Limits and privacy

The default API limit is 90 requests per address per minute. A limit response returns HTTP 429 and Retry-After: 60. PDF and preview endpoints have separate limits. JSON and personalized responses use Cache-Control: private, no-store. The API is read-only and needs no token; CORS allows public classroom tools to read it.

Try the classroom embed

Add a mini generator to your own page.