boto3 docs are very hard to navigate, full of omissions
Describe the issue
Compared to well-maintained docs, like those for Mongo DB packages, boto3 lacks cross references in the docs and static typing in the source, so often the only way to find anything is to grab docstrings from the source and search them in Google. Take this page:
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html
There's nowhere on the page it links to how to create a client. Just lists boto3.client("s3") and that's it. Searching in the left panel for s3 client brings back the same page. The only way to find the actual page is to grab the docstring from the boto3.client source and search it via Google:
This brings back a session interface, so it turns out that a client is within a default session, so one would need to look for a session, not a client.
Lack of static typing in all of boto3 isn't helping either. boto3 is a very complex API and using it in any project lights up static type checkers with all sorts of errors resulting from missing types. Compare this to Mongo DB static typing and docs, where everything is typed and cross-referenced:
https://pymongo.readthedocs.io/en/stable/api/pymongo/mongo_client.html
This is not limited to this page, but more of a pattern for boto3 docs. Here's another one. s3.Client.get_object describes StreamingBody, which is nowhere to be found, even via search.
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3/client/get_object.html
Google comes to the rescue again and returns this page.
I wish boto3 docs would cross-reference all concepts, types, methods and properties.
Links
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html
Source: boto/boto3