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
Templates endpointTemplates endpoint description
/templatesGET - Retrieve a list of report templates.
/reports/{reportId}/templateGET - 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/categoriesGET - 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 URL:

https://platform-reporting.vertexcloud.com/api/v1/templates

List templates request

All request parameters are optional. Passing a request with no parameters returns all available records.

Parameter nameParameter formatParameter description
typestring enumFilter by template type. Allowed: STANDARD_REPORT or DATA_EXTRACT.
categoryIduuidFilter by category UUID. Supports multiple values (repeated parameter).
productCodestring enumFilter by product code. Allowed: OSERIES
namestringFilter by template name (case-insensitive substring match).
displayNamestringFilter by template display name (case-insensitive substring match).
offsetintegerNumber of items to skip (for pagination).
Must be greater than or equal to 0. Defaults to 0.
limitintegerMaximum number of items to return.
Must be between 1 to 500. Defaults to 25.
sortBystring enumField to sort by. Allowed: NAME, TEMPLATE_TYPE, CATEGORY_NAME.
Defaults to NAME.
sortOrderstring enumSort direction. Allowed: ASC or DESC.
Defaults to ASC.

List templates request example

curl --request GET \
     --url 'https://platform-reporting.vertexcloud.com/api/v1/templates?type=DATA_EXTRACT&productCode=OSERIES' \
     --header 'accept: application/json'

List templates response

The API wraps the results in an envelope with these top-level response fields.

Response fieldTypeDescription
countintegerTotal number of report results for the specified definition.
Must be greater than or equal to 0.
offsetintegerNumber of items skipped.
Must be greater than or equal to 0.
limitintegerMaximum items per page.
Must be greater than or equal to 1.
valuearray of objectsArray of TemplateSummary objects.

The following table lists the fields you receive inside each item in the value[] array.

Response fieldTypeDescription
IduuidUnique identifier of this report result.
NamestringHuman-readable name of this report result
displayNamestringHuman-readable name of the template.
descriptionstring | nullShort description of the template.
categoryobject | nullReport category.
Contains: id (UUID) and name (string)
productCodesarray of stringsList of product codes associated with this template.
supportedFormatsarray of objectsSupported output formats for this template.
File format of the generated report: CSV, HTML, PDF, RTF, XML, XLS, XLSX, TXT.
templateTypestring enumTemplate classification: STANDARD_REPORT or DATA_EXTRACT.
fieldsCountintegerNumber of fields available in this template.
Must be greater than or equal to 0.

List templates response example

{
  "count": 0,
  "offset": 0,
  "limit": 0,
  "value": [
    {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "name": "string",
      "displayName": "string",
      "description": "string",
      "category": {
        "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "name": "string"
      },
      "productCodes": [
        "string"
      ],
      "supportedFormats": [
        "CSV"
      ],
      "templateType": "DATA_EXTRACT",
      "fieldsCount": 0
    }
  ]
}

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 URL:

https://platform-reporting.vertexcloud.com/api/v1/reports/{reportId}/template

Get template for report definition request

Only the reportId parameter is required as a path parameter.

Parameter nameParameter formatParameter description
reportId RequireduuidUUID of the report definition.

Get template for report definition request example

curl --request GET \
     --url https://platform-reporting.vertexcloud.com/api/v1/reports/f81d4fae-7dec-11d0-a765-00a0c91e6bf6/template \
     --header 'accept: application/json'

Get template for report definition 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 fieldTypeDescription
idstring (UUID)Unique identifier for the template.
namestringHuman‑readable template name.
displayNamestringHuman-readable name of the template.
descriptionstringOptional description of the template.
categoryobjectContains: id (UUID), name (string).
productCodesarray of stringsList of product codes associated with the template.
supportedFormatsarray of stringsSupported output formats for the template.
templateTypestring enumTemplate classification: STANDARD_REPORT or DATA_EXTRACT.

The following fields appear only when the template type is STANDARD-REPORT.

Response fieldTypeDescription
parametersarray[StandardTemplateParameter]List of parameters you must or may supply when running the report.
parameters\[].namestringThe parameter name.
parameters\[].descriptionstringDescription of the parameter.
parameters\[].typeDataTypeThe data type associated with the parameter.
parameters\[].isRequiredbooleanIndicates whether the parameter must be provided.
parameters\[].defaultstring (nullable)Default value applied if none is provided.

The following fields appear only when the template type is DATA_EXTRACT.

Response fieldTypeDescription
fieldsCountintegerNumber of fields available in this template.
Must be greater than or equal to 0.
fieldsarray[DataExtractField]List of fields available in the extract template.

The following DataType variants are used in both template types. They appear under parameters[].type or fields[].dataType.

VariantDescription
SimpleA primitive data type (TEXT, DECIMAL, NUMBER, BOOLEAN, CURRENCY).
PatternedA data type with a format or pattern (DATE or TIMESTAMP with formatting).
ArrayA list of values of a specified DataType.

Get template for report definition response example

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 URL:

https://platform-reporting.vertexcloud.com/api/v1/templates/{templateId}

Get template details request

Only the templateId parameter is required as a path parameter.

Parameter nameParameter formatParameter description
templateId RequireduuidUnique identifier of the template.

Get template details request example

curl --request GET \
     --url https://platform-reporting.vertexcloud.com/api/v1/templates/f81d4fae-7dec-11d0-a765-00a0c91e6bf6 \
     --header 'accept: application/json'

Get template details 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 fieldTypeDescription
idstring (UUID)Unique identifier for the template.
namestringHuman‑readable template name.
displayNamestringHuman-readable name of the template.
descriptionstringOptional description of the template.
categoryobjectReport category.
Contains: id (UUID) and name (string)
productCodesarray of stringsList of product codes associated with the template.
supportedFormatsarray of stringsSupported output formats for the template.
templateTypestring enumTemplate classification. Either STANDARD_REPORT or DATA_EXTRACT

The following fields appear only when the template type is STANDARD_REPORT.

Response fieldTypeDescription
parametersarray[StandardTemplateParameter]List of parameters you must or may supply when running the report.
parameters\[].namestringThe parameter name.
parameters\[].descriptionstringDescription of the parameter.
parameters\[].typeDataTypeThe data type associated with the parameter.
parameters\[].isRequiredbooleanIndicates whether the parameter must be provided.
parameters\[].defaultstring (nullable)Default value applied if none is provided.

The following fields appear only when the template type is DATA_EXTRACT.

Response fieldTypeDescription
fieldsarray[DataExtractField]List of fields available in the extract template.
fields\[].namestringThe name of the extract field.
fields\[].dataTypeDataTypeThe data type associated with the field.

The following dataType variants are used in both template types. They appear under parameters[].type or fields[].dataType.

VariantDescription
SimpleA primitive data type (TEXT, DECIMAL, NUMBER, BOOLEAN, CURRENCY).
PatternedA data type with a format or pattern (DATE or TIMESTAMP with formatting).
ArrayA list of values of a specified DataType.

Get template details response example

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 URL:

https://platform-reporting.vertexcloud.com/api/v1/templates/categories

List template categories request

The request returns all available template categories.

List template categories request example

curl --request GET \
     --url https://platform-reporting.vertexcloud.com/api/v1/templates/categories \
     --header 'accept: application/json'

List template categories 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 fieldTypeDescription
countintegerTotal number of report results for the specified definition.
valuearrayArray of TemplateCategory objects.

The following table lists the TemplateCategory fields you receive inside each item in the value[] array.

Response fieldTypeDescription
iduuidUnique identifier of the category.
namestringDisplay name for the category.

List template categories response example

{
  "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"
    }
  ]
}