AEPs: API Enhancement Proposals
12 points
1 day ago
| 2 comments
| github.com
| HN
cbarrick
2 hours ago
[-]
This is a fork of Google's AIPs (API Improvement Proposals) [1], which is the standard for all of Google's public APIs.

More context at [2].

[1]: https://aip.dev [2]: https://aep.dev/blog/history-of-aeps/

reply
ventana
2 hours ago
[-]
> which is the standard for all of Google's public APIs

Far from that, unfortunately. A lot of Google public APIs predate AIPs and it's practically impossible to fix them and make them compliant. Possibly the worst offender is the Compute Engine API [1], which, to the best of my knowledge, is REST only (no gRPC), uses its own conventions related to page size / next page token, and, in general, is special in many ways. One of the ways it's special is its size: its definition in Google's own Discovery format [2] is a 6MB JSON.

It's an extremely difficult problem to standardize multiple APIs produced by multiple teams, and then keep the new changes compliant. Google did a great job, but it's still very far from the perfect state.

[1]: https://docs.cloud.google.com/compute/docs/reference/rest/v1 [2]: https://www.googleapis.com/discovery/v1/apis/compute/v1/rest - warning: 6 megabytes JSON

[edit: typo]

reply
cbarrick
1 hour ago
[-]
I say it's the "standard" because all new public APIs must conform to the latest AIPs.

But yes, Google has plenty of legacy APIs. And yes, GCE in particular is a HUGE pain.

reply
agentik
2 hours ago
[-]
https://news.ycombinator.com/item?id=48126889 just posted a thread, for a compeletly unrelated AIP definition :)
reply