# Utility Integration

### Step 1: Register As Client

To initiate the login process and receive an OTP, send a POST request to the authentication endpoint. The OTP will be sent to the email address you provide.

This call triggers the server to send an OTP to the provided email address. Check your email for the OTP code.

{% openapi src="/files/zZTgrjzo8UEmlTxIqrmc" path="/login/client" method="post" %}
[openapi: '3.0.yml](https://2149345960-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F60fGWUP51b2HhkWIrtTW%2Fuploads%2FQQ2XUo60tGd7WIRVNQBl%2Fopenapi%3A%20'3.0.yml?alt=media\&token=bc699aef-f42e-4792-a22a-006eb6d9b035)
{% endopenapi %}

### Step 2: Verify Client

Once you receive the OTP, verify it by sending another POST request to the same endpoint. This request should include both your email address and the OTP you received.

{% openapi src="/files/zZTgrjzo8UEmlTxIqrmc" path="/login/verify" method="post" %}
[openapi: '3.0.yml](https://2149345960-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F60fGWUP51b2HhkWIrtTW%2Fuploads%2FQQ2XUo60tGd7WIRVNQBl%2Fopenapi%3A%20'3.0.yml?alt=media\&token=bc699aef-f42e-4792-a22a-006eb6d9b035)
{% endopenapi %}

**Response:**

If the OTP is verified successfully, the response will include your API key:

```json
{
  "success": true,
  "API_KEY": "YOUR_API_KEY_HERE"
}
```

Use this API key for all subsequent API calls by including it in the header of your requests.


---

# 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.streamnft.tech/for-developers/api-reference/utility-integration.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.
