---
title: "Set the default offset and/or removal product"
method: PUT
path: "/v1/offsets/defaults"
tags: ["Offsets"]
---

# Set the default offset and/or removal product

`PUT /v1/offsets/defaults`

## Request

- Base URL: `https://carbonguru.io`
- URL: `https://carbonguru.io/v1/offsets/defaults`
- Auth: HTTP bearer

What the web's Set as Default does. Name offset, removal or both, each a product_id from /v1/offset-products or its numeric id; the removal default is a Stripe Climate product. An API key may set the defaults only once the account switched API purchasing on (403 key_not_permitted otherwise); a store key never.

## Request body

- object
  - `offset` union
    - string
    - integer
  - `removal` union
    - string
    - integer

## Response `200`

{defaults: {offset, removal}}, read back.

## Other responses

- `401`: No valid credential. Every authentication failure returns this one document.
- `402`: The account's plan does not include this capability. Carries min_tier and upgrade_url.
- `403`: A missing scope, an exhausted analysis allowance, or an object that is not the caller's.
- `404`: No such resource.
- `422`: The request's fields are wrong. errors[] names them.

---

[API](https://skmtc.dev/carbonguru/apis/carbonguru-api.md) · [All operations](https://skmtc.dev/carbonguru/apis/carbonguru-api/llms.txt) · [OpenAPI document](https://skmtc.dev/carbonguru/apis/carbonguru-api/revisions/26dcbe7a8500?raw)
