Skip to main content
POST
/
partner
/
v1
/
deposits
Create a deposit address
curl --request POST \
  --url https://api.machines.cash/partner/v1/deposits \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "currency": "usdc",
  "network": "base"
}
'
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({currency: 'usdc', network: 'base'})
};

fetch('https://api.machines.cash/partner/v1/deposits', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
import requests

url = "https://api.machines.cash/partner/v1/deposits"

payload = {
"currency": "usdc",
"network": "base"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
{
  "ok": true,
  "data": {
    "deposit": {
      "id": "<string>",
      "contractId": "<string>",
      "changeNowId": "<string>",
      "fromCurrency": "<string>",
      "fromNetwork": "<string>",
      "minAmount": 123,
      "maxAmount": 123,
      "depositAddress": "<string>",
      "payinExtraId": "<string>",
      "chainId": 123,
      "createdAt": "2023-11-07T05:31:56Z",
      "updatedAt": "2023-11-07T05:31:56Z"
    }
  },
  "summary": "<string>",
  "errors": [
    {
      "code": "invalid_request",
      "message": "missing required field",
      "field": "<string>"
    }
  ],
  "next": {
    "pollAfterMs": 1,
    "suggestedTool": "<string>",
    "suggestedArgs": {}
  }
}
{
"ok": true,
"summary": "invalid request",
"errors": [
{
"code": "invalid_request",
"message": "missing required field",
"field": "<string>"
}
],
"next": {
"pollAfterMs": 1,
"suggestedTool": "<string>",
"suggestedArgs": {}
}
}
{
"ok": true,
"summary": "invalid request",
"errors": [
{
"code": "invalid_request",
"message": "missing required field",
"field": "<string>"
}
],
"next": {
"pollAfterMs": 1,
"suggestedTool": "<string>",
"suggestedArgs": {}
}
}
{
"ok": true,
"summary": "invalid request",
"errors": [
{
"code": "invalid_request",
"message": "missing required field",
"field": "<string>"
}
],
"next": {
"pollAfterMs": 1,
"suggestedTool": "<string>",
"suggestedArgs": {}
}
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

X-Open-Responses
enum<string>

Return Open Responses-compatible output when set (replaces the default response envelope).

Available options:
1,
true
X-Open-Responses-Call-Id
string

Tool call id used for function_call_output items when Open Responses mode is enabled.

Minimum string length: 1

Body

application/json
currency
string
required

Asset ticker. Production uses usdc; sandbox uses rusd.

Example:

"usdc"

network
string
required

Network slug. Production uses base; sandbox uses base (Base Sepolia).

Example:

"base"

amount
number

Optional amount to deposit. optional.

Response

Deposit created

ok
boolean
required
data
object
required
summary
string
required
errors
object[]
required
next
object