1

I'm looking to get familiar with the Amazon Connect API. I've seen the reference below but it's difficult to use for me because the navigation is a flat, alphabetical list of endpoints ordered by action instead of resource. Of note, the endpoints are alphabetized beginning with "Delete", Get", "List", "Update" and others, while it would be great to have these grouped by resource.

I'd like to reorganize the docs which can be done by editing an OpenAPI or other API specification and adding tags for each operation. I looked though the reference and conducted a few searches unsuccessfully.

I'm using the following API Reference:

https://docs.aws.amazon.com/connect/latest/APIReference

Any other spec format such as RAML or a proprietary format would be okay as well. For example, Google provides their own "Google Discovery Format" which can be converted to OpenAPI. The following is mentioned at https://googleapis.github.io/ .

OpenAPI

We recommend using OpenAPI and OpenAPI-based tools for working with Google’s REST APIs. Several tools for converting Google Discovery Format to OpenAPI have been published:

  • google-discovery-to-swagger, an MIT-licensed open source script for converting Google Discovery format into Swagger 2.0.
  • API Spec Converter, an online converter from LucyBot.
  • The API Transformer from APIMatic.

Google’s OpenAPI tools include gnostic, a front-end for OpenAPI tools that reads OpenAPI descriptions, puts them in an efficient binary representation, and allows efficient plugins and standalone tools to be easily written in any programming language with Protocol Buffer support.

Is there an OpenAPI or other spec available for this API? If there is, I'd like to update it with tags and then render it in an easier to consume format.

Update: Aossey notes that Amazon doesn't publish OpenAPI specs for their APIs. To address this, I've started to assemble some information in the repo below, potentially resulting in an OpenAPI spec. Feel free to contribute.

https://github.com/grokify/amazon-api-specs/blob/master/connect/endpoints.csv

Grokify
  • 15,092
  • 6
  • 60
  • 81

1 Answers1

1

The short answer is no, there is no OpenAPI spec for these APIs.

These functions (listed in the docs you linked) are implemented in AWS SDK and the AWS CLI. While there are underlying HTTP endpoints, they are not easily consumable in the way you're most likely looking for. The SDK and CLI take care of authentication/authorization (via IAM service) and request signing for you, which you would have to implement yourself if you were going to leverage the endpoints directly.

Aossey
  • 850
  • 4
  • 13
  • That's unfortunate. Is this the case with all Amazon APIs? OpenAPI spec is used for both generating documentation and client SDKs along with being consumed directly. I use Go a lot. In Go it's easy to have the auhn/authz and request signing taken care of in a generic `*http.Client` which is separate from the path and model code. – Grokify Jan 26 '21 at 08:36
  • All AWS APIs are implemented/exposed in the same way, as I described above. Customers can use OpenAPI/swagger to implement custom APIs in the API gateway service, but the APIs used to manage the AWS services themselves do not publish an OpenAPI spec. – Aossey Jan 26 '21 at 14:57
  • Good to know. Thanks. I've started to assemble some API spec info to make the API easier for me to consume. – Grokify Jan 26 '21 at 16:09