JavaScript
import Ivy from '@getivy/node-sdk';
const client = new Ivy({
apiKey: process.env['IVY_API_KEY'], // This is the default and can be omitted
});
const response = await client.fx.execute({
sourceAccountId: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
sourceAmount: 'sourceAmount',
targetAccountId: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});
console.log(response.id);curl --request POST \
--url https://api.getivy.de/api/service/fx/execute \
--header 'Content-Type: application/json' \
--header 'X-Ivy-Api-Key: <api-key>' \
--data '
{
"sourceAmount": "<string>",
"sourceAccountId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"targetAccountId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"idempotencyKey": "<string>",
"metadata": {}
}
'import requests
url = "https://api.getivy.de/api/service/fx/execute"
payload = {
"sourceAmount": "<string>",
"sourceAccountId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"targetAccountId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"idempotencyKey": "<string>",
"metadata": {}
}
headers = {
"X-Ivy-Api-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.getivy.de/api/service/fx/execute",
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([
'sourceAmount' => '<string>',
'sourceAccountId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'targetAccountId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'idempotencyKey' => '<string>',
'metadata' => [
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Ivy-Api-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.getivy.de/api/service/fx/execute"
payload := strings.NewReader("{\n \"sourceAmount\": \"<string>\",\n \"sourceAccountId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"targetAccountId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"idempotencyKey\": \"<string>\",\n \"metadata\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Ivy-Api-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.getivy.de/api/service/fx/execute")
.header("X-Ivy-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"sourceAmount\": \"<string>\",\n \"sourceAccountId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"targetAccountId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"idempotencyKey\": \"<string>\",\n \"metadata\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getivy.de/api/service/fx/execute")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Ivy-Api-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"sourceAmount\": \"<string>\",\n \"sourceAccountId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"targetAccountId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"idempotencyKey\": \"<string>\",\n \"metadata\": {}\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"rate": "<string>",
"targetAmount": "<string>",
"sourceAmount": "<string>",
"metadata": {}
}FX
Execute FX
Execute a standalone foreign exchange transaction.
POST
/
api
/
service
/
fx
/
execute
JavaScript
import Ivy from '@getivy/node-sdk';
const client = new Ivy({
apiKey: process.env['IVY_API_KEY'], // This is the default and can be omitted
});
const response = await client.fx.execute({
sourceAccountId: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
sourceAmount: 'sourceAmount',
targetAccountId: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});
console.log(response.id);curl --request POST \
--url https://api.getivy.de/api/service/fx/execute \
--header 'Content-Type: application/json' \
--header 'X-Ivy-Api-Key: <api-key>' \
--data '
{
"sourceAmount": "<string>",
"sourceAccountId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"targetAccountId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"idempotencyKey": "<string>",
"metadata": {}
}
'import requests
url = "https://api.getivy.de/api/service/fx/execute"
payload = {
"sourceAmount": "<string>",
"sourceAccountId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"targetAccountId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"idempotencyKey": "<string>",
"metadata": {}
}
headers = {
"X-Ivy-Api-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.getivy.de/api/service/fx/execute",
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([
'sourceAmount' => '<string>',
'sourceAccountId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'targetAccountId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'idempotencyKey' => '<string>',
'metadata' => [
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Ivy-Api-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.getivy.de/api/service/fx/execute"
payload := strings.NewReader("{\n \"sourceAmount\": \"<string>\",\n \"sourceAccountId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"targetAccountId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"idempotencyKey\": \"<string>\",\n \"metadata\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Ivy-Api-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.getivy.de/api/service/fx/execute")
.header("X-Ivy-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"sourceAmount\": \"<string>\",\n \"sourceAccountId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"targetAccountId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"idempotencyKey\": \"<string>\",\n \"metadata\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getivy.de/api/service/fx/execute")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Ivy-Api-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"sourceAmount\": \"<string>\",\n \"sourceAccountId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"targetAccountId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"idempotencyKey\": \"<string>\",\n \"metadata\": {}\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"rate": "<string>",
"targetAmount": "<string>",
"sourceAmount": "<string>",
"metadata": {}
}Authorizations
API key for authentication
Headers
Idempotency key for safe retries. Takes precedence over the deprecated body field.
Body
application/json
The amount of source currency to convert. Minimum: 10
The source account id.
The target account id.
Deprecated: use the Idempotency-Key request header instead.
Additional metadata.
Show child attributes
Show child attributes
Response
200 - application/json
FX executed successfully
The fxId attached to the transfer.
The exchange rate for the given currency pair.
The source currency code
Available options:
EUR, GBP, USDC The target currency code
Available options:
EUR, GBP, USDC The status of the FX transaction.
Available options:
initiated, succeeded, failed The amount of the target currency for the given source amount.
The amount of source currency to convert.
Additional metadata.
Show child attributes
Show child attributes
Was this page helpful?
⌘I