An integration map shows the path, not just the URL
To understand an integration, listing endpoints is not enough. You need to trace the path from the HTTP request through the handler and business service to the database, external client, queue, or event, and then find the test and configuration that confirm the contract.
`CODEBASE_INVENTORY.md` describes the repository contents, while `API_MAP.md` records the relationships between routes, code, integrations, and the environment.
| Node | What to check |
|---|---|
| HTTP route | The method, path, and entry point |
| Handler | The controller or function that accepts the request |
| Business service | Data transformations and rules |
| Integration | The database, external client, queue, or event |
| Contract | Authorization, configuration, and the related test |
Investigate one critical scenario
- Choose checkout, refund, support, or another specific flow.
- Find the route and controller.
- Follow the path to the service and its dependencies.
- Check database writes, external clients, queues, and events.
- Find authorization rules and environment variables.
- Match the path against the tests.
- Record only confirmed relationships and open questions in
API_MAP.md.
The structure of `API_MAP.md`
# API_MAP.md
## Client routes
## Support API
## Administration panel API
## External integrations
## Open questions
| Method and path | Handler | Authorization | Integrations | Tests |
| --- | --- | --- | --- | --- |
| POST /api/... | ... | ... | ... | ... |Integration evidence
- the controller confirms that the route exists;
- the service shows the next direction of execution;
- the configuration reveals environment dependencies;
- the build file confirms that the library is connected;
- the test records the expected behavior;
- a comment may be a clue, but it does not replace checking the code.
The map evolves with the code
After changes to routes, services, or configuration, review the `API_MAP.md` diff. The document should remain short, evidence-based, and synchronized with the implementation rather than becoming a one-off draft.
Canonical lesson source · JavaRush
Open JavaRush material