> For the complete documentation index, see [llms.txt](https://docs.ecosuite.io/api/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ecosuite.io/api/ecosuite-project-data-api.md).

# Ecosuite Project Data API

Ecosulte's Project Data API is designed and specified with [OpenAPI](https://www.openapis.org). The [Ecosuite OpenAPI](https://openapi.ecosuite.io) is simple to use when leveraging the provided OpenAPI definitions.

1. **Downloading the OpenAPI definition** allows us to generate bindings for our language and environment of choice.\
   \
   The definition file is available publicly, and can be downloaded either in your browser or in the command line:

```bash
wget https://api2.ecosuite.io/docs/openapi.json
```

2. **Using the definition** can be accomplished by using `openapi-generator-cli`. Let's download the tool and install a stable version:

```bash
npm install @openapitools/openapi-generator-cli -g
openapi-generator-cli version-manager set 5.3.0
```

3. **Generating bindings** is done by specifying our generator of choice. Let's use the default Python generator as an example:

```bash
npx @openapitools/openapi-generator-cli generate -i openapi.yml -g python -o .
```

Now it's as simple as using the generated classes and functions to interact with the API.

{% hint style="info" %}
Python develpers with ecosuite accounts, we have working sample code to get you going quickly here: <https://github.com/ecosuite/ecosuite-python>
{% endhint %}
