# API

{% hint style="info" %}
This page is written for businesses who require more granular, low-level interaction with Uniramp. For most users, we suggest [leveraging the Uniramp Widget](https://docs.uniramp.com/product/widget) for hassle-free integration.
{% endhint %}

## Environments

We offer a sandbox environment for development purposes. The sandbox environment allows developers to bypass transactions through our partner's dashboard and will complete DeFi swaps on testnets.

<table><thead><tr><th width="184">Environments</th><th>Endpoint</th></tr></thead><tbody><tr><td>Production</td><td>api.uniramp.io/v1</td></tr><tr><td>Sandbox</td><td>sandbox.api.uniramp.io/v1</td></tr></tbody></table>

## Authentication

{% hint style="info" %}
Please complete [this form](https://forms.gle/cJ6aehR4Y7j3uKwY9) to obtain your API Keys.
{% endhint %}

The Uniramp API uses API keys to authenticate requests through bearer authentication. Requests are required to include a valid bearer token in the `x-api-key` header. API requests without authentication will fail. An example of an authenticated request can be found below:

```bash
$ curl https://api.uniramp.io/v1/onramp/supported/fiat \
  -H "x-api-key: pk_prod_LGZp4n7498RW5E1IwR3mJ9Ep"
```

To ensure secure communication and data integrity, the Uniramp API exclusively supports HTTPS for all API requests. Any attempts to make requests over plain HTTP will not be successful.

### Types of API Keys

There are a total of four different types of API keys. API keys grant you access to the Uniramp API.

* **Test secret key**\
  \&#xNAN;*Example:* `sk_sand_LGZp4n7498RW5E1IwR3mJ9Ep`\
  Used to authenticate requests on the server (stored as an environment variable or in a credential management system) for the sandbox environment. This key can be used to perform API requests without restrictions. **Do not expose** this key on any client-side code or store this key on the version control system.<br>
* **Test publishable key**\
  \&#xNAN;*Example:* `pk_sand_LGZp4n7498RW5E1IwR3mJ9Ep`\
  Used to authenticate requests on the client for the sandbox environment. This key can be stored on the client-side code. API access using this key may be more restrictive.<br>
* **Production secret key**\
  \&#xNAN;*Example:* `sk_prod_LGZp4n7498RW5E1IwR3mJ9Ep`\
  Similar to the test secret key, use this key to authenticate requests on the production endpoint. **Do not expose** this key on any client-side code or store this key on the version control system.<br>
* **Production publishable key**\
  \&#xNAN;*Example:* `pk_prod_LGZp4n7498RW5E1IwR3mJ9Ep`\
  Similar to the test publisher key, use this key to authenticate requests on the production endpoint.


---

# 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.uniramp.com/product/api.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.
