# Generate API keys

Soda Cloud uses API keys to securely communicate with other entities such as Soda Core and self-hosted Soda Runners, and to provide secure access to Soda Cloud via API.

There are two sets of API keys that you can generate and use with Soda Cloud:

* API keys for communicating with Soda Core and Soda Cloud API,
* API keys for communicating with a self-hosted Soda Runner

Note that you can use other authentication methods to access Soda Cloud metadata via the Rest API, such as HTTPBasic authentication with username and password, or authentication using tokens; use API keys to authenticate access if your organization employs Single Sign On (SSO) to access Soda Cloud.

{% hint style="danger" %}
**Nomenclature change: "Agent" is now "Runner"**

The Soda Agent has been renamed to [**Soda Runner**](https://docs.soda.io/reference/soda-agent-basic-concepts) across all Soda products and interfaces. This change affects terminology throughout the platform, including:

* Soda Cloud UI labels
* API permission names: `MANAGE_DATASOURCES_AND_AGENTS` → `MANAGE_DATASOURCES_AND_RUNNERS`
* CLI flags: `--use-agent` → `--use-runner`
* Python API methods: `verify_contract_on_agent` → `verify_contract_on_runner`

If you are following older documentation or have existing scripts and automation that reference "agent", we recommend to gradually replace every occurrence of "agent" / "Agent" with "runner" / "Runner". The underlying functionality is unchanged.
{% endhint %}

### Generate API keys for use with Soda Core or a Soda Cloud API

1. In your Soda Cloud account, navigate to your avatar > **Profile** and the **API Keys** tab.\
   **Click the "**<i class="fa-plus-large">:plus-large:</i>**" icon** to generate new API keys.

   <figure><img src="https://1123167021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FA2PmHkO5cBgeRPdiPPOG%2Fuploads%2FHQAsIKFhYdonaJatMHpY%2Fimage.png?alt=media&#x26;token=697d93fd-56c7-4523-ad88-8c3fada91e47" alt=""><figcaption></figcaption></figure>
2. Copy the syntax for the `soda_cloud` configuration, including the values API Key ID and API Key Secret, then apply the keys according to how you intend to use them

### Generate API keys for use with a Soda Runner

1. In your Soda Cloud account, navigate to **Data Sources**, then navigate to the **Runners** tab.\
   Click **New Soda Runner**.

   <figure><img src="https://1123167021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FA2PmHkO5cBgeRPdiPPOG%2Fuploads%2FNAVCwkuO8aO1aF86MaZi%2Fimage.png?alt=media&#x26;token=49f3385d-eb7b-4d19-a6df-dae4894e49e2" alt=""><figcaption></figcaption></figure>
2. Copy the values of the API Key ID and API Key Secret to a secure location, then apply the keys according to the instructions in the [Deploy a Soda Runner](https://docs.soda.io/deployment-options/soda-agent/deploy-soda-agent) documentation.

<br>

***

{% if (visitor.claims.plan === 'datasetStandard')%}
{% hint style="success" %}
You are **logged in to Soda** and seeing the **Free license** documentation. Learn more about [documentation-access-and-licensing](https://docs.soda.io/reference/documentation-access-and-licensing "mention").
{% endhint %}
{% endif %}

{% if (visitor.claims.plan === 'enterprise')%}
{% hint style="success" %}
You are **logged in to Soda** and seeing the **Team license** documentation. Learn more about [documentation-access-and-licensing](https://docs.soda.io/reference/documentation-access-and-licensing "mention").
{% endhint %}
{% endif %}

{% if (visitor.claims.plan === 'enterpriseUserBased')%}
{% hint style="success" %}
You are **logged in to Soda** and seeing the **Enterprise license** documentation. Learn more about [documentation-access-and-licensing](https://docs.soda.io/reference/documentation-access-and-licensing "mention").
{% endhint %}
{% endif %}

{% if !(visitor.claims.plan === 'enterprise' || visitor.claims.plan === 'enterpriseUserBased' || visitor.claims.plan === 'datasetStandard')%}
{% hint style="info" %}
You are **not logged in to Soda** and are viewing the default public documentation. Learn more about [documentation-access-and-licensing](https://docs.soda.io/reference/documentation-access-and-licensing "mention").
{% endhint %}
{% endif %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.soda.io/reference/generate-api-keys.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
