Create a virtual account
curl --request POST \
--url https://api.calmtreasury.xyz/v1/virtual-accounts \
--header 'Content-Type: application/json' \
--header 'x-calm-publishable-key: <api-key>' \
--data '
{
"wallet": "<string>"
}
'import requests
url = "https://api.calmtreasury.xyz/v1/virtual-accounts"
payload = { "wallet": "<string>" }
headers = {
"x-calm-publishable-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-calm-publishable-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({wallet: '<string>'})
};
fetch('https://api.calmtreasury.xyz/v1/virtual-accounts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.calmtreasury.xyz/v1/virtual-accounts",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'wallet' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-calm-publishable-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.calmtreasury.xyz/v1/virtual-accounts"
payload := strings.NewReader("{\n \"wallet\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-calm-publishable-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.calmtreasury.xyz/v1/virtual-accounts")
.header("x-calm-publishable-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"wallet\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.calmtreasury.xyz/v1/virtual-accounts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-calm-publishable-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"wallet\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}Virtual accounts
Create a virtual account
Create a bank-transfer virtual account.
POST
/
v1
/
virtual-accounts
Create a virtual account
curl --request POST \
--url https://api.calmtreasury.xyz/v1/virtual-accounts \
--header 'Content-Type: application/json' \
--header 'x-calm-publishable-key: <api-key>' \
--data '
{
"wallet": "<string>"
}
'import requests
url = "https://api.calmtreasury.xyz/v1/virtual-accounts"
payload = { "wallet": "<string>" }
headers = {
"x-calm-publishable-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-calm-publishable-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({wallet: '<string>'})
};
fetch('https://api.calmtreasury.xyz/v1/virtual-accounts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.calmtreasury.xyz/v1/virtual-accounts",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'wallet' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-calm-publishable-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.calmtreasury.xyz/v1/virtual-accounts"
payload := strings.NewReader("{\n \"wallet\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-calm-publishable-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.calmtreasury.xyz/v1/virtual-accounts")
.header("x-calm-publishable-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"wallet\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.calmtreasury.xyz/v1/virtual-accounts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-calm-publishable-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"wallet\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}Creates the account the user wires to, in one currency. Requires a registered
wallet that has accepted the terms of service and passed identity
verification.
Returns 204 with no body. Read
List virtual accounts for the banking details to
show the user.
Authorizations
Publishable key identifying the calling app.
Body
application/json
Response
Virtual account provisioned.