Your API answers. Does it answer correctly?
Your mobile app, your store and your partners all depend on the API, and a small change in it breaks them without showing on any screen. Upload the description file and the QA engineer reads the operations and proposes the checks, then runs them and shows you which request returned something unexpected, with the request and the response exactly as they were.
API bugs do not show on a screen
A field was renamed and the app broke
A small change to a response looks harmless in the code, then the mobile app stops showing orders. Nobody notices until customers complain.
One user sees another’s data
The request succeeds and returns data, but it is another customer’s. A “does it respond?” check will not catch that. A “does it return only what this user may see?” check will.
Manual checks do not get repeated
The developer tries a few requests by hand before a release and that is that. Next release nobody repeats them all, and an old bug comes back.
From the description file to checks you review
Upload or paste your API description file, in OpenAPI or Swagger format, written as JSON or YAML. The QA engineer reads the operations and proposes what is worth checking for each: is the status right, are the required fields present with the right type, is incomplete data rejected with a message that makes sense, and is a user stopped from reading someone else’s data. When you allow writes it tries a full sequence: create a record, read it back, then delete it.
- Status, fields and their types
- Permissions and error messages
- Create, read, delete, with your permission
Checks written once and re-run with every release
Every check is saved as a case with readable steps: the request that is sent and what is expected in the response. Group them into suites, edit them yourself when the API changes, and run them all with one press after every release. Each case keeps its history in front of you: when it passed and when it failed.
- Readable steps, not code to maintain
- Suites you run with one press
- Pass and fail history per case
The request and the response as they were, minus the secrets
When a check fails you do not just get “failed”. You get a bug card with the request that was sent, the response that came back, what was expected, and what it means for whoever uses the API. Access keys, tokens and passwords are masked before any evidence is stored, so you can share the card with your developer without worry.
- Request and response attached to each bug
- Keys and tokens masked
- Closed after the retest passes
What you say, and what the QA engineer checks
A store’s orders API
It creates a test order, reads it back and checks the total and the status, then deletes it. It also tries creating an order with no address to make sure it is rejected with a clear message.
Make sure creating, reading and cancelling an order work, and that an incomplete order is rejected with a message a developer can understand.
Each customer’s data stays theirs
With two test accounts it tries to read the second one’s invoices using the first. The request should be refused; if the data comes back, that is a high-severity bug.
Check that a customer cannot see another customer’s invoices, even if they change the number in the request.
Before a new mobile app release
It re-runs the saved suite against the API the app depends on and compares the result with the previous run: what is new and what has come back.
Re-run all the API checks and tell me whether anything that worked last release is now broken.
How to test your API in five steps
From the description file to a suite you re-run whenever you like.
- 1
Add the API’s address
In “QA Engineer” choose “Test an API” and enter its address. By adding it you confirm it is yours or that you are allowed to test it, and it is ready straight away.
- 2
Upload the description file
Upload or paste the OpenAPI or Swagger file, as JSON or YAML. From it the QA engineer learns which operations exist and what they are meant to return.
- 3
Add a test key and set what is allowed
Add an access key meant for testing; it is stored encrypted. Then decide: read-only, or may it create and delete test records.
- 4
Review the proposed checks
The QA engineer shows the cases grouped with a priority each, and flags the ones that create data. Switch off what you do not want, then run.
- 5
Read the result and re-run after each release
Each failed check is a card with the request and the response. Retest after the fix, and keep the suite to run with every new release.
Plainly: what you should know
Questions people ask
What is API testing?
How do I test an API without writing code?
Which description file formats does Fanann accept?
Does it test API permissions?
Are my API keys safe during testing?
Does Fanann do API load testing?
Is API testing in Fanann free?
What else can the QA engineer test for you?
QA Engineer
The main page: an AI QA engineer that plans tests, runs them in a real browser, documents every bug with evidence and tells you whether your app is ready to launch.
Meet the QA engineerWebsite testing
Is your site built outside Fanann? Add its address and have the QA engineer test its pages, forms and flows in a real browser.
See the detailsRegression testing
Every test case is saved and re-run. After any change you know in minutes whether what worked still works, and when it broke.
See the detailsBug tracking
Every bug is a card with impact, steps, expected vs actual and a screenshot, and it stays open until a retest proves it fixed.
See the detailsTest before launch
Built your app with Fanann? Test it from the publish window itself, ask Fanann to fix what turns up, then publish knowing where it stands.
See the detailsFor restaurants & booking
Two guests, one table, 7 pm: how the QA engineer finds the double booking before your guests do.
See the detailsGuides to read before you test
What is software testing?
An explanation for business owners, without jargon: what gets tested, the kinds of testing that actually matter to you, and when manual testing is enough and when it is not.
Read the guideWebsite testing checklist
A practical list to go through before you announce your site: sign-up, forms, checkout, mobile, Arabic, messages and what comes after launch.
Read the guideHow to write a bug report
A ready template and examples: a clear title, steps that reproduce the bug, expected vs actual, evidence, and how to set severity without exaggerating.
Read the guideKnow your API is sound before your app tells you otherwise.
Upload the description file, review the proposed checks and run them after every release. The QA engineer is part of the paid plans, and signing up is free.