Skip to main content

Configuring Documents & Templates

Using Documents to Define Evidence Requirements

Documents are compliance requirements that define what evidence must be submitted. They are the foundational building blocks of the dMRV system and can be mapped across frameworks, independent of Facilities or Monitoring Periods. Documents are applied to monitoring periods by using Document Instances.

Listing Available Documents

To view all available documents, use GET /v0/documents:

Get documents
curl -X 'GET' "/v0/documents" \
-H "Accept: application/json" \
-H "Authorization: Bearer $BEARER"

Response Schema

id
required
string
label
required
string or null
description
required
string or null

Getting Document Details

To get details about a specific document, including guidance and templates:

Get document
curl -X 'GET' "/v0/documents/{id}" \
-H "Accept: application/json" \
-H "Authorization: Bearer $BEARER"
Review Guidance

Carefully review the details within each document, including guidance and templates. Whenever you need additional context, refer back to the relevant methodology documentation.

Creating a Document Instance

To create a document instance for a specific monitoring period, use POST /v0/document-instances:

Create document instance
curl -X 'POST' "/v0/document-instances" \
-H "Accept: application/json" \
-H "Authorization: Bearer $BEARER" \
-d '{ \
"documentId": "document-uuid-here", \
"monitoringPeriodId": "monitoring-period-uuid-here" \
}'

Required Fields

  • documentId - UUID of the document to instantiate
  • monitoringPeriodId - UUID of the monitoring period

Listing Document Instances

To view document instances:

Get document instances
curl -X 'GET' "/v0/document-instances" \
-H "Accept: application/json" \
-H "Authorization: Bearer $BEARER"

To get a specific document instance:

Get document instance
curl -X 'GET' "/v0/document-instances/{id}" \
-H "Accept: application/json" \
-H "Authorization: Bearer $BEARER"

Understanding Evidence Templates

Documents can include Evidence Templates to standardize data collection for CSV files. The functionality is more geared towards UI and Excel workflows, but can also be used programmatically.

Evidence Templates define:

  • Expected format and structure for evidence submissions for CSV files
  • Required columns and data types
  • Validation rules

Listing Evidence Templates

To view templates available in a document:

Get evidence templates
curl -X 'GET' "/v0/evidence-templates" \
-H "Accept: application/json" \
-H "Authorization: Bearer $BEARER"

Response Schema

Array of NumericEvidenceTemplateColumn (object) or TextEvidenceTemplateColumn (object) or DateEvidenceTemplateColumn (object)
id
required
string
label
required
string

To get details about a specific template:

Get evidence template
curl -X 'GET' "/v0/evidence-templates/{id}" \
-H "Accept: application/json" \
-H "Authorization: Bearer $BEARER"

Template Columns

Evidence templates can have different column types:

  • Numeric columns - For numerical data
  • Text columns - For text data
  • Date columns - For date/time data

Each column specifies:

  • id - Column identifier
  • label - Human-readable column name
  • type - Data type (numeric, text, date, etc.)
  • required - Whether the column is mandatory

Working with Expected Fields

Expected Fields are inputs within documents that can be referenced in Models. They include:

  • Text, numeric, date, or boolean inputs
  • Values that feed into model calculations
  • Data that can be validated against constraints

Expected Fields are created separately and covered in detail in the next section.

Best Practices

  1. Review all documents - Understand what's required before creating instances
  2. Plan data collection - Map out which data points are relevant to the LCA Model, which should be setup as Expected Fields
  3. Reference methodology docs - When in doubt, refer to the Puro.earth methodology documentation

Next Steps

Now that you understand documents and templates, you'll need to create Expected Fields to define the specific data points you'll collect and use in your models.