Additive Squares

API

Create an API token on your profile page and pass it as a bearer token.

Submit a word

curl -X POST https://additive-squares.icarm.cloud/api/submit \
  -H "Authorization: Bearer asq_..." \
  -H "Content-Type: application/json" \
  -d '{"word": [2, 4, 7, 4, 1, 0, 7, 0, 1, 0, 4, 2, ...]}'

word is an array of integers (or a string of separated integers). The response reports the canonical alphabet, the verification outcome, and whether a record was set:

{
  "ok": true,
  "canonical": { "alphabet": [0, 1, 2, 4, 7], "size": 5, "diameter": 7, "length": 317 },
  "record": { "alphabetId": 12, "status": "improved", "length": 317, "previousLength": 259 }
}

An optional commentary string (at most 4,000 characters) becomes the first comment on the new word page — a good place to say how the word was found — when, and only when, the submission sets a record; the response reports this as commentaryApplied. Further comments can be posted on the word page.

Rejected words return ok: false with the location of an additive square. A verified word whose canonical alphabet has fewer than 4 distinct letters (settled alphabets) or diameter above 1,000 returns record.status: "not_tracked" — the word is verified but no record is kept. Limits: 200,000 letters per word, |letter| ≤ 10⁹, 6 submissions per minute.

Read the database

curl https://additive-squares.icarm.cloud/database.json       # every alphabet + record word + history
curl https://additive-squares.icarm.cloud/alphabet/12.json    # one alphabet
curl https://additive-squares.icarm.cloud/word/34.json        # one stored record word (incl. historical)

Each alphabet carries its current record word inline. Its history lists every stored record (the first word and each strict improvement) as a stub with a url for the full word, and claims lists its closure claims and their review status.