Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/rhcarvalho/buffer-openapi-spec

OpenAPI spec for the Buffer API
https://github.com/rhcarvalho/buffer-openapi-spec

buffer bufferapp openapi openapi-spec openapi-specification swagger swagger-spec swagger-specification

Last synced: about 2 months ago
JSON representation

OpenAPI spec for the Buffer API

Awesome Lists containing this project

README

        

# buffer-openapi-spec

This is a community-driven OpenAPI spec for the [Buffer API](https://buffer.com/developers/api).

It is not an official specification.
It is not endorsed by Buffer.

As the official API can change any time, there are no promises or guarantees.
This project intends to formally specify the API having in mind the benefits it
can bring, such as:

- [Interactive documentation](https://petstore.swagger.io/)
- [Autogenerated API clients](#generating-clients)
- [API testing](https://inspector.swagger.io/)

## OpenAPI 3.0 and OpenAPI 2.0 (Swagger)

[OpenAPI 3.0](https://swagger.io/blog/announcing-openapi-3-0/) is the latest and
greatest revision of the OpenAPI Specification (OAS). However, the ecosystem of
tools for the previous version, widely known as Swagger 2.0, is much more
mature. In particular, there are more code generators built right into the
[Swagger Editor](https://editor.swagger.io/).

Once the tools evolve to support the newer version better, it should be possible
to [automatically migrate the
spec](https://blog.runscope.com/posts/tutorial-upgrading-swagger-2-api-definition-to-openapi-3).

Solely for that pragmatic reason, this spec currently uses the OAS2 / Swagger
2.0 specification to describe Buffer's API.

## Generating clients

Having a formal API specification opens up the possibility to autogenerate code
for API clients.

The OpenAPI / Swagger ecosystem provides tools to generate clients in many
target programming languages.

See:

- https://generator.swagger.io/
- https://editor.swagger.io/

Point the tools to the URL below to generate clients using the latest version of the specification:

https://raw.githubusercontent.com/rhcarvalho/buffer-openapi-spec/master/buffer-openapi-spec.yaml