# v17 (retired)

### Status

`Retired`  March 8, 2026

No longer supported.

### Summary

v17 is primarily focused on improving the stability and performance of order processing. It includes a few breaking changes from v16 (highlighted below).

### Release notes

#### **General**

* Removed <mark style="color:red;">`network`</mark> query parameter from the following endpoints. Default network is <mark style="color:red;">`Polygon`</mark>.
  * **GET** `/activities`
  * **GET** `/carbonProjects`
  * **GET** `/carbonProjects/:id`
  * **GET** `/categories`
  * **GET** `/countries`
  * **GET** `/listings/:id`
  * **GET** `/listings`
  * **GET** `/purchases/:id`
  * **GET** `/purchases`
  * **GET** `/prices`
  * **GET** `/retirements`
  * **GET** `/retirements/:id`
  * **GET** `/retirements/:id/provenance`
  * **GET** `/vintages`

#### **Endpoints updated**

**GET** `/carbonProjects`

* \[⚠️BREAKING CHANGE] Response entries are now paginated
* Added a **block\_long\_description** field that contains a project description in **PortableText** format

**GET** `/carbonProjects/:id`

* Added a **block\_long\_description** field that contains a project description in **PortableText** format

#### **Endpoints added**

**GET** `/assessors`

* Returns the list of known project assessors (related to project verification and validation)

**GET** `/developers`

* Returns the list of known project developers

**GET** `/retirements/:beneficiaryAddress/:retirementIndex`

* Get retirement details for a completed retirement order. This replaces the endpoint that was present in previous versions (see [Endpoints removed](#endpoints-removed) below)

**GET** `/retirements/:beneficiaryAddress/:retirementIndex/provenance`

* Get the credit provenance history leading up to a completed retirement. This replaces the `/provenance` endpoint that was present in previous versions (see [Endpoints removed](#endpoints-removed) below)

#### **Endpoints removed**

**GET** `/retirements/:hash`

* \[⚠️BREAKING CHANGE] This endpoint was removed because a transaction hash may now include more than one retirement. It has been replaced by `/retirements/:beneficiaryAddress/:retirementIndex`. See [Endpoints added ](#endpoints-added)for more info. See [migration path](#migration-path) for alternatives.

**GET** `/retirements/:hash/provenance`

* \[⚠️BREAKING CHANGE] This endpoint was removed because a transaction hash may now include more than one retirement. It has been replaced by `/retirements/:beneficiaryAddress/:retirementIndex`. See [Endpoints added ](#endpoints-added)for more info. See [migration path](#migration-path) for alternatives.

### Migration Path

* **Carbon Projects endpoint**
  * The [`/carbonProjects`](https://v17.api.carbonmark.com/#/paths/carbonProjects/get) endpoint is now paginated. Your UI or system may need to be refactored to consume pages, rather than a complete list of projects. The project data is now provided in the **items** attribute of the response.
* **Retirement endpoints**
  * If you were using the **GET** `/retirements/:hash` and **GET** `/retirements/:hash/provenance` you should now use the new endpoints:
    * **GET** `/retirements/:beneficiaryAddress/:retirementIndex`
    * **GET** `/retirements/:beneficiaryAddress/:retirementIndex/provenance`
  * If you only have the transaction hash you can still use the hash to filter on the **GET** `/retirements` endpoint, which returns a list.
    * Example using hash to filter:\
      <https://v17.api.carbonmark.com/retirements?hash=0x7b63b79d25c76b6f179360ebd5f9f3c2435d3fdf2dda7e1d3ab43cf4f90e4a04>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.carbonmark.com/carbonmark-api/versioning-and-release-process/v17-retired.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
