Get Investment Quote
curl --request GET \
--url https://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase} \
--header 'X-Auth-Token: <x-auth-token>' \
--header 'platform: <platform>' \
--header 'uuid: <uuid>' \
--header 'x-idempotency-key: <x-idempotency-key>'import requests
url = "https://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase}"
headers = {
"platform": "<platform>",
"uuid": "<uuid>",
"X-Auth-Token": "<x-auth-token>",
"x-idempotency-key": "<x-idempotency-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
platform: '<platform>',
uuid: '<uuid>',
'X-Auth-Token': '<x-auth-token>',
'x-idempotency-key': '<x-idempotency-key>'
}
};
fetch('https://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase}', 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://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Auth-Token: <x-auth-token>",
"platform: <platform>",
"uuid: <uuid>",
"x-idempotency-key: <x-idempotency-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"
"net/http"
"io"
)
func main() {
url := "https://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("platform", "<platform>")
req.Header.Add("uuid", "<uuid>")
req.Header.Add("X-Auth-Token", "<x-auth-token>")
req.Header.Add("x-idempotency-key", "<x-idempotency-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase}")
.header("platform", "<platform>")
.header("uuid", "<uuid>")
.header("X-Auth-Token", "<x-auth-token>")
.header("x-idempotency-key", "<x-idempotency-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["platform"] = '<platform>'
request["uuid"] = '<uuid>'
request["X-Auth-Token"] = '<x-auth-token>'
request["x-idempotency-key"] = '<x-idempotency-key>'
response = http.request(request)
puts response.read_bodyAPI Endpoints
Get Investment Quote
Retrieves a quote for purchasing a specific number of units of an investment product.
GET
/
quote
/
get-quote
/
{product-id}
/
{number-of-units-to-purchase}
Get Investment Quote
curl --request GET \
--url https://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase} \
--header 'X-Auth-Token: <x-auth-token>' \
--header 'platform: <platform>' \
--header 'uuid: <uuid>' \
--header 'x-idempotency-key: <x-idempotency-key>'import requests
url = "https://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase}"
headers = {
"platform": "<platform>",
"uuid": "<uuid>",
"X-Auth-Token": "<x-auth-token>",
"x-idempotency-key": "<x-idempotency-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
platform: '<platform>',
uuid: '<uuid>',
'X-Auth-Token': '<x-auth-token>',
'x-idempotency-key': '<x-idempotency-key>'
}
};
fetch('https://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase}', 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://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Auth-Token: <x-auth-token>",
"platform: <platform>",
"uuid: <uuid>",
"x-idempotency-key: <x-idempotency-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"
"net/http"
"io"
)
func main() {
url := "https://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("platform", "<platform>")
req.Header.Add("uuid", "<uuid>")
req.Header.Add("X-Auth-Token", "<x-auth-token>")
req.Header.Add("x-idempotency-key", "<x-idempotency-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase}")
.header("platform", "<platform>")
.header("uuid", "<uuid>")
.header("X-Auth-Token", "<x-auth-token>")
.header("x-idempotency-key", "<x-idempotency-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/{product-id}/{number-of-units-to-purchase}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["platform"] = '<platform>'
request["uuid"] = '<uuid>'
request["X-Auth-Token"] = '<x-auth-token>'
request["x-idempotency-key"] = '<x-idempotency-key>'
response = http.request(request)
puts response.read_bodyCalculates and returns a quote for purchasing a specified number of units of an investment product, including the total amount, fees, and investing amount.
Request Headers
The JWT Access Token obtained from the
/login or /refresh-token endpoint.Unique idempotency key for the request to prevent duplicate processing.
The date and time at which the request was initiated (ISO 8601 format).
The IP address of the customer making the request.
Unique identifier for the interaction/session.
Path Parameters
The unique identifier (UUID) of the investment product to get a quote for.
The number of units to purchase.
Code Examples
curl --location 'https://test-investment-products-service.fincode.software/api/v1/user/quote/get-quote/123e4567-e89b-12d3-a456-426614174000/100' \
--header 'X-Auth-Token: YOUR_JWT_ACCESS_TOKEN' \
--header 'x-idempotency-key: unique-key-12345' \
--header 'x-fapi-auth-date: 2024-01-15T10:30:00Z' \
--header 'x-fapi-customer-ip-address: 192.168.1.1' \
--header 'x-fapi-interaction-id: interaction-12345'
const axios = require('axios');
const BASE_URL = 'https://test-investment-products-service.fincode.software/api/v1/user/quote';
async function getQuote(accessToken, productId, numberOfUnits) {
try {
const response = await axios.get(
`${BASE_URL}/get-quote/${productId}/${numberOfUnits}`,
{
headers: {
'X-Auth-Token': accessToken,
'x-idempotency-key': `key-${Date.now()}`,
'x-fapi-auth-date': new Date().toISOString(),
'x-fapi-customer-ip-address': '192.168.1.1',
'x-fapi-interaction-id': `interaction-${Date.now()}`,
},
}
);
const quote = response.data.data;
console.log('Quote Details:');
console.log(`Total Amount: ${quote.totalAmount}`);
console.log(`Investing Amount: ${quote.investingAmount}`);
console.log(`Fee Amount: ${quote.feeAmount}`);
return quote;
} catch (error) {
console.error(
'Failed to get quote:',
error.response?.data || error.message
);
throw error;
}
}
// Usage Example
const accessToken = 'YOUR_JWT_ACCESS_TOKEN';
const productId = '123e4567-e89b-12d3-a456-426614174000';
getQuote(accessToken, productId, 100);
⌘I
