# Overview

### Overview

The Violet API is organized around the [REST](http://en.wikipedia.org/wiki/Representational_State_Transfer) protocol.

Using our API, you'll be able to perform a variety of operations, such as performing Checkout or Bi-directional Data Transfers across a multitude of E-commerce platforms.

### Key Sections

* [**Login**](https://docs.violet.io/api-reference/auth/login) – Login and Auth capabilities powered by Violet
* [**Catalog**](https://docs.violet.io/api-reference/catalog/offers) – Easily access Catalog data for all your connected merchants
* [**Orders and Checkout**](https://docs.violet.io/api-reference/orders-and-checkout/carts) – Power multi-merchant Checkout through Violet
* [**Merchants**](https://docs.violet.io/api-reference/merchants/merchant) – Access information about your connected merchants
* [**Events**](https://docs.violet.io/api-reference/events/webhooks) – Track the lifecycle of Orders and Checkout through events
* [**Operations**](https://docs.violet.io/api-reference/operations/connection) – Understand the health of merchants connected to your platform

#### OpenAPI Files

The [Violet OpenAPI](https://github.com/violetio/open-api.git) files are available on GitHub. These files describe the APIs Violet exposes in a standardized way suitable for usage with tools for testing, client library generation, and other purposes that ingest OpenAPI/Swagger definition files. By default, Violet generates open-api-3 spec files.

#### A Note About Null Values

As a general rule, values that are null will not be included in the response object. So if a property listed in the spec is not being returned by the API it is usually because that property is null for the returned object.
