# Intent Key

mtnPay use's a new concept of "intents" to validate a transactions authenticity as part of our security model. Inputs to your /pay api call are hashed into a public key and included onto your transaction. The public key is deterministic based on your input which means that transactions can be deemed secure by checking a transaction against your refrence key + intent key, pair.

The /intent endpoint matches the /pay endpoint query parameters 1:1. You should use it by passing the same query parameters you intend to pass along to your /pay api call.

This call should be made before you make the call to your /pay api call.

```python
import requests #make HTTP requests

wallet='Ar7XrWtrGsB2xCnrTFLs9HyJ1bA62gXCAUZa8Fa7VMc5' #receiver
payerToken = 'usdc'
size = 0.1

#base URL
api_url = 'http://api.mtnapi.com/intent'
#query string parameters
params = {'wallet': wallet, 'size' : size, 'payerToken' : payerToken}
#make the GET request
intent_req = requests.get(url = api_url, params=params)
# get the intent value
intent = intent_req.json()['intent']

print(intent.xyz)
```


---

# 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://mtnpay.gitbook.io/api-docs/reference/api-reference/intent-key.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.
