@netlify/open-api

Netlify's open-api definition as a module

Stats

stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
18037Jun 14, 2021Apr 25, 2016Minified + gzip package size for @netlify/open-api in KB

Readme

open-api

Build Status

This repository contains Netlify's API definition in the Open API format, formerly known as Swagger.

It's still a work in progress and we welcome feedback and contributions.

Usage

The swagger.yml file is the master copy of the Open API 2.0 definition. Additional context on using the API can be found on our docs site.

The spec is published and versioned for various ecosystems:

SwaggerUI (Web UI)

You can view the definition using Swagger UI by visiting open-api.netlify.com which provides limited interaction with the API from the browser.

Go Client

GoDoc Go Report Card Github release

$ go get github.com/netlify/open-api/...

See CONTRIBUTING.md for details on how this client is developed and generated.

JS Client

npm version downloads

We have a fully featured JS/Node.js client that implements some of the same 'porcelain' methods that the go client does in addition to the open-api methods.

See github.com/netlify/js-client for more details.

npm module

npm version

You can also consume the swagger spec as an npm module:

$ npm install @netlify/open-api
# or
$ yarn add @netlify/open-api
import spec from '@netlify/open-api' // import the spec object into your project

The module also ships a copy of the original yml spec file at @netlify/open-api/js/dist/swagger.yml. You can use these with generic swagger/open-api clients:

swagger-js

Swagger's JS client can dynamically create a client from a spec either from a URL or spec object.

See the swagger-js client:

Usage
<script src='browser/swagger-client.js' type='text/javascript'></script>
<script>
var swaggerClient = new SwaggerClient('https://open-api.netlify.com/swagger.json');
</script>

Contributing

See CONTRIBUTING.md for more info on how to make contributions to this project.

License

MIT. See LICENSE for more details.

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.