This repository contains an OpenAPI specification for LaunchDarkly's REST API.
This REST API is for custom integrations, data export, or automating your feature flag workflows. DO NOT use this client library to add feature flags to your web or mobile application. To integrate feature flags with your application, please see the SDK documentation
This project uses YAML file pointers to create the directory architecture described here:
http://azimi.me/2015/07/16/split-swagger-into-smaller-files.html
The spec is joined from multiple files using a multi-file Swagger tool. To compile just the spec run make openapi_yaml
.
Alternatively, you can test a multi-file Swagger spec using VSCode, or by following these instructions for the online editor:
We use the spec to build some internals tools in go. Tests for other specs are forthcoming.
Server/client code for the API can be automatically generated. To generate the code:
- Ensure that you have
wget
,yarn
,jq
, andpip3
installed. - Run the
generate
command:
> make
Publishing codes changes is done by setting up the source repos for each client code repo as git submodules of the
targets directory. This is done by running make load_prior_targets
to set up the git submodules.
Then make
can be run to layer changes on top of the existing repos, followed by make push
to push the changes to
those repos.
The target make publish
will publish changes to the language-specific package managers.