Isometric Organisations API

The Organisations API from Isometric — 4 operation(s) for organisations.

Operations 4

GET /organisations/{id} Organisation #
GET /organisations/{id}/credit_balance Organisation Credit Balance #
GET /organisations/{id}/credit_batches Organisation Credit Batches #
GET /organisations/{id}/orders Organisation Orders #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/isometric-organisations-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

isometric-organisations-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  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"
  title: Isometric Certify Data Ingestion Beneficiaries Organisations API
  version: v0
servers:
- description: Sandbox Isometric MRV API
  url: https://api.sandbox.isometric.com/mrv/v0
- description: Production Isometric MRV API
  url: https://api.isometric.com/mrv/v0
tags:
- name: Organisations
paths:
  /organisations/{id}:
    get:
      description: Information about a specific organisation.
      operationId: organisation_organisations__id__get
      parameters:
      - in: path
        name: id
        required: true
        schema:
          $ref: '#/components/schemas/IsometricIDPathParam_Organisation_'
      - description: A secret token identifying the client connecting to the API
        in: header
        name: x-client-secret
        required: true
        schema:
          description: A secret token identifying the client connecting to the API
          examples:
          - Syou3EZiO5vuMEgNyBeA8cjEMYOnQDwP
          title: Client secret
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                anyOf:
                - $ref: '#/components/schemas/Organisation'
                - type: 'null'
                title: Response Organisation Organisations  Id  Get
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
      security:
      - HTTPBearer: []
      summary: Organisation
      tags:
      - Organisations
  /organisations/{id}/credit_balance:
    get:
      description: 'Information about active and retired credits owned by the given organisation.


        Includes total balances as well as balances split by orders, projects and suppliers.'
      operationId: organisation_credit_balance_organisations__id__credit_balance_get
      parameters:
      - in: path
        name: id
        required: true
        schema:
          $ref: '#/components/schemas/IsometricIDPathParam_Organisation_'
      - description: A secret token identifying the client connecting to the API
        in: header
        name: x-client-secret
        required: true
        schema:
          description: A secret token identifying the client connecting to the API
          examples:
          - Syou3EZiO5vuMEgNyBeA8cjEMYOnQDwP
          title: Client secret
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrganisationCreditBalance'
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
      security:
      - HTTPBearer: []
      summary: Organisation Credit Balance
      tags:
      - Organisations
  /organisations/{id}/credit_batches:
    get:
      description: 'A paginated list of all credit batches currently owned or retired on behalf of the organisation, sorted by issuance date. By default it excludes batches with the status ''split''.


        Note that when combining filters, the result will be the intersection of them. For example, when filtering by `supplier_id` and `issued_after`, the result will only include credit batches from the specified supplier that have been issued after the specified date.'
      operationId: organisation_credit_batches_organisations__id__credit_batches_get
      parameters:
      - description: The ID of the organisation.
        in: path
        name: id
        required: true
        schema:
          $ref: '#/components/schemas/IsometricIDQueryParam_Organisation_'
          description: The ID of the organisation.
      - description: Filter credit batches by the supplier that was issued the credits
        in: query
        name: supplier_id
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/IsometricIDQueryParam_Supplier_'
          - type: 'null'
          description: Filter credit batches by the supplier that was issued the credits
          title: Supplier Id
      - description: Filter credit batches by the project that the credits were issued for
        in: query
        name: project_id
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/IsometricIDQueryParam_Project_'
          - type: 'null'
          description: Filter credit batches by the project that the credits were issued for
          title: Project Id
      - description: Filter credit batches by their issuance
        in: query
        name: issuance_id
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/IsometricIDQueryParam_Issuance_'
          - type: 'null'
          description: Filter credit batches by their issuance
          title: Issuance Id
      - description: Filter credit batches by the delivery that they were part of
        in: query
        name: delivery_id
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/IsometricIDQueryParam_Delivery_'
          - type: 'null'
          description: Filter credit batches by the delivery that they were part of
          title: Delivery Id
      - description: Filter credit batches by the order they have been delivered against
        in: query
        name: order_id
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/IsometricIDQueryParam_Order_'
          - type: 'null'
          description: Filter credit batches by the order they have been delivered against
          title: Order Id
      - description: Filter credit batches by the retirement they have been part of
        in: query
        name: retirement_id
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/IsometricIDQueryParam_Retirement_'
          - type: 'null'
          description: Filter credit batches by the retirement they have been part of
          title: Retirement Id
      - description: Filter credit batches by status. Note that 'split' status is excluded by default.
        in: query
        name: status
        required: false
        schema:
          anyOf:
          - items:
              $ref: '#/components/schemas/CreditBatchStatus'
            type: array
            uniqueItems: true
          - type: 'null'
          description: Filter credit batches by status. Note that 'split' status is excluded by default.
          title: Status
      - description: 'Filter credit batches to only return ones issued strictly after this timestamp. Format: ISO8601-like including timezone, eg. 2021-01-01T00:00:00Z'
        in: query
        name: issued_after
        required: false
        schema:
          anyOf:
          - format: date-time
            type: string
          - type: 'null'
          description: 'Filter credit batches to only return ones issued strictly after this timestamp. Format: ISO8601-like including timezone, eg. 2021-01-01T00:00:00Z'
          examples:
          - '2021-01-01T00:00:00Z'
          title: Issued After
      - description: 'Filter credit batches to only return ones issued strictly before this timestamp. Format: ISO8601-like including timezone, eg. 2024-01-01T00:00:00Z'
        in: query
        name: issued_before
        required: false
        schema:
          anyOf:
          - format: date-time
            type: string
          - type: 'null'
          description: 'Filter credit batches to only return ones issued strictly before this timestamp. Format: ISO8601-like including timezone, eg. 2024-01-01T00:00:00Z'
          examples:
          - '2024-01-01T00:00:00Z'
          title: Issued Before
      - in: query
        name: last
        required: false
        schema:
          default: 10
          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.
          exclusiveMinimum: 0
          maximum: 50
          title: Last
          type: integer
      - in: query
        name: before
        required: false
        schema:
          anyOf:
          - minLength: 1
            type: string
          - 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
      - in: query
        name: first
        required: false
        schema:
          default: 10
          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.
          exclusiveMinimum: 0
          maximum: 50
          title: First
          type: integer
      - in: query
        name: after
        required: false
        schema:
          anyOf:
          - minLength: 1
            type: string
          - 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
      - in: query
        name: sort_field
        required: false
        schema:
          $ref: '#/components/schemas/CreditBatchSortField'
          default: issued_at
      - in: query
        name: sort_direction
        required: false
        schema:
          $ref: '#/components/schemas/SortDirection'
          default: desc
      - description: A secret token identifying the client connecting to the API
        in: header
        name: x-client-secret
        required: true
        schema:
          description: A secret token identifying the client connecting to the API
          examples:
          - Syou3EZiO5vuMEgNyBeA8cjEMYOnQDwP
          title: Client secret
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedListResource_CreditBatch_'
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
      security:
      - HTTPBearer: []
      summary: Organisation Credit Batches
      tags:
      - Organisations
  /organisations/{id}/orders:
    get:
      description: A paginated list of all orders placed by the organisation, sorted by descending placement date.
      operationId: organisation_orders_organisations__id__orders_get
      parameters:
      - description: The ID of the organisation
        in: path
        name: id
        required: true
        schema:
          $ref: '#/components/schemas/IsometricIDQueryParam_Organisation_'
          description: The ID of the organisation
      - in: query
        name: last
        required: false
        schema:
          default: 10
          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.
          exclusiveMinimum: 0
          maximum: 50
          title: Last
          type: integer
      - in: query
        name: before
        required: false
        schema:
          anyOf:
          - minLength: 1
            type: string
          - 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
      - in: query
        name: first
        required: false
        schema:
          default: 10
          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.
          exclusiveMinimum: 0
          maximum: 50
          title: First
          type: integer
      - in: query
        name: after
        required: false
        schema:
          anyOf:
          - minLength: 1
            type: string
          - 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
      - description: A secret token identifying the client connecting to the API
        in: header
        name: x-client-secret
        required: true
        schema:
          description: A secret token identifying the client connecting to the API
          examples:
          - Syou3EZiO5vuMEgNyBeA8cjEMYOnQDwP
          title: Client secret
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedListResource_Order_'
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
      security:
      - HTTPBearer: []
      summary: Organisation Orders
      tags:
      - Organisations
