openapi: 3.1.0 info: title: Isometric Certify Data Ingestion Beneficiaries Datapoints API description: "# Standards\n\n## Versioning\n\nThis API will be safely versioned using root path versioning, in the format `/v{major}`. For example, `/registry/v0/supplier`.\n\n### Compatibility\n\nWe won't make breaking changes to existing API services or endpoints for API versions higher than `v0`. If breaking changes are necessary, we'll release a new major version.\nWe may deprecate APIs that have been replaced by a newer version. When doing so, we will expect\nintegrated partners to manage a transition to new resources within the deprecation timeline of old ones.\n\nWe will make the following sort of changes we do not consider to be breaking:\n\n- Adding new endpoints\n- Adding optional query parameters to API endpoints\n- Adding new properties to existing API responses\n- Reordering properties in existing API responses\n\nIt is important that clients are built to be robust to these changes.\n\n## Pagination\n\nOur API is based on the [Relay](https://relay.dev/docs/tutorial/connections-pagination/) pagination spec. Paginated endpoints\nwill return a `PaginatedListResource` which contains:\n\n- `page_info` - Containing information regarding pagination cursors and the total number of entities.\n- `nodes` - Each node is a paginated entity.\n- `total_count` - The total size of the list across all pages.\n\n### Pagination Parameters\n\nPaginated endpoints also accepted a standard set of query parameters:\n\n- `last` - An integer number of items to retrieve **before** the item represented by the cursor passed in the `before` parameter. Defaults to 10 with a maximum value of 50.\n- `before` - An opaque cursor representing the first item in the previously requested page to select items ordered before it. Submit the previously requested page's `start_cursor` here when paginated backwards.\n- `first` - An integer number of items to retrieve **after** the item represented by the cursor passed in the `after` parameter. Defaults to 10 with a maximum value of 50.\n- `after` - An opaque cursor representing the last item in the previously requested page to select items ordered after it. Submit the previously requested page's `end_cursor` here when paginated forwards.\n\nFor example, querying `/registry/v0/beneficiaries` will return a `PaginatedListResource` of the first page of 10 items:\n\n```json\n{\n \"page_info\": {\n \"has_previous_page\": false,\n \"start_cursor\": ...,\n \"has_next_page\": true,\n \"end_cursor\": \"mpG5kcuoFBYtlH\",\n },\n \"nodes\": [{\n \"id\": \"org_12345iso678\",\n \"name\": \"My Org\",\n ...\n }],\n \"total_count\": 100\n}\n```\n\nThen querying `/registry/v0/beneficiaries?first=15&after=mpG5kcuoFBYtlH` will return a `PaginatedListResource` of the next 15 items.\n\n## Dates\n\nDatetime fields in the APIs conform to the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time format in UTC. For example: `2024-01-22T11:56:48.520641Z`.\n\n## Country Codes\n\nCountries are identified in the APIs via [ISO 3166-1 Alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) codes. For example: `GBR` and `USA`.\n# Authentication\n\nMost API requests will need to authenticate against the Isometric API in two ways simultaneously:\n\n- By passing a **client secret** in the `X-Client-Secret` header to identify the system integrating with the API.\n- By passing an **access token** in the `Authorization` header to authenticate as a specific organization, in order to gain access to its private data.\n\n### Client Authentication\n\nEvery API call to Isometric must include a **client secret** identifying the client application.\n\nThis client secret is tied to a particular environment - sandbox or production.\n\nThe client secret should be submitted on every API request via the `X-Client-Secret` header. For example `X-Client-Secret: uPrO...wxAh`.\n\n### Organization Authentication\n\nIn addition, a large number of API requests will require an **access token** in order for the caller to identify themselves and act as a specific Organization.\n\nTo authenticate as an Organization you will need to submit a JWT bearer access token via the `Authorization` header. For example: `Authorization: Bearer eyJh...sw5c`.\nIf you are going to be acting on behalf of other Organizations, they will need to generate the access token and pass it securely to you.\nAccess tokens should be treated as highly sensitive, kept secret and stored accordingly.\n\nAccess tokens are scoped to a single Organization - so if you are acting on behalf of multiple particular organizations, you will need to submit the appropriate access token on each request.\n\n### Managing Credentials\n\nCredentials can be managed through Certify UI in the [Team settings](https://registry.isometric.com/account/team-settings) section. Access tokens will expire after 1 year from generation. When you are approaching expiry, a new token will need to be generated.\n\nBoth client secrets and access tokens can be created and invalidated through UI.\nClient secrets do not expire and do not need to be rotated.\nIf either secret becomes compromised, it should be invalidated through the UI.\n# Key Certify Concepts\n\nThis page defines concepts used in Certify, and the [Certify API](/api-reference/certify/certify-introduction), which are helpful to understand when submitting information for verification via Certify. For a broader understanding of Isometric's verification processes on the Isometric Registry, please refer to the [Isometric Standard](https://isometric.com/standard).\n\n## Resource visibility\n\n- Until resources are submitted as part of a GHG statement, they are visible only to members of your organization.\n- After statement submission, they are visible to the verifier assigned to the GHG statement.\n- Once credits have been issued, removals are added to the [public registry](https://registry.isometric.com), and associated resources are visible publicly, with the exception of source documents.\n- Sources uploaded in the Certify platform are kept private by default once published on the Isometric registry (file names will be displayed). Contact Isometric to update public source visibility. Sources [added via the API](/api-reference/certify/post-source) can be set `public` on submission.\n\n## Resources\n\nThe main resources used in Certify are sources, datapoints, components and removals.\n\n### Sources\n\n- Sources represent a piece of evidence for a particular datapoint used in carbon accounting calculations.\n- Source documents are private, and only shared with the verifier assigned to a related removal.\n- Other information associated with a source, such as its display name, is visible publicly once the removal is on the public registry.\n- Verifiers are not notified when new sources are added to datapoints in a submitted removal, but they will immediately have access to the source documentation. Please notify the Isometric Registry Operations team when sources are added on a verifier's request so that we can ensure that the verifier is aware.\n\n### Datapoints\n\n- Datapoints represent any value used in carbon accounting calculations.\n- When creating datapoints, sources should be referenced to provide evidence for the value used.\n- A standard deviation should be provided if the datapoint is to be included in the variance propagation method of uncertainty analysis.\n- All datapoints are considered statistically independent for the purpose of variance propagation, although if a datapoint is used twice within a removal calculation, this dependence is captured.\n\n### Components\n\n- Components represent physical activities whose CO₂e flux needs to be accounted for.\n- Components are created from [component blueprints](/user-guides/certify/component-blueprint-library) that contain sets of equations used to calculate a transfer of CO₂e into or out of the atmosphere.\n- A blueprint defines a set of inputs that are the datapoints to be used in the calculation. For instance, a transport emissions blueprints would ask for datapoints representing a distance, mass and carbon intensity.\n- When creating a component from a blueprint, the blueprint must be specified, as well as a list of datapoints for the expected blueprint inputs. Learn more about components in [Identifying Components](/user-guides/certify/identifying-components).\n\n### Removals\n\n- Removals represent a series of activities that result in CO₂e being removed from the atmosphere.\n- The carbon accounting of a removal typically contains sequestrations, counterfactuals and activities (emissions).\n- Removals are structured using a template, [defined in your LCA](/user-guides/certify/lca).\n- Templates are divided into component groups. For instance, a biochar template may contain a `Feedstock sourcing` group.\n- Groups can contain multiple components.\n- Components can also be partially attributed to removals, if the activity the component represents contributed to multiple removals.\n- The final uncertainty discounting is done on the removal level - the API will return the CO₂e removed with and without discounting.\n- See the [Create a removal](/user-guides/certify/removal) guide for more details.\n\n### Feedstock types\n\n- Many carbon removal methods involve a feedstock, for instance biomass feedstock in BiCRS or silicate rock in enhanced weathering.\n- Feedstock types are used to describe the feedstock used in a removal.\n- When creating a removal, a feedstock type can be optionally specified so that Isometric and verifiers can see which removals use which feedstocks.\n- This is important if different feedstocks are used in a single GHG statement.\n- See the [Add feedstock](/user-guides/certify/add-feedstock) guide for more details.\n" version: v0 servers: - url: /mrv/v0 - url: https://api.sandbox.isometric.com/mrv/v0 description: Sandbox Isometric MRV API - url: https://api.isometric.com/mrv/v0 description: Production Isometric MRV API tags: - name: Datapoints paths: /datapoints: post: summary: Post Datapoint description: Creates a datapoint in the Isometric system operationId: post_datapoint_datapoints_post security: - HTTPBearer: [] parameters: - name: x-client-secret in: header required: true schema: type: string title: Client secret description: A secret token identifying the client connecting to the API examples: - Syou3EZiO5vuMEgNyBeA8cjEMYOnQDwP description: A secret token identifying the client connecting to the API requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateDatapointRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Datapoint' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' tags: - Datapoints get: summary: Get Datapoints description: Lists datapoints in the Isometric system operationId: get_datapoints_datapoints_get security: - HTTPBearer: [] parameters: - name: supplier_reference_id in: query required: false schema: anyOf: - type: string minLength: 1 maxLength: 100 description: 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: 'null' title: Supplier Reference Id - name: display_name_contains in: query required: false schema: anyOf: - type: string - type: 'null' title: Display Name Contains - name: project_id in: query required: false schema: anyOf: - $ref: '#/components/schemas/IsometricIDQueryParam_Project_' - type: 'null' title: Project Id - name: quantity_kind in: query required: false schema: anyOf: - $ref: '#/components/schemas/QuantityKindType' - type: 'null' title: Quantity Kind - name: measurement_sample_id in: query required: false schema: anyOf: - $ref: '#/components/schemas/IsometricIDQueryParam_MeasurementSample_' - type: 'null' title: Measurement Sample Id - name: used_in_removal in: query required: false schema: anyOf: - $ref: '#/components/schemas/IsometricIDQueryParam_GhgEntry_' - type: 'null' title: Used In Removal - name: used_in_ghg_statement in: query required: false schema: anyOf: - $ref: '#/components/schemas/IsometricIDQueryParam_GhgStatement_' - type: 'null' title: Used In Ghg Statement - name: used_in_removal_template in: query required: false schema: anyOf: - $ref: '#/components/schemas/IsometricIDQueryParam_GhgEntryTemplate_' - type: 'null' title: Used In Removal Template - name: used_in_scope in: query required: false schema: anyOf: - $ref: '#/components/schemas/ComponentScope' - type: 'null' title: Used In Scope - name: last in: query required: false schema: type: integer maximum: 50 exclusiveMinimum: 0 description: An integer number of items to retrieve before the item represented by the cursor passed in the before parameter. Defaults to 10 with a maximum value of 50. default: 10 title: Last - name: before in: query required: false schema: anyOf: - type: string minLength: 1 - type: 'null' description: An opaque cursor representing the first item in the previously requested page to select items ordered before it. Submit the previously requested page’s start_cursor here when paginated backwards. title: Before - name: first in: query required: false schema: type: integer maximum: 50 exclusiveMinimum: 0 description: An integer number of items to retrieve after the item represented by the cursor passed in the after parameter. Defaults to 10 with a maximum value of 50. default: 10 title: First - name: after in: query required: false schema: anyOf: - type: string minLength: 1 - type: 'null' description: An opaque cursor representing the last item in the previously requested page to select items ordered after it. Submit the previously requested page’s end_cursor here when paginated forwards. title: After - name: x-client-secret in: header required: true schema: type: string title: Client secret description: A secret token identifying the client connecting to the API examples: - Syou3EZiO5vuMEgNyBeA8cjEMYOnQDwP description: A secret token identifying the client connecting to the API responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaginatedListResource_Datapoint_' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' tags: - Datapoints /datapoints/{id}: patch: summary: Patch Datapoint description: Updates a datapoint in the Isometric system. Associated components and removals will be recalculated, if they are not in an immutable state. operationId: patch_datapoint_datapoints__id__patch security: - HTTPBearer: [] parameters: - name: id in: path required: true schema: $ref: '#/components/schemas/IsometricIDPathParam_Datapoint_' - name: x-client-secret in: header required: true schema: type: string title: Client secret description: A secret token identifying the client connecting to the API examples: - Syou3EZiO5vuMEgNyBeA8cjEMYOnQDwP description: A secret token identifying the client connecting to the API requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PatchDatapointRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Datapoint' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' tags: - Datapoints get: summary: Get Datapoint description: Returns a single datapoint in the Isometric system operationId: get_datapoint_datapoints__id__get security: - HTTPBearer: [] parameters: - name: id in: path required: true schema: $ref: '#/components/schemas/IsometricIDPathParam_Datapoint_' - name: x-client-secret in: header required: true schema: type: string title: Client secret description: A secret token identifying the client connecting to the API examples: - Syou3EZiO5vuMEgNyBeA8cjEMYOnQDwP description: A secret token identifying the client connecting to the API responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Datapoint' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' tags: - Datapoints delete: summary: Delete Datapoint description: Delete a datapoint resource. Will fail if the datapoint is in use by a component. operationId: delete_datapoint_datapoints__id__delete security: - HTTPBearer: [] parameters: - name: id in: path required: true schema: $ref: '#/components/schemas/IsometricIDPathParam_Datapoint_' - name: x-client-secret in: header required: true schema: type: string title: Client secret description: A secret token identifying the client connecting to the API examples: - Syou3EZiO5vuMEgNyBeA8cjEMYOnQDwP description: A secret token identifying the client connecting to the API responses: '204': description: Successful Response '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' tags: - Datapoints /datapoints/{id}/components: get: summary: Get Datapoint Components description: Lists components associated with a datapoint in the Isometric system operationId: get_datapoint_components_datapoints__id__components_get security: - HTTPBearer: [] parameters: - name: id in: path required: true schema: $ref: '#/components/schemas/IsometricIDPathParam_Datapoint_' - name: last in: query required: false schema: type: integer maximum: 50 exclusiveMinimum: 0 description: An integer number of items to retrieve before the item represented by the cursor passed in the before parameter. Defaults to 10 with a maximum value of 50. default: 10 title: Last - name: before in: query required: false schema: anyOf: - type: string minLength: 1 - type: 'null' description: An opaque cursor representing the first item in the previously requested page to select items ordered before it. Submit the previously requested page’s start_cursor here when paginated backwards. title: Before - name: first in: query required: false schema: type: integer maximum: 50 exclusiveMinimum: 0 description: An integer number of items to retrieve after the item represented by the cursor passed in the after parameter. Defaults to 10 with a maximum value of 50. default: 10 title: First - name: after in: query required: false schema: anyOf: - type: string minLength: 1 - type: 'null' description: An opaque cursor representing the last item in the previously requested page to select items ordered after it. Submit the previously requested page’s end_cursor here when paginated forwards. title: After - name: x-client-secret in: header required: true schema: type: string title: Client secret description: A secret token identifying the client connecting to the API examples: - Syou3EZiO5vuMEgNyBeA8cjEMYOnQDwP description: A secret token identifying the client connecting to the API responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaginatedListResource_Component_' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' tags: - Datapoints /datapoints/{id}/removal_template_components: get: summary: Get Datapoint Removal Template Components description: Lists removal template components that use this datapoint operationId: get_datapoint_removal_template_components_datapoints__id__removal_template_components_get security: - HTTPBearer: [] parameters: - name: id in: path required: true schema: $ref: '#/components/schemas/IsometricIDPathParam_Datapoint_' - name: last in: query required: false schema: type: integer maximum: 50 exclusiveMinimum: 0 description: An integer number of items to retrieve before the item represented by the cursor passed in the before parameter. Defaults to 10 with a maximum value of 50. default: 10 title: Last - name: before in: query required: false schema: anyOf: - type: string minLength: 1 - type: 'null' description: An opaque cursor representing the first item in the previously requested page to select items ordered before it. Submit the previously requested page’s start_cursor here when paginated backwards. title: Before - name: first in: query required: false schema: type: integer maximum: 50 exclusiveMinimum: 0 description: An integer number of items to retrieve after the item represented by the cursor passed in the after parameter. Defaults to 10 with a maximum value of 50. default: 10 title: First - name: after in: query required: false schema: anyOf: - type: string minLength: 1 - type: 'null' description: An opaque cursor representing the last item in the previously requested page to select items ordered after it. Submit the previously requested page’s end_cursor here when paginated forwards. title: After - name: x-client-secret in: header required: true schema: type: string title: Client secret description: A secret token identifying the client connecting to the API examples: - Syou3EZiO5vuMEgNyBeA8cjEMYOnQDwP description: A secret token identifying the client connecting to the API responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaginatedListResource_RemovalTemplateComponent_' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' tags: - Datapoints components: schemas: ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type input: title: Input ctx: type: object title: Context type: object required: - loc - msg - type title: ValidationError IsometricIDRequestParam_GhgEntry_: type: string maxLength: 37 minLength: 20 examples: - rmv_1EEM6NJXX1S0EXKD - rmv_1E3V4J2EWSBX5E82 example: rmv_1EEM6NJXX1S0EXKD IsometricIDQueryParam_GhgStatement_: $ref: '#/components/schemas/IsometricIDRequestParam_GhgStatement_' ScalarQuantity: properties: magnitude: type: number title: Magnitude unit: type: string minLength: 1 title: Unit standard_deviation: anyOf: - type: number - type: 'null' title: Standard Deviation type: object required: - magnitude - unit title: ScalarQuantity PaginatedListResource_Component_: properties: nodes: items: $ref: '#/components/schemas/Component' type: array title: Nodes total_count: type: integer title: Total Count page_info: $ref: '#/components/schemas/PageInfo' type: object required: - nodes - total_count - page_info title: PaginatedListResource[Component] IsometricIDRequestParam_Datapoint_: type: string maxLength: 37 minLength: 20 examples: - dtp_1DVKHKS101S0Q61Q - dtp_1DJN8P57VSBXASFX example: dtp_1DVKHKS101S0Q61Q Undefined: properties: __typename: type: string const: Undefined title: Type name description: 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. default: Undefined additionalProperties: false type: object title: Undefined description: 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. IsometricIDQueryParam_MeasurementSample_: $ref: '#/components/schemas/IsometricIDRequestParam_MeasurementSample_' IsometricIDRequestParam_GhgEntryTemplate_: type: string maxLength: 37 minLength: 20 examples: - rvt_1EVC8RZFE1S0BAT6 - rvt_1ECDZGE2DSBX88EX example: rvt_1EVC8RZFE1S0BAT6 PatchDatapointRequest: properties: type: anyOf: - $ref: '#/components/schemas/DatapointType' - $ref: '#/components/schemas/Undefined' title: Type default: __typename: Undefined display_name: anyOf: - type: string maxLength: 100 minLength: 1 - $ref: '#/components/schemas/Undefined' title: Display Name default: __typename: Undefined description: anyOf: - type: string - $ref: '#/components/schemas/Undefined' title: Description default: __typename: Undefined quantity: anyOf: - $ref: '#/components/schemas/DatapointQuantityInput' - $ref: '#/components/schemas/Undefined' title: Quantity default: __typename: Undefined source_ids: anyOf: - items: type: string maxLength: 37 minLength: 20 examples: - src_1EBBF4M7X1S06G1Y - src_1DW1B17VNSBX37N0 example: src_1EBBF4M7X1S06G1Y type: array - $ref: '#/components/schemas/Undefined' title: Source Ids description: Overwrite existing source IDs default: __typename: Undefined uncertainty_justification: anyOf: - type: string - $ref: '#/components/schemas/Undefined' title: Uncertainty Justification description: ' Provide an uncertainty justification where required for inputs identified as sensitive in sensitivity analysis. ' default: __typename: Undefined type: object title: PatchDatapointRequest ProjectComponentAmortizationStrategy: type: string enum: - ESTIMATED_PROJECT_TONNAGE - MANUAL - CUSTOM_TIME_PERIOD - ESTIMATED_PROJECT_LIFETIME title: ProjectComponentAmortizationStrategy description: 'Strategies which control how Project Emissions are automatically amortized and attributed to GHG Statement and Removals 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 Removal 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.' IsometricIDRequestParam_GhgStatement_: type: string maxLength: 37 minLength: 20 examples: - ggs_1GDQJ99Z51S0DYW9 - ggs_1FWVEQRWSSBXK3NB example: ggs_1GDQJ99Z51S0DYW9 RemovalTemplateComponentInput: properties: input_key: type: string title: Input Key description: The key which identifies an specific input to the component blueprint. datapoint_id: anyOf: - type: string maxLength: 37 minLength: 20 examples: - dtp_1DVKHKS101S0Q61Q - dtp_1DJN8P57VSBXASFX example: dtp_1DVKHKS101S0Q61Q - type: 'null' title: Datapoint Id display_name: type: string title: Display Name type: $ref: '#/components/schemas/ComponentInputType' quantity_kind: $ref: '#/components/schemas/QuantityKindType' description: The type of datapoint value that the input requires. Units compatible with this type can be found in the component blueprint library. type: object required: - input_key - datapoint_id - display_name - type - quantity_kind title: RemovalTemplateComponentInput ComponentScalarInput: properties: __typename: type: string const: ComponentScalarInput title: Type name description: 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. default: ComponentScalarInput input_key: type: string maxLength: 100 title: Input Key description: Will match an input key in the component blueprint. datapoint_id: type: string maxLength: 37 minLength: 20 title: Datapoint Id description: The Isometric ID of the datapoint assigned to this input examples: - dtp_1DVKHKS101S0Q61Q - dtp_1DJN8P57VSBXASFX example: dtp_1DVKHKS101S0Q61Q type: object required: - input_key - datapoint_id title: ComponentScalarInput IsometricIDRequestParam_MeasurementSample_: type: string maxLength: 37 minLength: 20 examples: - mts_1D7HS15KD1S03M0Z - mts_1FN0MEX2ZSBX40DT example: mts_1D7HS15KD1S03M0Z IsometricIDQueryParam_GhgEntry_: $ref: '#/components/schemas/IsometricIDRequestParam_GhgEntry_' IsometricIDRequestParam_Project_: type: string maxLength: 37 minLength: 20 examples: - prj_1CTWZQGKE1S0VAXA - prj_1E0QTWB22SBX34D1 example: prj_1CTWZQGKE1S0VAXA CreateDatapointRequest: properties: supplier_reference_id: type: string maxLength: 100 minLength: 1 title: Supplier Reference Id description: 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. display_name: type: string maxLength: 100 minLength: 1 title: Display Name type: $ref: '#/components/schemas/DatapointType' quantity: $ref: '#/components/schemas/DatapointQuantityInput' description: type: string title: Description source_ids: items: type: string maxLength: 37 minLength: 20 examples: - src_1EBBF4M7X1S06G1Y - src_1DW1B17VNSBX37N0 example: src_1EBBF4M7X1S06G1Y type: array title: Source Ids project_id: type: string maxLength: 37 minLength: 20 title: Project Id examples: - prj_1CTWZQGKE1S0VAXA - prj_1E0QTWB22SBX34D1 example: prj_1CTWZQGKE1S0VAXA measured_at: anyOf: - type: string format: date-time - type: 'null' title: Measured At uncertainty_justification: anyOf: - type: string - type: 'null' title: Uncertainty Justification description: ' Provide an uncertainty justification where required for inputs identified as sensitive in sensitivity analysis. ' type: object required: - supplier_reference_id - display_name - type - quantity - description - source_ids - project_id title: CreateDatapointRequest Component: properties: id: type: string maxLength: 37 minLength: 20 title: Id examples: - cmp_1EP2SB7MZ1S036PY - cmp_1EHK4R6QJSBXFC5N example: cmp_1EP2SB7MZ1S036PY supplier_reference_id: anyOf: - type: string maxLength: 100 minLength: 1 description: 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: 'null' title: Supplier Reference Id type: $ref: '#/components/schemas/ComponentType' scope: $ref: '#/components/schemas/ComponentScope' display_name: type: string title: Display Name description: anyOf: - type: string - type: 'null' title: Description activity_completed_at: anyOf: - type: string format: date-time - type: 'null' title: Activity Completed At activity_started_at: anyOf: - type: string format: date-time - type: 'null' title: Activity Started At blueprint_key: type: string title: Blueprint Key removal_template_component_id: anyOf: - type: string maxLength: 37 minLength: 20 examples: - rtc_1DAA58EDM1S0AMPN - rtc_1CQAKRCVQSBXKKTM example: rtc_1DAA58EDM1S0AMPN - type: 'null' title: Removal Template Component Id description: 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. allocation_strategy: anyOf: - $ref: '#/components/schemas/ProjectComponentAmortizationStrategy' - type: 'null' description: Attribution strategy, manages how project-scoped components are distributed across GHG statements; value will be Null if scope is not of scope project inputs: items: oneOf: - $ref: '#/components/schemas/ComponentListInput' - $ref: '#/components/schemas/ComponentScalarInput' type: array title: Inputs description: A list of component inputs. The inputs can be either scalars or list inputs. type: object required: - id - supplier_reference_id - type - scope - display_name - description - activity_completed_at - activity_started_at - blueprint_key - removal_template_component_id - inputs title: Component QuantityKindType: type: string enum: - acidity - activity_concentration - amount_of_substance - amount_of_substance_concentration - amount_of_substance_per_mass - area - area_carbon_emission_factor - buffer_ph - bulk_density - count - currency - currency_carbon_emission_factor - depth - diameter - diameter_at_breast_height - dimensionless - dimensionless_ratio - distance - distance_carbon_emission_factor - dose_equivalent_rate - electric_current - elevation - energy - energy_carbon_emission_factor - energy_density - exchangeable_amount_of_substance_per_mass - fuel_economy - height - ionic_strength - latitude - longitude - mass - mass_carbon - mass_carbon_emission_factor - mass_cdr_potential - mass_concentration - mass_density - mass_distance - mass_distance_carbon_emission_factor - mass_energy_density - mass_flow_rate - mass_fraction - mass_fraction_dry_basis - mass_fraction_wet_basis - mass_per_area - mass_ratio - molality_of_solute - molar_mass - mole_fraction - partial_pressure - particle_diameter - particle_mass_density - power - pressure - specific_surface_area - specific_volume - temperature - time - time_emission_factor - voltage - volume - volume_carbon_emission_factor - volume_distance_carbon_emission_factor - volume_flow_rate - volume_fraction - volume_per_area title: QuantityKindType PageInfo: properties: has_previous_page: type: boolean title: Has Previous Page start_cursor: anyOf: - type: string - type: 'null' title: Start Cursor has_next_page: type: boolean title: Has Next Page end_cursor: anyOf: - type: string - type: 'null' title: End Cursor type: object required: - has_previous_page - start_cursor - has_next_page - end_cursor title: PageInfo Datapoint: properties: id: type: string maxLength: 37 minLength: 20 title: Id examples: - dtp_1DVKHKS101S0Q61Q - dtp_1DJN8P57VSBXASFX example: dtp_1DVKHKS101S0Q61Q supplier_reference_id: anyOf: - type: string maxLength: 100 minLength: 1 description: 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: 'null' title: Supplier Reference Id display_name: type: string title: Display Name type: $ref: '#/components/schemas/DatapointType' quantity: $ref: '#/components/schemas/ScalarQuantity' description: anyOf: - type: string - type: 'null' title: Description source_ids: items: type: string maxLength: 37 minLength: 20 examples: - src_1EBBF4M7X1S06G1Y - src_1DW1B17VNSBX37N0 example: src_1EBBF4M7X1S06G1Y type: array title: Source Ids measured_at: anyOf: - type: string format: date-time - type: 'null' title: Measured At project_id: anyOf: - type: string maxLength: 37 minLength: 20 examples: - prj_1CTWZQGKE1S0VAXA - prj_1E0QTWB22SBX34D1 example: prj_1CTWZQGKE1S0VAXA - type: 'null' title: Project Id locked_status: $ref: '#/components/schemas/DatapointLockedStatus' uncertainty_justification: anyOf: - type: string - type: 'null' title: Uncertainty Justification description: ' Provide an uncertainty justification where required for inputs identified as sensitive in sensitivity analysis. ' type: object required: - id - supplier_reference_id - display_name - type - quantity - description - source_ids - measured_at - project_id - locked_status title: Datapoint ComponentType: type: string enum: - ACTIVITY - REMOVAL_COUNTERFACTUAL - SEQUESTRATION - LOSS - ADJUSTMENT - UNCERTAINTY_DISCOUNT title: ComponentType ComponentInputType: type: string enum: - fixed - monitored title: ComponentInputType ComponentListInput: properties: __typename: type: string const: ComponentListInput title: Type name description: 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. default: ComponentListInput input_key: type: string maxLength: 100 title: Input Key description: Will match an input key in the component blueprint. datapoint_ids: items: type: string maxLength: 37 minLength: 20 examples: - dtp_1DVKHKS101S0Q61Q - dtp_1DJN8P57VSBXASFX example: dtp_1DVKHKS101S0Q61Q type: array title: Datapoint Ids description: The Isometric ID of the datapoints assigned to this input type: object required: - input_key - datapoint_ids title: ComponentListInput DatapointQuantityInput: properties: magnitude: type: number title: Magnitude unit: anyOf: - type: string - type: 'null' title: Unit standard_deviation: anyOf: - type: number - type: 'null' title: Standard Deviation description: The standard deviation of the datapoint in the same units as the magnitude. Leave null if the datapoint is not to be included in the uncertainty analysis for the removal. type: object required: - magnitude - unit title: DatapointQuantityInput IsometricIDQueryParam_Project_: $ref: '#/components/schemas/IsometricIDRequestParam_Project_' RemovalTemplateComponent: properties: id: type: string maxLength: 37 minLength: 20 title: Id examples: - rtc_1DAA58EDM1S0AMPN - rtc_1CQAKRCVQSBXKKTM example: rtc_1DAA58EDM1S0AMPN display_name: type: string title: Display Name description: anyOf: - type: string - type: 'null' title: Description blueprint_key: type: string title: Blueprint Key removal_template_id: type: string maxLength: 37 minLength: 20 title: Removal Template Id examples: - rvt_1EVC8RZFE1S0BAT6 - rvt_1ECDZGE2DSBX88EX example: rvt_1EVC8RZFE1S0BAT6 removal_template_component_group_id: type: string maxLength: 37 minLength: 20 title: Removal Template Component Group Id examples: - rtg_1EGQ9DZXZ1S05S28 - rtg_1CWEFDQ7GSBX1X5C example: rtg_1EGQ9DZXZ1S05S28 inputs: items: $ref: '#/components/schemas/RemovalTemplateComponentInput' type: array title: Inputs description: Inputs for this removal template component based on its component blueprint, including any customized display names and fixed input datapoints. type: object required: - id - display_name - description - blueprint_key - removal_template_id - removal_template_component_group_id - inputs title: RemovalTemplateComponent ComponentScope: type: string enum: - REMOVAL - GHG_STATEMENT - PROJECT - NET_NEGATIVITY title: ComponentScope PaginatedListResource_RemovalTemplateComponent_: properties: nodes: items: $ref: '#/components/schemas/RemovalTemplateComponent' type: array title: Nodes total_count: type: integer title: Total Count page_info: $ref: '#/components/schemas/PageInfo' type: object required: - nodes - total_count - page_info title: PaginatedListResource[RemovalTemplateComponent] HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError IsometricIDQueryParam_GhgEntryTemplate_: $ref: '#/components/schemas/IsometricIDRequestParam_GhgEntryTemplate_' DatapointType: type: string enum: - CONSTANT - STANDARD_PUBLISHED_VALUE - REPORTED - ASSUMPTION - DERIVED title: DatapointType DatapointLockedStatus: type: string enum: - not_locked - locked_library_datapoint - locked_time_series_datapoint - locked_measurement_sample_datapoint - locked_forestry_field_measurement_datapoint - locked_model_output_datapoint - locked_model_input_datapoint - locked_material_datapoint - locked_activity_datapoint - locked_used_in_verified_removal title: DatapointLockedStatus description: 'Represents the locked status of a Datapoint. Locked Datapoints cannot be updated: if an updated version of a data input is required then a new Datapoint must be created.' IsometricIDPathParam_Datapoint_: $ref: '#/components/schemas/IsometricIDRequestParam_Datapoint_' PaginatedListResource_Datapoint_: properties: nodes: items: $ref: '#/components/schemas/Datapoint' type: array title: Nodes total_count: type: integer title: Total Count page_info: $ref: '#/components/schemas/PageInfo' type: object required: - nodes - total_count - page_info title: PaginatedListResource[Datapoint] securitySchemes: HTTPBearer: type: http description: 'A JWT Bearer token header for authentication and authorization, in the format `Authorization: Bearer `' scheme: bearer bearerFormat: JWT