The README.md file in the project root defines the initial ideas for what API endpoints we should have, but we should probably create some more detailed documentation.
I propose the creation of a doc folder at the top of the repository that will contain documentation for each type of record that someone can request from the API.
Such documentation would include:
- The name of the type of record (e.g. "candidate")
- The keys that will appear in that record, and what they will contain.
As far as I can tell there will be three types of records:
- Candidates
- Campaigns
- Campaign Reports
A candidate may have one or more campaigns associated with it. A campaign will have one or more report associated with it. These relationships should be taken into account.
We should also plan to have this data be denormalized.