---
title: "Patch Component"
method: PATCH
path: "/components/{id}"
---

# Patch Component

`PATCH /components/{id}`

Updates a component in the Isometric system. Associated GHG entries will be recalculated, if they are not in an immutable state.

## Path parameters

- `id` string, required

## Headers

- `x-client-secret` string, required — A secret token identifying the client connecting to the API

## Request body

- PatchComponentRequest
  - `display_name` union
    - string
    - Undefined — An explicit representation of an undefined value in the Isometric REST API. Used, for example, to distinguish between explicit null inputs that clear a property, and not provided inputs which leave the property as is.
      - `__typename` 'Undefined' — Contains the name of the model (formally, OpenAPI Schema Object). Used to determine the type of data, for example when two different types are unioned.
  - `description` union
    - string — A description of the component. Must be at most 2000 characters long.
    - Undefined — An explicit representation of an undefined value in the Isometric REST API. Used, for example, to distinguish between explicit null inputs that clear a property, and not provided inputs which leave the property as is.
      - `__typename` 'Undefined' — Contains the name of the model (formally, OpenAPI Schema Object). Used to determine the type of data, for example when two different types are unioned.
  - `allocation_strategy` union — Allocation strategy to change the component to. This can only be set on project-scoped components.
    - 'ESTIMATED_PROJECT_TONNAGE' | 'MANUAL' | 'CUSTOM_TIME_PERIOD' | 'ESTIMATED_PROJECT_LIFETIME' — Strategies which control how Project Emissions are automatically amortized and attributed to GHG Statement and GHG entries ESTIMATED_PROJECT_TONNAGE - Automatic amortization ensuring full amortization in proportion to the project's estimated gross removal. MANUAL - No automatic amortization. All GHG Statement and GHG entry attributions are performed manually. CUSTOM_TIME_PERIOD - Automatic amortization ensuring full amortization by a specified target date. ESTIMATED_PROJECT_LIFETIME - Automatic amortization ensuring full amortization over the project's estimated lifetime.
    - Undefined — An explicit representation of an undefined value in the Isometric REST API. Used, for example, to distinguish between explicit null inputs that clear a property, and not provided inputs which leave the property as is.
      - `__typename` 'Undefined' — Contains the name of the model (formally, OpenAPI Schema Object). Used to determine the type of data, for example when two different types are unioned.
  - `inputs` union — Overwrite existing component inputs
    - union[]
      - union
        - CreateComponentListInput
          - `__typename` 'CreateComponentListInput' — Contains the name of the model (formally, OpenAPI Schema Object). Used to determine the type of data, for example when two different types are unioned.
          - `input_key` string, required — An input key from the component blueprint.
          - `datapoint_ids` string[], required — The Isometric IDs of the datapoints that will be used to populate the value of this input
        - CreateComponentScalarInput
          - `__typename` 'CreateComponentScalarInput' — Contains the name of the model (formally, OpenAPI Schema Object). Used to determine the type of data, for example when two different types are unioned.
          - `input_key` string, required — An input key from the component blueprint.
          - `datapoint_id` string, required — The Isometric ID of the datapoint that will be used to populate the value of this input
    - Undefined — An explicit representation of an undefined value in the Isometric REST API. Used, for example, to distinguish between explicit null inputs that clear a property, and not provided inputs which leave the property as is.
      - `__typename` 'Undefined' — Contains the name of the model (formally, OpenAPI Schema Object). Used to determine the type of data, for example when two different types are unioned.

## Response `200`

Successful Response

- Component
  - `id` string, required
  - `supplier_reference_id` string, nullable, required — A string that must be unique for all resources created by a specific supplier. It can be used by a client to identify the correct objects in their system.
  - `type` 'ACTIVITY' | 'REMOVAL_COUNTERFACTUAL' | 'SEQUESTRATION' | 'LOSS' | 'ADJUSTMENT' | 'UNCERTAINTY_DISCOUNT', required
  - `scope` 'REMOVAL' | 'GHG_STATEMENT' | 'PROJECT' | 'NET_NEGATIVITY', required
  - `display_name` string, required
  - `description` string, nullable, required
  - `activity_completed_at` string, date-time, nullable, required
  - `activity_started_at` string, date-time, nullable, required
  - `blueprint_key` string, required
  - `removal_template_component_id` string, nullable, required — The ID of the removal template component, if this component was created via a template. May be null if the component was created directly, or if the template has been deleted.
  - `ghg_entry_template_component_id` string, nullable, required — The ID of the GHG entry template component, if this component was created via a template. May be null if the component was created directly, or if the template has been deleted.
  - `allocation_strategy` 'ESTIMATED_PROJECT_TONNAGE' | 'MANUAL' | 'CUSTOM_TIME_PERIOD' | 'ESTIMATED_PROJECT_LIFETIME' — Strategies which control how Project Emissions are automatically amortized and attributed to GHG Statement and GHG entries ESTIMATED_PROJECT_TONNAGE - Automatic amortization ensuring full amortization in proportion to the project's estimated gross removal. MANUAL - No automatic amortization. All GHG Statement and GHG entry attributions are performed manually. CUSTOM_TIME_PERIOD - Automatic amortization ensuring full amortization by a specified target date. ESTIMATED_PROJECT_LIFETIME - Automatic amortization ensuring full amortization over the project's estimated lifetime.
  - `inputs` union[], required — A list of component inputs. The inputs can be either scalars or list inputs.
    - union
      - ComponentListInput
        - `__typename` 'ComponentListInput' — Contains the name of the model (formally, OpenAPI Schema Object). Used to determine the type of data, for example when two different types are unioned.
        - `input_key` string, required — An input key from the component blueprint.
        - `datapoint_ids` string[], required — The Isometric ID of the datapoints assigned to this input
      - ComponentScalarInput
        - `__typename` 'ComponentScalarInput' — Contains the name of the model (formally, OpenAPI Schema Object). Used to determine the type of data, for example when two different types are unioned.
        - `input_key` string, required — An input key from the component blueprint.
        - `datapoint_id` string, required — The Isometric ID of the datapoint assigned to this input

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/isometric/apis/isometric-certify-data-ingestion-api.md) · [All operations](https://skmtc.net/isometric/apis/isometric-certify-data-ingestion-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/isometric/isometric-certify-data-ingestion-api/versions/9819e9c8ccf0/schema)
