Templates
Use the Solution Reporting API to access the templates that define the structure, fields, and configuration options available for generating report output. The Templates endpoints let developers retrieve lists of all published templates or fetch detailed template definitions by ID. This provides the foundational metadata that developers need to understand what data each template exposes and how they can customize reports.
Base URL:
https://platform-reporting.vertexcloud.com/api/v1/templates
| Reports endpoint | Endpoint description |
|---|---|
/templates | GET - Retrieve a list of report templates. |
/reports/{reportId}/template | GET - Retrieve the template associated with a specific report definition. The template contains the structure and configuration used by the report. |
/templates/{templateId} | GET - Retrieve a single template definition. |
/templates/categories | GET - Retrieve a list of all available template categories. Categories are used to organize and group templates. |
List templates
Retrieve a list of report templates, optionally filtered by type, category, product code, and name.
Request
All request parameters are optional. Passing a request with no parameters returns all available records.
| Parameter name | Parameter format | Parameter description |
|---|---|---|
type | string enum | Filter by template type. • STANDARD_REPORT • DATA_EXTRACT |
categoryId | uuid | Filter by a unique category ID. |
productCode | string enum | Filter by product code. • OSERIES |
name | string | Filter by template name (case-insensitive substring match). |
Example request
curl --request GET \
--url 'https://platform-reporting.vertexcloud.com/api/v1/templates?type=DATA_EXTRACT&productCode=OSERIES' \
--header 'accept: application/json'
Response
The API wraps the results in an envelope with these top-level response fields.
| Response field | Type | Description |
|---|---|---|
count | integer | Total number of matching templates. |
value | array | Array of TemplateSummary objects. |
The following table lists the TemplateSummary fields you receive inside each item in the value[] array.
| Response field | Type | Description |
|---|---|---|
id | string (UUID) | Unique identifier for the template. |
name | string | Human‑readable template name. |
description | string | Optional description of the template. |
category | object | Contains: • id (UUID) • name (string) |
productCodes | array of strings | List of product codes associated with the template. |
supportedFormats | array of strings | Supported output formats for the template. |
templateType | string enum | Template classification. • STANDARD_REPORT • DATA_EXTRACT |
Example response
{
"count": 2,
"value": [
{
"id": "08a4cb0d-1b2b-4bb2-80c0-1af904205d85",
"name": "Sales Summary Template",
"description": "Template providing aggregated sales and tax amounts by jurisdiction.",
"category": {
"id": "3c2d4e21-08bd-4ea1-8ad8-fd0e3ca72511",
"name": "Sales Reports"
},
"productCodes": [
"OSERIES"
],
"supportedFormats": [
"CSV",
"PDF",
"XLSX"
],
"templateType": "STANDARD_REPORT"
},
{
"id": "7f9b92c0-3f61-46da-9d77-9538e47b7c6f",
"name": "Transaction Detail Extract",
"description": "Data extract template including transaction-level tax calculation details.",
"category": {
"id": "6f3c0521-5c88-4987-bb23-4fb3467b98fa",
"name": "Data Extracts"
},
"productCodes": [
"OSERIES"
],
"supportedFormats": [
"CSV",
"XML",
"XLSX"
],
"templateType": "DATA_EXTRACT"
}
]
}
Get template for report definition
Retrieve the template associated with a specific report definition. The template contains the structure and configuration used by the report.
Request
Only the reportId parameter is required as a path parameter.
| Parameter name | Parameter format | Parameter description |
|---|---|---|
reportId | uuid | Unique identifier of the report definition. |
Example request
curl --request GET \
--url https://platform-reporting.vertexcloud.com/api/v1/reports/f81d4fae-7dec-11d0-a765-00a0c91e6bf6/template \
--header 'accept: application/json'
Response
The API returns a TemplateDetails object that resolves to StandardTemplateDetails or DataExtractTemplateDetails.
The following fields appear for all template types returned by the endpoint.
| Response field | Type | Description |
|---|---|---|
id | string (UUID) | Unique identifier for the template. |
name | string | Human‑readable template name. |
description | string | Optional description of the template. |
category | object | Contains: • id (UUID) • name (string) |
productCodes | array of strings | List of product codes associated with the template. |
supportedFormats | array of strings | Supported output formats for the template. |
templateType | string enum | Template classification. • STANDARD_REPORT • DATA_EXTRACT |
The following fields appear only when the template type is STANDARD-REPORT.
| Response field | Type | Description |
|---|---|---|
| parameters | array[StandardTemplateParameter] | List of parameters you must or may supply when running the report. |
| parameters[].name | string | The parameter name. |
| parameters[].description | string | Description of the parameter. |
| parameters[].type | DataType | The data type associated with the parameter. |
| parameters[].isRequired | boolean | Indicates whether the parameter must be provided. |
| parameters[].default | string (nullable) | Default value applied if none is provided. |
The following fields appear only when the template type is DATA_EXTRACT.
| Response field | Type | Description |
|---|---|---|
| fields | array[DataExtractField] | List of fields available in the extract template. |
| fields[].name | string | The name of the extract field. |
| parameters[].dataType | DataType | The data type associated with the field. |
The following DataType variants are used in both template types. They appear under parameters[].type or fields[].dataType.
| Variant | Description |
|---|---|
| Simple | A primitive data type (TEXT, DECIMAL, NUMBER, BOOLEAN, CURRENCY). |
| Patterned | A data type with a format or pattern (DATE or TIMESTAMP with formatting). |
| Array | A list of values of a specified DataType. |
Example response
The following sample is a DATA_EXTRACT template response.
{
"id": "b278c89e-4e37-4b70-9a63-9c9849bd91dd",
"name": "Transaction Detail Extract",
"description": "Provides detailed transaction-level tax calculation data.",
"category": {
"id": "6f3c0521-5c88-4987-bb23-4fb3467b98fa",
"name": "Data Extracts"
},
"productCodes": [
"OSERIES"
],
"supportedFormats": [
"CSV",
"XML",
"XLSX"
],
"templateType": "DATA_EXTRACT",
"fields": [
{
"name": "TransactionId",
"dataType": {
"type": "simple",
"baseType": "TEXT"
}
},
{
"name": "TransactionDate",
"dataType": {
"type": "patterned",
"baseType": "DATE",
"pattern": "yyyy-MM-dd"
}
},
{
"name": "Jurisdiction",
"dataType": {
"type": "simple",
"baseType": "TEXT"
}
},
{
"name": "TaxAmount",
"dataType": {
"type": "simple",
"baseType": "DECIMAL"
}
}
]
}
Get template details
Retrieve a single template definition. The payload shape depends on the template type. STANDARD templates include parameters. DATA_EXTRACT templates include fields.
Request
Only the templateId parameter is required as a path parameter.
| Parameter name | Parameter format | Parameter description |
|---|---|---|
templateId | uuid | Unique identifier of the template. |
Example request
curl --request GET \
--url https://platform-reporting.vertexcloud.com/api/v1/templates/f81d4fae-7dec-11d0-a765-00a0c91e6bf6 \
--header 'accept: application/json'
Response
The API returns a TemplateDetails object that resolves to StandardTemplateDetails or DataExtractTemplateDetails.
The following fields appear for all template types returned by the endpoint.
| Response field | Type | Description |
|---|---|---|
id | string (UUID) | Unique identifier for the template. |
name | string | Human‑readable template name. |
description | string | Optional description of the template. |
category | object | Contains: • id (UUID) • name (string) |
productCodes | array of strings | List of product codes associated with the template. |
supportedFormats | array of strings | Supported output formats for the template. |
templateType | string enum | Template classification. • STANDARD_REPORT • DATA_EXTRACT |
The following fields appear only when the template type is STANDARD-REPORT.
| Response field | Type | Description |
|---|---|---|
parameters | array[StandardTemplateParameter] | List of parameters you must or may supply when running the report. |
parameters\[].name | string | The parameter name. |
parameters\[].description | string | Description of the parameter. |
parameters\[].type | DataType | The data type associated with the parameter. |
parameters\[].isRequired | boolean | Indicates whether the parameter must be provided. |
parameters\[].default | string (nullable) | Default value applied if none is provided. |
The following fields appear only when the template type is DATA_EXTRACT.
| Response field | Type | Description |
|---|---|---|
fields | array[DataExtractField] | List of fields available in the extract template. |
fields\[].name | string | The name of the extract field. |
parameters\[].dataType | DataType | The data type associated with the field. |
The following DataType variants are used in both template types. They appear under parameters[].type or fields[].dataType.
| Variant | Description |
|---|---|
| Simple | A primitive data type (TEXT, DECIMAL, NUMBER, BOOLEAN, CURRENCY). |
| Patterned | A data type with a format or pattern (DATE or TIMESTAMP with formatting). |
| Array | A list of values of a specified DataType. |
Example response
The following sample is a STANDARD_REPORT template response.
{
"id": "08a4cb0d-1b2b-4bb2-80c0-1af904205d85",
"name": "Sales Summary Report",
"description": "Provides aggregated sales and tax totals by jurisdiction and period.",
"category": {
"id": "3c2d4e21-08bd-4ea1-8ad8-fd0e3ca72511",
"name": "Sales Reports"
},
"productCodes": [
"OSERIES"
],
"supportedFormats": [
"CSV",
"PDF",
"XLSX"
],
"templateType": "STANDARD_REPORT",
"parameters": [
{
"name": "StartDate",
"description": "Beginning date for the reporting period.",
"type": {
"type": "patterned",
"baseType": "DATE",
"pattern": "yyyy-MM-dd"
},
"isRequired": true,
"default": null
},
{
"name": "EndDate",
"description": "Ending date for the reporting period.",
"type": {
"type": "patterned",
"baseType": "DATE",
"pattern": "yyyy-MM-dd"
},
"isRequired": true,
"default": null
},
{
"name": "IncludeJurisdictionBreakdown",
"description": "Whether to include jurisdiction-level detail.",
"type": {
"type": "simple",
"baseType": "BOOLEAN"
},
"isRequired": false,
"default": "false"
}
]
}
List template categories
Retrieve a list of all available template categories. Categories are used to organize and group templates.
Request
The request returns all available template categories.
Example request
curl --request GET \
--url https://platform-reporting.vertexcloud.com/api/v1/templates/categories \
--header 'accept: application/json'
Response
The response returns a list of all available template categories, each identifying the category’s unique ID and display name.
The API wraps the results in an envelope with these top-level response fields.
| Response field | Type | Description |
|---|---|---|
count | integer | Total number of report results for the specified definition. |
value | array | Array of TemplateCategory objects. |
The following table lists the TemplateCategory fields you receive inside each item in the value[] array.
| Response field | Type | Description |
|---|---|---|
id | uuid | Unique identifier of the category. |
name | string | Display name for the category. |
Example response
{
"count": 4,
"value": [
{
"id": "3c2d4e21-08bd-4ea1-8ad8-fd0e3ca72511",
"name": "Sales Reports"
},
{
"id": "6f3c0521-5c88-4987-bb23-4fb3467b98fa",
"name": "Data Extracts"
},
{
"id": "a7f4d011-1e46-49b9-8ecf-1fcb46c35900",
"name": "Taxability Reports"
},
{
"id": "c1bc8b17-4a6a-43a9-a7b3-f41a3579a220",
"name": "Configuration Reports"
}
]
}
Updated about 16 hours ago
