curl --request GET \
--url https://prod.truv.com/v1/templates/{template_id}/ \
--header 'X-Access-Client-Id: <api-key>' \
--header 'X-Access-Secret: <api-key>'import requests
url = "https://prod.truv.com/v1/templates/{template_id}/"
headers = {
"X-Access-Client-Id": "<api-key>",
"X-Access-Secret": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'X-Access-Client-Id': '<api-key>', 'X-Access-Secret': '<api-key>'}
};
fetch('https://prod.truv.com/v1/templates/{template_id}/', 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://prod.truv.com/v1/templates/{template_id}/",
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-Access-Client-Id: <api-key>",
"X-Access-Secret: <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"
"net/http"
"io"
)
func main() {
url := "https://prod.truv.com/v1/templates/{template_id}/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Access-Client-Id", "<api-key>")
req.Header.Add("X-Access-Secret", "<api-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://prod.truv.com/v1/templates/{template_id}/")
.header("X-Access-Client-Id", "<api-key>")
.header("X-Access-Secret", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://prod.truv.com/v1/templates/{template_id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Access-Client-Id"] = '<api-key>'
request["X-Access-Secret"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "48427a36d43c4d5aa6324bc06c692456",
"name": "My template",
"products": [
"income"
],
"default_for_products": true,
"created_at": "2022-05-04T11:30:00Z",
"updated_at": "2022-05-04T12:00:00Z",
"bridge": {},
"branding": {},
"orders": {},
"document_upload": {},
"data": {},
"reports": {
"hidden_sections": {
"deposits": true,
"large_deposits": true,
"historical_payment_summary": true
},
"days_requested": 60,
"large_deposit_threshold": 500,
"transaction_categories": [
"Food & Dining",
"Travel",
"Shopping"
],
"transaction_account_types": [
"CHECKING",
"SAVINGS"
],
"transaction_account_subtypes": [
"FIXED_ANNUITY",
"LOCKED_IN_RETIREMENT_ACCOUNT",
"PLAN_401_A"
],
"income_insights": {
"days_requested": 60,
"consumer_report_permissible_purpose": "WRITTEN_INSTRUCTION_OTHER"
},
"labeled_transaction_categories": [
"Food & Dining",
"Travel",
"Shopping"
]
},
"data_sources_flow": {
"employment": {
"flow": "fallback",
"data_sources": [
"payroll"
]
},
"income": {
"flow": "fallback",
"data_sources": [
"payroll"
]
},
"insurance": {
"flow": "fallback",
"data_sources": [
"insurance"
]
}
}
}{
"error": {
"code": "authentication_failed",
"message": "No such token"
}
}{
"error": {
"code": "not_authenticated",
"message": "Authentication credentials were not provided."
}
}{
"detail": "Not Found."
}Retrieve a customization template
This endpoint retrieves a customization template.
curl --request GET \
--url https://prod.truv.com/v1/templates/{template_id}/ \
--header 'X-Access-Client-Id: <api-key>' \
--header 'X-Access-Secret: <api-key>'import requests
url = "https://prod.truv.com/v1/templates/{template_id}/"
headers = {
"X-Access-Client-Id": "<api-key>",
"X-Access-Secret": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'X-Access-Client-Id': '<api-key>', 'X-Access-Secret': '<api-key>'}
};
fetch('https://prod.truv.com/v1/templates/{template_id}/', 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://prod.truv.com/v1/templates/{template_id}/",
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-Access-Client-Id: <api-key>",
"X-Access-Secret: <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"
"net/http"
"io"
)
func main() {
url := "https://prod.truv.com/v1/templates/{template_id}/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Access-Client-Id", "<api-key>")
req.Header.Add("X-Access-Secret", "<api-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://prod.truv.com/v1/templates/{template_id}/")
.header("X-Access-Client-Id", "<api-key>")
.header("X-Access-Secret", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://prod.truv.com/v1/templates/{template_id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Access-Client-Id"] = '<api-key>'
request["X-Access-Secret"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "48427a36d43c4d5aa6324bc06c692456",
"name": "My template",
"products": [
"income"
],
"default_for_products": true,
"created_at": "2022-05-04T11:30:00Z",
"updated_at": "2022-05-04T12:00:00Z",
"bridge": {},
"branding": {},
"orders": {},
"document_upload": {},
"data": {},
"reports": {
"hidden_sections": {
"deposits": true,
"large_deposits": true,
"historical_payment_summary": true
},
"days_requested": 60,
"large_deposit_threshold": 500,
"transaction_categories": [
"Food & Dining",
"Travel",
"Shopping"
],
"transaction_account_types": [
"CHECKING",
"SAVINGS"
],
"transaction_account_subtypes": [
"FIXED_ANNUITY",
"LOCKED_IN_RETIREMENT_ACCOUNT",
"PLAN_401_A"
],
"income_insights": {
"days_requested": 60,
"consumer_report_permissible_purpose": "WRITTEN_INSTRUCTION_OTHER"
},
"labeled_transaction_categories": [
"Food & Dining",
"Travel",
"Shopping"
]
},
"data_sources_flow": {
"employment": {
"flow": "fallback",
"data_sources": [
"payroll"
]
},
"income": {
"flow": "fallback",
"data_sources": [
"payroll"
]
},
"insurance": {
"flow": "fallback",
"data_sources": [
"insurance"
]
}
}
}{
"error": {
"code": "authentication_failed",
"message": "No such token"
}
}{
"error": {
"code": "not_authenticated",
"message": "Authentication credentials were not provided."
}
}{
"detail": "Not Found."
}Authorizations
Client ID
Client Access Key
Path Parameters
Response
Unique identifier of the template.
32"48427a36d43c4d5aa6324bc06c692456"
Template name
128Products list this template applies to
income, employment, deposit_switch, pll, insurance, transactions, assets, education If enabled, the template will be applied for the products by default
Timestamp when the template was created.
"2022-05-04T11:30:00Z"
Timestamp when the template was updated last time.
"2022-05-04T12:00:00Z"
Settings for bridge
Show child attributes
Show child attributes
Settings for branding
Show child attributes
Show child attributes
Settings for orders
Show child attributes
Show child attributes
Settings for document upload.
When the other document type is enabled, end users can upload arbitrary documents that don't fit the other categories. Truv does not parse these documents into structured data (they are captured only) — you can collect the uploaded files through the Uploaded Documents API (GET /v1/links/{link_id}/documents/).
Show child attributes
Show child attributes
Settings for returned documents data
Show child attributes
Show child attributes
Settings for reports
Show child attributes
Show child attributes
Data sources and flow configuration per product type. Supported product keys: employment, income, insurance.
Show child attributes
Show child attributes
Was this page helpful?