-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Description
Hi,
the artifacts I'm refering to are:
- input: https://github.com/mamund/alps-unified/blob/main/samples/company-ext-alps.yaml
- output: https://github.com/mamund/alps-unified/blob/main/samples/company-oas.yaml
Action-vocabularies such as "listCompanies", "filterCompanies", "readCompany" etc. are fine as is at a conceptual level. Though I'd like to have a way to describe which parameters are mandatory and which are optional.
The oas output, however, does not quite look like best practices in the HTTP RESTful world. In the output oas file:
- It is almost a convention now to use GET "/companies" for the conceptual action "listCompanies".
- For the action "filterCompanies", in the alps file, there are four query parameters. But in the output file, no query parameters are specified. In addition, it is better to use GET "/companies?legalName=blah&addressCountry=blah&...." instead of GET "filterCompanies?......"
- Similar comments for the create/update/delete actions.
A very concise book which explains the most current best practices can be found here:
https://cloud.google.com/files/apigee/apigee-web-api-design-the-missing-link-ebook.pdf
Metadata
Metadata
Assignees
Labels
No labels