components:
  schemas:
    CreditBatchStatus:
      enum:
      - active
      - split
      - retired
      title: CreditBatchStatus
      type: string
    IsometricIDQueryParam_Project_:
      $ref: '#/components/schemas/IsometricIDRequestParam_Project_'
    IsometricIDQueryParam_Delivery_:
      $ref: '#/components/schemas/IsometricIDRequestParam_Delivery_'
    Supplier:
      properties:
        id:
          example: spl_1CC712KFS1S0YKPS
          examples:
          - spl_1CC712KFS1S0YKPS
          - spl_1FJBMMGR3SBXKDME
          maxLength: 37
          minLength: 20
          title: Id
          type: string
        location:
          anyOf:
          - $ref: '#/components/schemas/Location'
          - type: 'null'
        long_description:
          anyOf:
          - type: string
          - type: 'null'
          title: Long Description
        organisation:
          $ref: '#/components/schemas/Organisation'
        short_description:
          anyOf:
          - type: string
          - type: 'null'
          title: Short Description
      required:
      - id
      - short_description
      - long_description
      - organisation
      - location
      title: Supplier
      type: object
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          title: Detail
          type: array
      title: HTTPValidationError
      type: object
    CarbonRemovalData:
      properties:
        counterfactuals_kg:
          title: Counterfactuals Kg
          type: integer
        emissions_kg:
          title: Emissions Kg
          type: integer
        gross_carbon_removed_kg:
          title: Gross Carbon Removed Kg
          type: integer
        losses_kg:
          title: Losses Kg
          type: integer
        net_carbon_removed_kg:
          title: Net Carbon Removed Kg
          type: integer
      required:
      - gross_carbon_removed_kg
      - net_carbon_removed_kg
      - emissions_kg
      - counterfactuals_kg
      - losses_kg
      title: CarbonRemovalData
      type: object
    IsometricIDRequestParam_Issuance_:
      example: iss_1EWT8R5FY1S0GFCY
      examples:
      - iss_1EWT8R5FY1S0GFCY
      - iss_1CSVDDHH3SBXRP6K
      maxLength: 37
      minLength: 20
      type: string
    OrganisationCreditBalance:
      properties:
        order_balances:
          items:
            $ref: '#/components/schemas/OrderCreditBalance'
          title: Order Balances
          type: array
        project_balances:
          items:
            $ref: '#/components/schemas/ProjectCreditBalance'
          title: Project Balances
          type: array
        supplier_balances:
          items:
            $ref: '#/components/schemas/SupplierCreditBalance'
          title: Supplier Balances
          type: array
        total:
          $ref: '#/components/schemas/CreditBalance'
      required:
      - total
      - supplier_balances
      - project_balances
      - order_balances
      title: OrganisationCreditBalance
      type: object
    CreditBatchSortField:
      enum:
      - issued_at
      title: CreditBatchSortField
      type: string
    PaginatedListResource_CreditBatch_:
      properties:
        nodes:
          items:
            $ref: '#/components/schemas/CreditBatch'
          title: Nodes
          type: array
        page_info:
          $ref: '#/components/schemas/PageInfo'
        total_count:
          title: Total Count
          type: integer
      required:
      - nodes
      - total_count
      - page_info
      title: PaginatedListResource[CreditBatch]
      type: object
    ValidationError:
      properties:
        ctx:
          title: Context
          type: object
        input:
          title: Input
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          title: Location
          type: array
        msg:
          title: Message
          type: string
        type:
          title: Error Type
          type: string
      required:
      - loc
      - msg
      - type
      title: ValidationError
      type: object
    Organisation:
      properties:
        domain:
          anyOf:
          - type: string
          - type: 'null'
          examples:
          - isometric.com
          title: Domain
        id:
          example: org_1GB56M1ST1S0GVNA
          examples:
          - org_1GB56M1ST1S0GVNA
          - org_1CP8EQDNQSBXTMR2
          maxLength: 37
          minLength: 20
          title: Id
          type: string
        name:
          examples:
          - Isometric
          title: Name
          type: string
      required:
      - id
      - name
      - domain
      title: Organisation
      type: object
    IsometricIDQueryParam_Organisation_:
      $ref: '#/components/schemas/IsometricIDRequestParam_Organisation_'
    OrderCreditBalance:
      properties:
        order_id:
          example: ord_1FAN3S3WV1S0B842
          examples:
          - ord_1FAN3S3WV1S0B842
          - ord_1DBVRQDHBSBXWBWP
          maxLength: 37
          minLength: 20
          title: Order Id
          type: string
        total:
          $ref: '#/components/schemas/CreditBalance'
      required:
      - order_id
      - total
      title: OrderCreditBalance
      type: object
    CreditBatch:
      properties:
        beneficiary:
          anyOf:
          - $ref: '#/components/schemas/Organisation'
          - type: 'null'
        carbon_removal_data:
          anyOf:
          - $ref: '#/components/schemas/CarbonRemovalData'
          - type: 'null'
          description: Carbon removal data for this credit batch
        ccp_approved:
          description: Whether this credit batch has been issued as part of a ICVCM Core Carbon Principles (CCP) approved project
          title: CCP Approved
          type: boolean
        country_of_issue:
          examples:
          - GBR
          maxLength: 3
          minLength: 3
          title: Country Of Issue
          type: string
        delivered_at:
          anyOf:
          - format: date-time
            type: string
          - type: 'null'
          title: Delivered At
        delivery_id:
          anyOf:
          - example: dlv_1C454ZXA61S03Z9T
            examples:
            - dlv_1C454ZXA61S03Z9T
            - dlv_1FAGG2H2PSBXHGYY
            maxLength: 37
            minLength: 20
            type: string
          - type: 'null'
          title: Delivery Id
        id:
          example: ctb_1DRBTYA8Q1S07CBY
          examples:
          - ctb_1DRBTYA8Q1S07CBY
          - ctb_1CA2D3S73SBXYN70
          maxLength: 37
          minLength: 20
          title: Id
          type: string
        issuance_id:
          example: iss_1EWT8R5FY1S0GFCY
          examples:
          - iss_1EWT8R5FY1S0GFCY
          - iss_1CSVDDHH3SBXRP6K
          maxLength: 37
          minLength: 20
          title: Issuance Id
          type: string
        issued_at:
          format: date-time
          title: Issued At
          type: string
        left_child_id:
          anyOf:
          - example: ctb_1DRBTYA8Q1S07CBY
            examples:
            - ctb_1DRBTYA8Q1S07CBY
            - ctb_1CA2D3S73SBXYN70
            maxLength: 37
            minLength: 20
            type: string
          - type: 'null'
          description: If this credit batch has status `SPLIT`, it will have two child batches representing the two halves of this split.
          title: Left Child Id
        owner:
          $ref: '#/components/schemas/Organisation'
        parent_id:
          anyOf:
          - example: ctb_1DRBTYA8Q1S07CBY
            examples:
            - ctb_1DRBTYA8Q1S07CBY
            - ctb_1CA2D3S73SBXYN70
            maxLength: 37
            minLength: 20
            type: string
          - type: 'null'
          description: If this credit batch was created from splitting a larger batch in two, this will be set to the id of the parent credit batch.
          title: Parent Id
        project_id:
          example: prj_1CTWZQGKE1S0VAXA
          examples:
          - prj_1CTWZQGKE1S0VAXA
          - prj_1E0QTWB22SBX34D1
          maxLength: 37
          minLength: 20
          title: Project Id
          type: string
        removal_id:
          example: rmv_1EEM6NJXX1S0EXKD
          examples:
          - rmv_1EEM6NJXX1S0EXKD
          - rmv_1E3V4J2EWSBX5E82
          maxLength: 37
          minLength: 20
          title: Removal Id
          type: string
        retired_at:
          anyOf:
          - format: date-time
            type: string
          - type: 'null'
          title: Retired At
        retirement_id:
          anyOf:
          - example: ret_1FYBH4QDT1S0SVKF
            examples:
            - ret_1FYBH4QDT1S0SVKF
            - ret_1CGV2XADRSBX1CHB
            maxLength: 37
            minLength: 20
            type: string
          - type: 'null'
          title: Retirement Id
        right_child_id:
          anyOf:
          - example: ctb_1DRBTYA8Q1S07CBY
            examples:
            - ctb_1DRBTYA8Q1S07CBY
            - ctb_1CA2D3S73SBXYN70
            maxLength: 37
            minLength: 20
  

# --- truncated at 32 KB (40 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/isometric/refs/heads/main/openapi/isometric-organisations-api-openapi.yml