Developer manual
Foudra has a JSON API, so your own programs can read and change your company's data: a shop that sends its orders in as demand, a print farm that takes its next job and reports what it made, a script that imports a supplier's price list. This manual is for the people writing those programs. It shows how, with examples in Python.
The reference manual's API page lists every endpoint. The OpenAPI description is the same list for tools to read.
The shape of it
- Your company's own address. The API is at
https://<your company>.foudra.com/api/…, the address you sign in at. A key works only there. - A key or a token on every request, as
Authorization: Bearer …. Your own scripts use an API key. An application that many companies will use asks each user for permission through OAuth instead. - JSON in and out, except for uploads (multipart form data) and files (their own type).
- Decimals are strings. Quantities and money are
"12.5000", never12.5, because a JSON number is a floating-point number and these are exact. Read them intodecimal.Decimal, notfloat. - Times are UTC, as RFC 3339 (
2026-11-04T09:30:00Z); dates are2026-11-04. - Errors are
{"error": "…"}with a status that means what it says:400a malformed request,401a missing or revoked key,402the company's subscription has lapsed,403the key's scope or the user's role doesn't allow it,404not found (or in another company),409not in a state that allows it,422the request was understood and refused. The message is written for a person; show it. - Lists are paged:
?page=2&per=100(peris 10, 25, 50 or 100), and the answer carriespage,pagesandtotalbesidedata. - Changes are made in someone's name: the person who created the key, or who allowed the application.
Contents
| Page | What it covers |
|---|---|
| API keys | Making a key, keeping it safe, sending it, scopes, replacing one |
| Python | Reading, paging, creating, uploading and downloading files, errors, retrying safely |
| OAuth | An application for many companies: the sign-in flow, tokens, refreshing |
| Webhooks | Being told when something happens, and checking the message came from Foudra |
| OpenAPI | The machine-readable description of the API |
| Tools | Ready-made scripts you can use or copy: imports, syncs, a small client |
If something here is wrong or missing, tell us with Report a problem in the app.