ComboCurve Emissions API

The Emissions API from ComboCurve — 2 operation(s) for emissions.

Operations 6

HEAD /v1/projects/{projectId}/econ-models/emissions Head emissions #
GET /v1/projects/{projectId}/econ-models/emissions Get emissions #
POST /v1/projects/{projectId}/econ-models/emissions Post emissions #
PUT /v1/projects/{projectId}/econ-models/emissions Put emissions #
GET /v1/projects/{projectId}/econ-models/emissions/{id} Get emission by id #
DELETE /v1/projects/{projectId}/econ-models/emissions/{id} Delete emission by id #

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/combocurve:combocurve-emissions-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

combocurve-emissions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ComboCurve REST Emissions API
  version: 1.0.0
servers:
- url: https://api.combocurve.com
security:
- api-key: []
  service-account-key: []
tags:
- name: Emissions
paths:
  /v1/projects/{projectId}/econ-models/emissions:
    head:
      description: Returns metadata about the existing emission models documents.
      operationId: head-emissions
      parameters:
      - $ref: '#/components/parameters/skipParam'
      - $ref: '#/components/parameters/takeParam'
      - in: path
        name: projectId
        required: true
        schema:
          type: string
      - name: createdAt
        in: query
        description: filter by createdAt - Operator values are [lt] = less than, [le] = less than or equal, [gt] = greater than, [ge] = greater than or equal, no operator = equal. Example createdAt[gt]=2018-01-01T00:00:00Z
        x-allow-parameter-operator: true
        schema:
          type: string
          format: date
      - name: name
        in: query
        description: filter by name
        schema:
          type: string
      - name: well
        in: query
        description: filter by well
        schema:
          type: string
      - name: unique
        in: query
        description: filter by unique
        schema:
          type: boolean
      - name: updatedAt
        in: query
        description: filter by updatedAt - Operator values are [lt] = less than, [le] = less than or equal, [gt] = greater than, [ge] = greater than or equal, no operator = equal. Example updatedAt[gt]=2018-01-01T00:00:00Z
        x-allow-parameter-operator: true
        schema:
          type: string
          format: date
      responses:
        '200':
          description: OK
          headers:
            Link:
              description: Indicates a typed relationship with another resource, where the relation type is defined by RFC 5988. We include the relationships next, prev, first and last, which can be used to move between pages of the list of results.
              schema:
                type: string
            X-Query-Count:
              description: The number of records in this resource. When filters are provided only matching records are counted.
              schema:
                type: integer
        '400':
          description: Bad Request. There is something wrong with the request data.
      tags:
      - Emissions
      summary: Head emissions
      x-summary-source: derived
    get:
      description: Returns a list of emission models documents.
      operationId: get-emissions
      parameters:
      - $ref: '#/components/parameters/skipParam'
      - $ref: '#/components/parameters/takeParam'
      - $ref: '#/components/parameters/sortParam'
      - $ref: '#/components/parameters/cursorParam'
      - in: path
        name: projectId
        required: true
        schema:
          type: string
      - name: createdAt
        in: query
        description: filter by createdAt - Operator values are [lt] = less than, [le] = less than or equal, [gt] = greater than, [ge] = greater than or equal, no operator = equal. Example createdAt[gt]=2018-01-01T00:00:00Z
        x-allow-parameter-operator: true
        schema:
          type: string
          format: date
      - name: name
        in: query
        description: filter by name
        schema:
          type: string
      - name: well
        in: query
        description: filter by well
        schema:
          type: string
      - name: unique
        in: query
        description: filter by unique
        schema:
          type: boolean
      - name: updatedAt
        in: query
        description: filter by updatedAt - Operator values are [lt] = less than, [le] = less than or equal, [gt] = greater than, [ge] = greater than or equal, no operator = equal. Example updatedAt[gt]=2018-01-01T00:00:00Z
        x-allow-parameter-operator: true
        schema:
          type: string
          format: date
      responses:
        '200':
          description: OK
          headers:
            Link:
              description: Indicates a typed relationship with another resource, where the relation type is defined by RFC 5988. We include the relationships next, prev, first and last, which can be used to move between pages of the list of results.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmissionsEconModelList'
              example:
              - id: 5e272d39b78910dd2a1bd8fe
                copiedFrom: 63b856e816f758cc5b0f1106
                name: Test
                scenario: 63b8571d70ed63f50bd6d63f
                tags:
                - 63b85737ff846cee7b1f6fdc
                unique: true
                well: 63b85759e1d7eb4e31579f51
                createdAt: '2020-01-21T16:58:08.986Z'
                updatedAt: '2020-01-21T17:58:08.986Z'
                createdBy: 63b857cb68f3b96efc700998
                lastUpdatedBy: 63b857cb68f3b96efc700998
                emissions:
                  rows:
                  - selected: true
                    category: associated_gas
                    co2e: 123
                    co2: 0
                    ch4: 0
                    n2o: 0
                    unit: mt_per_mbbl
                    escalationModel: 63b857cb68f3b96efc700998
        '400':
          description: Bad Request. There is something wrong with the request data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                name: ValidationError
                message: The field 'id' is required.
                details:
                  location: In body of request at position [0]
      tags:
      - Emissions
      x-google-quota:
        metricCosts:
          read-request-rate: 1
      summary: Get emissions
      x-summary-source: derived
    post:
      description: Inserts a list of emission models documents.
      operationId: post-emissions
      parameters:
      - in: path
        name: projectId
        required: true
        schema:
          type: string
      responses:
        '207':
          description: Multi-Status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmissionsMultiStatusResponse'
              example:
                generalErrors:
                - name: ValidationError
                  message: The field 'name' is required.
                  location: In body of request at position [0]
                - name: ValidationError
                  message: The field 'unique' is required.
                  location: In body of request at position [2]
                results:
                - status: Success
                  code: 200
                  name: test
                - status: Success
                  code: 200
                  name: test1
                failedCount: 2
                successCount: 2
      tags:
      - Emissions
      x-google-quota:
        metricCosts:
          write-request-rate: 1
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EmissionsInputList'
        description: Emissions Model document(s) to insert. See EmissionsInputList.
      summary: Post emissions
      x-summary-source: derived
    put:
      description: Replace or create a list of emission models documents.
      operationId: put-emissions
      parameters:
      - in: path
        name: projectId
        required: true
        schema:
          type: string
      responses:
        '207':
          description: Multi-Status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmissionsMultiStatusResponse'
              example:
                generalErrors:
                - name: ValidationError
                  message: The field 'name' is required.
                  location: In body of request at position [0]
                - name: ValidationError
                  message: The field 'unique' is required.
                  location: In body of request at position [2]
                results:
                - status: Success
                  code: 200
                  name: test
                - status: Success
                  code: 200
                  name: test1
                failedCount: 2
                successCount: 2
      tags:
      - Emissions
      x-google-quota:
        metricCosts:
          write-request-rate: 1
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EmissionsInputList'
        description: Emissions Model document(s) to replace/create. See EmissionsInputList.
      summary: Put emissions
      x-summary-source: derived
  /v1/projects/{projectId}/econ-models/emissions/{id}:
    get:
      description: Returns the emission model document that matches the given id.
      operationId: get-emission-by-id
      parameters:
      - in: path
        name: projectId
        required: true
        schema:
          type: string
      - in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmissionsEconModel'
              example:
                id: 5e272d39b78910dd2a1bd8fe
                copiedFrom: 63b856e816f758cc5b0f1106
                name: Test
                scenario: 63b8571d70ed63f50bd6d63f
                tags:
                - 63b85737ff846cee7b1f6fdc
                unique: true
                well: 63b85759e1d7eb4e31579f51
                createdAt: '2020-01-21T16:58:08.986Z'
                updatedAt: '2020-01-21T17:58:08.986Z'
                createdBy: 63b857cb68f3b96efc700998
                lastUpdatedBy: 63b857cb68f3b96efc700998
                emissions:
                  rows:
                  - selected: true
                    category: associated_gas
                    co2e: 123
                    co2: 0
                    ch4: 0
                    n2o: 0
                    unit: mt_per_mbbl
                    escalationModel: 63b857cb68f3b96efc700998
        '400':
          description: Bad Request. There is something wrong with the request data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                name: ValidationError
                message: The field 'id' is required.
                details:
                  location: In body of request at position [0]
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                name: ValidationError
                message: The field 'id' is required.
                details:
                  location: In body of request at position [0]
      tags:
      - Emissions
      x-google-quota:
        metricCosts:
          read-request-rate: 1
      summary: Get emission by id
      x-summary-source: derived
    delete:
      description: Delete the assumptions document that matches the given id scoped to projectId project.
      operationId: delete-emission-by-id
      parameters:
      - in: path
        name: projectId
        required: true
        description: ''
        schema:
          type: string
      - in: path
        name: id
        required: true
        description: ''
        schema:
          type: string
      responses:
        '204':
          description: OK
          headers:
            X-Delete-Count:
              description: The number of records that match the given filters and were deleted.
              schema:
                type: integer
        '400':
          description: Bad Request. There is something wrong with the request data.
      tags:
      - Emissions
      summary: Delete emission by id
      x-summary-source: derived
