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
string
required
The JWT Access Token obtained from the
/login or /refresh-token endpoint.string
required
Unique idempotency key for the request to prevent duplicate processing.
string
required
The date and time at which the request was initiated (ISO 8601 format).
string
required
The IP address of the customer making the request.
string
required
Unique identifier for the interaction/session.
Path Parameters
string
required
The unique identifier (UUID) of the investment product to get a quote for.
number
required
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
