Prepared for American Carbon Registry. Api Integration Spec. Draft in review.
This document outlines the API integration specifications for data exchange between DaedArch Corporation's sensor-based Monitoring, Reporting, and Verification (MRV) platform and the American Carbon Registry (ACR) systems. The integration aims to facilitate the seamless transfer of carbon offset data, ensuring compliance with the ACR’s standards for carbon credits, which include permanence and additionality. This document shall serve as a technical reference for developers and system integrators involved in the implementation of this API.
The API integration will enable DaedArch to submit verified carbon offset data, including methodologies developed for agriculture and forestry, to the ACR. This integration will support both voluntary and compliance market credits, ensuring that all data adheres to the ACR's rigorous requirements.
The ACR API employs OAuth 2.0 for authentication. All requests must include a valid access token in the Authorization header.
Endpoint: https://api.americancarbonregistry.org/oauth/token
Request Format: `http POST /oauth/token HTTP/1.1 Host: api.americancarbonregistry.org Content-Type: application/x-www-form-urlencoded
grant_type=client_credentials&client_id={CLIENT_ID}&client_secret={CLIENT_SECRET} `
Response Format: `json { "access_token": "{ACCESS_TOKEN}", "token_type": "Bearer", "expires_in": 3600 } `
`http Authorization: Bearer {ACCESS_TOKEN} `
The primary endpoint for submitting carbon offset data is as follows:
Endpoint: https://api.americancarbonregistry.org/v1/carbon-offsets
Method: POST
Request Format: `http POST /v1/carbon-offsets HTTP/1.1 Host: api.americancarbonregistry.org Content-Type: application/json Authorization: Bearer {ACCESS_TOKEN}
{ "project_id": "{PROJECT_ID}", "methodology_id": "{METHODOLOGY_ID}", "offset_data": { "start_date": "{START_DATE}", "end_date": "{END_DATE}", "total_offset": {TOTAL_OFFSET}, "permanence": {PERMANENCE}, "additionality": {ADDITIONALITY}, "verification_chain": [ { "verifier_name": "{VERIFIER_NAME}", "verification_date": "{VERIFICATION_DATE}", "report_link": "{REPORT_LINK}" } ] } } `
Response Format: `json { "status": "success", "message": "Carbon offset data submitted successfully.", "data": { "submission_id": "{SUBMISSION_ID}", "timestamp": "{TIMESTAMP}" } } `
To retrieve submitted data, use the following endpoint:
Endpoint: https://api.americancarbonregistry.org/v1/carbon-offsets/{submission_id}
Method: GET
Request Format: `http GET /v1/carbon-offsets/{submission_id} HTTP/1.1 Host: api.americancarbonregistry.org Authorization: Bearer {ACCESS_TOKEN} `
Response Format: `json { "status": "success", "data": { "submission_id": "{SUBMISSION_ID}", "project_id": "{PROJECT_ID}", "methodology_id": "{METHODOLOGY_ID}", "offset_data": { "start_date": "{START_DATE}", "end_date": "{END_DATE}", "total_offset": {TOTAL_OFFSET}, "permanence": {PERMANENCE}, "additionality": {ADDITIONALITY}, "verification_chain": [ { "verifier_name": "{VERIFIER_NAME}", "verification_date": "{VERIFICATION_DATE}", "report_link": "{REPORT_LINK}" } ] }, "timestamp": "{TIMESTAMP}" } } `
The following fields shall be included in the carbon offset data model:
`json { "project_id": "12345", "methodology_id": "method_001", "offset_data": { "start_date": "2023-01-01", "end_date": "2023-12-31", "total_offset": 1500, "permanence": true, "additionality": true, "verification_chain": [ { "verifier_name": "ACR Verifier Inc.", "verification_date": "2023-02-20", "report_link": "https://example.com/report/12345" } ] } } `
The ACR API shall return standardized error responses to facilitate troubleshooting and integration. The error responses will include the following fields:
`json { "status": "error", "code": 400, "message": "Invalid request format. Please check the data model." } `
To ensure fair usage and system performance, the ACR API will enforce rate limits on API requests. The following limits shall apply:
When the rate limit is exceeded, the API shall respond with a 429 status code and the following message:
`json { "status": "error", "code": 429, "message": "Rate limit exceeded. Please try again later." } `
To ensure compliance with ACR standards, DaedArch shall implement the following conformity assessment procedures:
This API Integration Specification provides the necessary guidelines and requirements for facilitating data exchange between DaedArch and the American Carbon Registry. Adherence to these specifications will ensure compliance with ACR standards, thereby supporting the integrity and reliability of carbon offset data in both voluntary and compliance markets.
All parties involved in the integration process shall review this document thoroughly and ensure that their systems and processes align with the outlined requirements.