components:
  schemas:
    EmissionsInputList:
      type: array
      items:
        $ref: '#/components/schemas/EmissionsInput'
      maxItems: 500
      example:
      - name: Test
        scenario: 63b8571d70ed63f50bd6d63f
        unique: true
        well: 63b85759e1d7eb4e31579f51
        emissions:
          rows:
          - selected: true
            category: associated_gas
            co2e: 123
            co2: 0
            ch4: 0
            n2o: 0
            unit: mt_per_mbbl
            escalationModel: 63b857cb68f3b96efc700998
    Error:
      type: object
      properties:
        name:
          type: string
          description: The kind of error.
        message:
          type: string
          description: A human-readable description of the problem.
        details:
          type: object
          properties:
            location:
              type: string
              description: The location in the request data that contains the invalid value.
      example:
        name: ValidationError
        message: The field 'id' is required.
        details:
          location: In body of request at position [0]
    EmissionRow:
      type: object
      required:
      - category
      - co2e
      - co2
      - ch4
      - n2o
      - unit
      properties:
        category:
          type: string
          description: Emissions Category
          enum:
          - associated_gas
          - acid_gas_removal_units
          - centrifugal_compressor
          - eor_hydrocarbon_liquids
          - eor_injection_pumps
          - liquids_unloading
          - pneumatic_device
          - dehydrators
          - equipment_leaks
          - atmospheric_tank
          - reciprocating_compressor
          - completions_with_fracturing
          - completions_without_fracturing
          - drilling
          - completion
          - combustion
          - pneumatic_pump
          - well_testing
          - blowdown_vent_stacks
          - flare
          - scope2
          - scope3
        co2e:
          type: number
          description: CO2e
        co2:
          type: number
          description: CO2
        ch4:
          type: number
          description: CH4
        n2o:
          type: number
          description: N2O
        unit:
          type: string
          description: Emissions Unit
          enum:
          - mt_per_mbbl
          - mt_per_mmcf
          - mt_per_mboe
          - mt_per_well_per_year
          - mt_per_new_well
        selected:
          type: boolean
          description: Selected
        escalationModel:
          type: string
          description: Escalation Model
    EmissionModel:
      type: object
      required:
      - rows
      properties:
        rows:
          type: array
          items:
            $ref: '#/components/schemas/EmissionRow'
    EmissionsStatus:
      type: object
      required:
      - status
      - code
      properties:
        status:
          type: string
        code:
          type: integer
        name:
          type: string
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ErrorEntry'
      example:
        status: Success
        code: 200
        name: test
    ErrorEntry:
      required:
      - name
      - message
      type: object
      properties:
        name:
          type: string
        message:
          type: string
        location:
          type: string
      example:
        name: ValidationError
        message: The field 'id' is required.
        location: In body of request at position [0]
    EmissionsEconModel:
      type: object
      required:
      - emissions
      - name
      - unique
      properties:
        emissions:
          $ref: '#/components/schemas/EmissionModel'
        name:
          type: string
          description: Name
        unique:
          type: boolean
          description: Unique
        id:
          type: string
          description: ID
        copiedFrom:
          type: string
          description: Copied From
        scenario:
          type: string
          description: Scenario ID
        tags:
          type: array
          items:
            type: string
            description: Tag ID
        well:
          type: string
          description: Well ID
        createdAt:
          type: string
          format: date
          description: Creation Date
        updatedAt:
          type: string
          format: date
          description: Updated At
        createdBy:
          type: string
          description: Created By
        lastUpdatedBy:
          type: string
          description: Last Updated By
      example:
        id: 5e272d39b78910dd2a1bd8fe
        copiedFrom: 63b856e816f758cc5b0f1106
        name: Test
        scenario: 63b8571d70ed63f50bd6d63f
        tags:
        - 63b85737ff846cee7b1f6fdc
        unique: true
        well: 63b85759e1d7eb4e31579f51
        createdAt: '2020-01-21T16:58:08.986Z'
        updatedAt: '2020-01-21T17:58:08.986Z'
        createdBy: 63b857cb68f3b96efc700998
        lastUpdatedBy: 63b857cb68f3b96efc700998
        emissions:
          rows:
          - selected: true
            category: associated_gas
            co2e: 123
            co2: 0
            ch4: 0
            n2o: 0
            unit: mt_per_mbbl
            escalationModel: 63b857cb68f3b96efc700998
    EmissionsEconModelList:
      type: array
      items:
        $ref: '#/components/schemas/EmissionsEconModel'
      maxItems: 200
      example:
      - id: 5e272d39b78910dd2a1bd8fe
        copiedFrom: 63b856e816f758cc5b0f1106
        name: Test
        scenario: 63b8571d70ed63f50bd6d63f
        tags:
        - 63b85737ff846cee7b1f6fdc
        unique: true
        well: 63b85759e1d7eb4e31579f51
        createdAt: '2020-01-21T16:58:08.986Z'
        updatedAt: '2020-01-21T17:58:08.986Z'
        createdBy: 63b857cb68f3b96efc700998
        lastUpdatedBy: 63b857cb68f3b96efc700998
        emissions:
          rows:
          - selected: true
            category: associated_gas
            co2e: 123
            co2: 0
            ch4: 0
            n2o: 0
            unit: mt_per_mbbl
            escalationModel: 63b857cb68f3b96efc700998
    EmissionsMultiStatusResponse:
      type: object
      properties:
        generalErrors:
          type: array
          items:
            $ref: '#/components/schemas/ErrorEntry'
        results:
          type: array
          items:
            $ref: '#/components/schemas/EmissionsStatus'
        failedCount:
          type: integer
        successCount:
          type: integer
      example:
        generalErrors:
        - name: ValidationError
          message: The field 'name' is required.
          location: In body of request at position [0]
        - name: ValidationError
          message: The field 'unique' is required.
          location: In body of request at position [2]
        results:
        - status: Success
          code: 200
          name: test
        - status: Success
          code: 200
          name: test1
        failedCount: 2
        successCount: 2
    EmissionsInput:
      type: object
      required:
      - name
      - unique
      - emissions
      properties:
        name:
          type: string
          description: Name
        unique:
          type: boolean
          description: Unique
        emissions:
          $ref: '#/components/schemas/EmissionModel'
        scenario:
          type: string
          description: Scenario ID
        well:
          type: string
          description: Well ID
      example:
        name: Test
        scenario: 63b8571d70ed63f50bd6d63f
        unique: true
        well: 63b85759e1d7eb4e31579f51
        emissions:
          rows:
          - selected: true
            category: associated_gas
            co2e: 123
            co2: 0
            ch4: 0
            n2o: 0
            unit: mt_per_mbbl
            escalationModel: 63b857cb68f3b96efc700998
  parameters:
    takeParam:
      name: take
      in: query
      description: max records to return
      schema:
        type: integer
        format: int32
        default: 25
        maximum: 200
        minimum: 1
    skipParam:
      name: skip
      in: query
      description: number of items to skip
      schema:
        type: integer
        format: int32
        default: 0
    cursorParam:
      name: cursor
      in: query
      description: used in pagination to get the next page
      schema:
        type: string
    sortParam:
      name: sort
      in: query
      description: field to sort by, including + or - at the beginning for ascending or descending order, respectively
      schema:
        type: string
  securitySchemes:
    api-key:
      type: apiKey
      name: x-api-key
      in: header
x-google-management:
  metrics:
  - name: read-request-rate
    displayName: Read Request Rate
    valueType: INT64
    metricKind: DELTA
  - name: write-request-rate
    displayName: Write Request Rate
    valueType: INT64
    metricKind: DELTA
  quota:
    limits:
    - name: read-request-rate-limit
      metric: read-request-rate
      unit: 1/min/{project}
      values:
        STANDARD: 800
    - name: write-request-rate-limit
      metric: write-request-rate
      unit: 1/min/{project}
      values:
        STANDARD: 200
x-provenance:
  method: harvested
  publisher: ComboCurve
  source: https://storage.googleapis.com/beta-combocurve-api-docs/openapi-spec.yaml
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)