combocurve-client-csharp

Logo

C# client for the ComboCurve REST API

View the Project on GitHub insidepetroleum/combocurve-client-csharp

ComboCurve client for CSharp

Easily implement syncing your company data with the ComboCurve REST API using .NET.

Before you begin

You will need an API key and service account credentials. If you don’t have them yet contact Inside Petroleum to obtain them.

Frameworks supported

Dependencies

Installation

It can be installed as a NuGet package:

PM> Install-Package ComboCurve.Api

Then use the namespaces:

using ComboCurve.Api.Api;
using ComboCurve.Api.Auth;
using ComboCurve.Api.Client;
using ComboCurve.Api.Model;

Usage

To use the API client with a HTTP proxy, setup a System.Net.WebProxy

Configuration c = new Configuration();
System.Net.WebProxy webProxy = new System.Net.WebProxy("http://myProxyUrl:80/");
webProxy.Credentials = System.Net.CredentialCache.DefaultCredentials;
c.Proxy = webProxy;

Getting Started

using System.Collections.Generic;
using System.Diagnostics;
using ComboCurve.Api.Api;
using ComboCurve.Api.Auth;
using ComboCurve.Api.Client;
using ComboCurve.Api.Model;

namespace Example
{
    public class Example
    {
        public static void Main()
        {

            // Use this to create your service account manually
            var serviceAccount = new ServiceAccount
            {
                ClientEmail = "YOUR_CLIENT_EMAIL",
                ClientId = "YOUR_CLIENT_ID",
                PrivateKey = "YOUR_PRIVATE_KEY"
            };
            // Or use this to load it from a JSON file
            // var serviceAccount = ServiceAccount.FromFile("PATH_TO_JSON_FILE");

            // Set your API key
            var apiKey = "YOUR_API_KEY";

            var apiInstance = new WellsApi(serviceAccount, apiKey);
            var skip = 56;  // int? | number of items to skip (optional)  (default to 0)
            var take = 56;  // int? | max records to return (optional)  (default to 25)
            var sort = sort_example;  // string | field to sort by, including + or - at the beginning for ascending or descending order, respectively (optional) 
            var cursor = cursor_example;  // string | used in pagination to get the next page (optional) 
            var api10 = api10_example;  // string | filter by api10 (optional) 
            var api12 = api12_example;  // string | filter by api12 (optional) 
            var county = county_example;  // string | filter by county (optional) 
            var state = state_example;  // string | filter by state (optional) 
            var wellName = wellName_example;  // string | filter by wellName (optional) 
            var chosenID = chosenID_example;  // string | filter by chosenID (optional) 
            var inptID = inptID_example;  // string | filter by inptID (optional) 
            var api14 = api14_example;  // string | filter by api14 (optional) 
            var createdAt = 2013-10-20;  // DateTimeOffset? | 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 (optional) 
            var updatedAt = 2013-10-20;  // DateTimeOffset? | 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 (optional) 
            var dataSource = dataSource_example;  // string | filter by dataSource (optional) 
            var currentOperator = currentOperator_example;  // string | filter by dataSource (optional) 

            try
            {
                // Returns a list of well documents.
                ICollection<Well> result = apiInstance.GetWells(skip, take, sort, cursor, api10, api12, county, state, wellName, chosenID, inptID, api14, createdAt, updatedAt, dataSource, currentOperator);
                Debug.WriteLine(result);
            }
            catch (ApiException e)
            {
                Debug.Print("Exception when calling WellsApi.GetWells: " + e.Message );
                Debug.Print("Status Code: "+ e.ErrorCode);
                Debug.Print(e.StackTrace);
            }

        }
    }
}

Methods

All URIs are relative to https://api.combocurve.com

Class Method HTTP request Description
ActualForecastApi DeleteActualForecastById DELETE /v1/projects/{projectId}/econ-models/actual-forecast/{id} Delete the assumptions document that matches the given id scoped to projectId project.
ActualForecastApi GetActualForecast GET /v1/projects/{projectId}/econ-models/actual-forecast Returns a list of actual of forecast documents.
ActualForecastApi GetActualForecastById GET /v1/projects/{projectId}/econ-models/actual-forecast/{id} Returns the actual forecast document that matches the given id.
ActualForecastApi HeadActualForecast HEAD /v1/projects/{projectId}/econ-models/actual-forecast Returns metadata about the existing actual or forecast documents.
ActualForecastApi PostActualForecast POST /v1/projects/{projectId}/econ-models/actual-forecast Inserts a list of actual or forecast documents.
ActualForecastApi PutActualForecast PUT /v1/projects/{projectId}/econ-models/actual-forecast Replace or create a list of actual or forecast documents.
AriesForecastApi GetAriesForecast GET /v1/projects/{projectId}/forecasts/{forecastId}/aries Returns a list of aries forecast scoped to projectId project and forecastId forecast.
AriesForecastApi HeadAriesForecast HEAD /v1/projects/{projectId}/forecasts/{forecastId}/aries Returns metadata about the aries forecast documents scoped to projectId project and forecastId forecast.
CapexApi DeleteCapexById DELETE /v1/projects/{projectId}/econ-models/capex/{id} Delete the assumptions document that matches the given id scoped to projectId project.
CapexApi GetCapex GET /v1/projects/{projectId}/econ-models/capex Returns a list of capex documents.
CapexApi GetCapexById GET /v1/projects/{projectId}/econ-models/capex/{id} Returns the reserves category document that matches the given id.
CapexApi HeadCapex HEAD /v1/projects/{projectId}/econ-models/capex Returns metadata about the existing capex documents.
CapexApi PostCapex POST /v1/projects/{projectId}/econ-models/capex Inserts a list of capex documents.
CapexApi PutCapex PUT /v1/projects/{projectId}/econ-models/capex Replace or create a list of capex documents.
CompanyWellsApi DeleteProjectCompanyWells DELETE /v1/projects/{projectId}/company-wells Remove the company wells documents that match the given filters from the projectId scope.
CompanyWellsApi GetProjectCompanyWellById GET /v1/projects/{projectId}/company-wells/{id}  
CompanyWellsApi GetProjectCompanyWells GET /v1/projects/{projectId}/company-wells Returns a list of company well documents in projectId scope.
CompanyWellsApi HeadProjectCompanyWells HEAD /v1/projects/{projectId}/company-wells Returns metadata about the existing company well documents in projectId scope.
CompanyWellsApi PostProjectCompanyWells POST /v1/projects/{projectId}/company-wells  
CustomColumnsApi GetCustomColumns GET /v1/custom-columns/{collection} Returns the custom column that matches the given collection.
DailyProductionsApi DeleteDailyProductions DELETE /v1/daily-productions Delete the daily productions documents that match the given filters.
DailyProductionsApi GetDailyProductions GET /v1/daily-productions Returns a list of daily production documents in the company scope.
DailyProductionsApi HeadDailyProductions HEAD /v1/daily-productions Returns metadata about the existing daily production documents in the company scope.
DailyProductionsApi PatchDailyProductions PATCH /v1/daily-productions Patch a list of daily production documents.
DailyProductionsApi PostDailyProductions POST /v1/daily-productions Inserts a list of daily production documents.
DailyProductionsApi PutDailyProductions PUT /v1/daily-productions Upserts a list of daily production documents.
DailyVolumesApi GetForecastDailyVolumes GET /v1/projects/{projectId}/forecasts/{forecastId}/daily-volumes Returns a list of forecast volumes scoped to projectId project, forecastId forecast, and well.
DailyVolumesApi GetForecastMonthlyVolumes GET /v1/projects/{projectId}/forecasts/{forecastId}/monthly-volumes Returns a list of forecast volumes scoped to projectId project, forecastId forecast, and well.
DailyVolumesApi HeadForecastDailyVolumes HEAD /v1/projects/{projectId}/forecasts/{forecastId}/daily-volumes Returns metadata about the existing forecast volumes scoped to projectId project, forecastId forecast, and well.
DailyVolumesApi HeadForecastMonthlyVolumes HEAD /v1/projects/{projectId}/forecasts/{forecastId}/monthly-volumes Returns metadata about the existing forecast volumes scoped to projectId project, forecastId forecast, and well.
DateSettingsApi DeleteDateSettingsById DELETE /v1/projects/{projectId}/econ-models/date-settings/{id} Delete the assumptions document that matches the given id scoped to projectId project.
DateSettingsApi GetDateSettings GET /v1/projects/{projectId}/econ-models/date-settings Returns a list of date-settings documents.
DateSettingsApi GetDateSettingsById GET /v1/projects/{projectId}/econ-models/date-settings/{id} Returns the date-settings document that matches the given id.
DateSettingsApi HeadDateSettings HEAD /v1/projects/{projectId}/econ-models/date-settings Returns metadata about the existing date-settings documents.
DateSettingsApi PostDateSettings POST /v1/projects/{projectId}/econ-models/date-settings Inserts a list of date-settings documents.
DateSettingsApi PutDateSettings PUT /v1/projects/{projectId}/econ-models/date-settings Replace or create a list of date-settings documents.
DepreciationApi DeleteDepreciationById DELETE /v1/projects/{projectId}/econ-models/depreciation/{id} Delete the assumptions document that matches the given id scoped to projectId project.
DepreciationApi GetDepreciation GET /v1/projects/{projectId}/econ-models/depreciation Returns a list of depreciation documents.
DepreciationApi GetDepreciationById GET /v1/projects/{projectId}/econ-models/depreciation/{id} Returns the depreciation document that matches the given id.
DepreciationApi HeadDepreciation HEAD /v1/projects/{projectId}/econ-models/depreciation Returns metadata about the existing depreciation documents.
DepreciationApi PostDepreciation POST /v1/projects/{projectId}/econ-models/depreciation Inserts a list of depreciation documents.
DepreciationApi PutDepreciation PUT /v1/projects/{projectId}/econ-models/depreciation Replace or create a list of depreciation documents.
DifferentialsApi DeleteDifferentialById DELETE /v1/projects/{projectId}/econ-models/differentials/{id} Delete the assumptions document that matches the given id scoped to projectId project.
DifferentialsApi GetDifferentialById GET /v1/projects/{projectId}/econ-models/differentials/{id} Returns the differential document that matches the given id.
DifferentialsApi GetDifferentials GET /v1/projects/{projectId}/econ-models/differentials Returns a list of differentials documents.
DifferentialsApi HeadDifferentials HEAD /v1/projects/{projectId}/econ-models/differentials Returns metadata about the existing differentials documents.
DifferentialsApi PostDifferentials POST /v1/projects/{projectId}/econ-models/differentials Inserts a list of differentials documents.
DifferentialsApi PutDifferentials PUT /v1/projects/{projectId}/econ-models/differentials Replace or create a list of differentials documents.
DirectionalSurveysApi DeleteDirectionalSurveysById DELETE /v1/directional-surveys/{id} Delete the directional survey document that matches the given id.
DirectionalSurveysApi GetDirectionalSurveys GET /v1/directional-surveys Returns a list of directional surveys documents.
DirectionalSurveysApi GetDirectionalSurveysById GET /v1/directional-surveys/{id} Returns the DS document that matches the given id.
DirectionalSurveysApi HeadDirectionalSurveys HEAD /v1/directional-surveys Returns metadata about the existing directional surveys documents.
DirectionalSurveysApi PostDirectionalSurveys POST /v1/directional-surveys Insert a new directional Survey.
DirectionalSurveysApi PutDirectionalSurveys PUT /v1/directional-surveys/{id} Update a Directional Survey.
EconModelsApi GetEconModelById GET /v1/projects/{projectId}/econ-models/{id} Returns the econ model document that matches the given id.
EconModelsApi GetEconModels GET /v1/projects/{projectId}/econ-models Returns a list of econ model documents.
EconModelsApi HeadEconModels HEAD /v1/projects/{projectId}/econ-models Returns metadata about the existing econ model documents.
EconModelsAssignmentsApi DeleteEconModelAssignmentDelete DELETE /v1/projects/{projectId}/econ-models/{econName}/{econModelId}/assignments  
EconModelsAssignmentsApi GetEconModelsAssignmentsRead GET /v1/projects/{projectId}/econ-models/{econName}/{econModelId}/assignments  
EconModelsAssignmentsApi HeadEconModelsAssignmentsCount HEAD /v1/projects/{projectId}/econ-models/{econName}/{econModelId}/assignments  
EconModelsAssignmentsApi PostEconModelAssignmentUpsert POST /v1/projects/{projectId}/econ-models/{econName}/{econModelId}/assignments  
EconModelsAssignmentsApi PutEconModelAssignmentUpsert PUT /v1/projects/{projectId}/econ-models/{econName}/{econModelId}/assignments  
EconRunsApi GetEconRunById GET /v1/projects/{projectId}/scenarios/{scenarioId}/econ-runs/{id} Returns the econ run document that matches the given id scoped to projectId project and scenarioId scenario.
EconRunsApi GetEconRuns GET /v1/projects/{projectId}/scenarios/{scenarioId}/econ-runs Returns a list of econ run documents scoped to projectId project and scenarioId scenario.
EconRunsApi GetRootEconRunById GET /v1/econ-runs/{id} Returns the econ run document that matches the given id.
EconRunsApi GetRootEconRuns GET /v1/econ-runs Returns a list of econ run documents.
EconRunsApi HeadEconRuns HEAD /v1/projects/{projectId}/scenarios/{scenarioId}/econ-runs Returns metadata about the existing econ run documents scoped to projectId project and scenarioId scenario.
EconRunsApi HeadRootEconRuns HEAD /v1/econ-runs Returns metadata about the existing econ run documents.
EmissionsApi DeleteEmissionById DELETE /v1/projects/{projectId}/econ-models/emissions/{id} Delete the assumptions document that matches the given id scoped to projectId project.
EmissionsApi GetEmissionById GET /v1/projects/{projectId}/econ-models/emissions/{id} Returns the emission model document that matches the given id.
EmissionsApi GetEmissions GET /v1/projects/{projectId}/econ-models/emissions Returns a list of emission models documents.
EmissionsApi HeadEmissions HEAD /v1/projects/{projectId}/econ-models/emissions Returns metadata about the existing emission models documents.
EmissionsApi PostEmissions POST /v1/projects/{projectId}/econ-models/emissions Inserts a list of emission models documents.
EmissionsApi PutEmissions PUT /v1/projects/{projectId}/econ-models/emissions Replace or create a list of emission models documents.
EscalationApi DeleteEscalationById DELETE /v1/projects/{projectId}/econ-models/escalations/{id} Delete the assumptions document that matches the given id scoped to projectId project.
EscalationApi GetEscalationById GET /v1/projects/{projectId}/econ-models/escalations/{id} Returns the escalation model document that matches the given id.
EscalationApi GetEscalations GET /v1/projects/{projectId}/econ-models/escalations Returns a list of escalation models documents.
EscalationApi HeadEscalations HEAD /v1/projects/{projectId}/econ-models/escalations Returns metadata about the existing escalation models documents.
EscalationApi PostEscalations POST /v1/projects/{projectId}/econ-models/escalations Inserts a list of escalation models documents.
EscalationApi PutEscalations PUT /v1/projects/{projectId}/econ-models/escalations Replace or create a list of escalation models documents.
ExpensesApi DeleteExpensesById DELETE /v1/projects/{projectId}/econ-models/expenses/{id} Delete the assumptions document that matches the given id scoped to projectId project.
ExpensesApi GetExpenses GET /v1/projects/{projectId}/econ-models/expenses Returns a list of expenses documents.
ExpensesApi GetExpensesById GET /v1/projects/{projectId}/econ-models/expenses/{id} Returns the reserves category document that matches the given id.
ExpensesApi HeadExpenses HEAD /v1/projects/{projectId}/econ-models/expenses Returns metadata about the existing expenses documents.
ExpensesApi PostExpenses POST /v1/projects/{projectId}/econ-models/expenses Inserts a list of expenses documents.
ExpensesApi PutExpenses PUT /v1/projects/{projectId}/econ-models/expenses Replace or create a list of expenses documents.
FluidModelsApi DeleteFluidModelById DELETE /v1/projects/{projectId}/econ-models/fluid-models/{id} Delete the assumptions document that matches the given id scoped to projectId project.
FluidModelsApi GetFluidModelById GET /v1/projects/{projectId}/econ-models/fluid-models/{id} Returns the fluid model document that matches the given id.
FluidModelsApi GetFluidModels GET /v1/projects/{projectId}/econ-models/fluid-models Returns a list of fluid model documents.
FluidModelsApi HeadFluidModels HEAD /v1/projects/{projectId}/econ-models/fluid-models Returns metadata about the existing fluid model documents.
FluidModelsApi PostFluidModels POST /v1/projects/{projectId}/econ-models/fluid-models Inserts a list of fluid model documents.
FluidModelsApi PutFluidModels PUT /v1/projects/{projectId}/econ-models/fluid-models Replace or create a list of fluid models documents.
ForecastOutputApi GetForecastOutputById GET /v1/projects/{projectId}/forecasts/{forecastId}/outputs/{id} Returns the forecast data document that matches the given id scoped to projectId project and forecastId forecast.
ForecastOutputApi GetForecastOutputs GET /v1/projects/{projectId}/forecasts/{forecastId}/outputs Returns a list of forecast data documents scoped to projectId project and forecastId forecast.
ForecastOutputApi HeadForecastOutputs HEAD /v1/projects/{projectId}/forecasts/{forecastId}/outputs Returns metadata about the existing forecast data documents scoped to projectId project and forecastId forecast.
ForecastParametersApi DeleteProjectsForecastSegmentParameters DELETE /v1/projects/{projectId}/forecasts/{forecastId}/parameters/{wellId}/{phase}/{series} Removes all of the segments for a defined well, phase, and series
ForecastParametersApi PostProjectsForecastSegmentParameters POST /v1/projects/{projectId}/forecasts/{forecastId}/parameters/{wellId}/{phase}/{series} Inserts a list of segments in a forecast for a defined well, phase, and series.
ForecastParametersApi PutProjectsForecastSegmentParameters PUT /v1/projects/{projectId}/forecasts/{forecastId}/parameters/{wellId}/{phase}/{series} Updates all segments with provided list of new segments for a defined well, phase, and series.
ForecastVolumesApi GetRootForecastDailyVolumes GET /v1/forecast-daily-volumes Returns a list of forecast volumes
ForecastVolumesApi GetRootForecastMonthlyVolumes GET /v1/forecast-monthly-volumes Returns a list of forecast volumes
ForecastVolumesApi HeadRootForecastDailyVolumes HEAD /v1/forecast-daily-volumes Returns metadata about the existing forecast volumes
ForecastVolumesApi HeadRootForecastMonthlyVolumes HEAD /v1/forecast-monthly-volumes Returns metadata about the existing forecast volumes
ForecastsApi DeleteForecastById DELETE /v1/projects/{projectId}/forecasts/{id} Delete the Forecast that matches the given id scoped to projectId project.
ForecastsApi GetForecastById GET /v1/projects/{projectId}/forecasts/{id} Returns the forecast document that matches the given id scoped to projectId project.
ForecastsApi GetForecasts GET /v1/projects/{projectId}/forecasts Returns a list of forecast documents scoped to projectId project.
ForecastsApi HeadForecasts HEAD /v1/projects/{projectId}/forecasts Returns metadata about the existing forecast documents scoped to projectId project.
ForecastsApi PatchForecast PATCH /v1/projects/{projectId}/forecasts/{id} Updates Forecast.
ForecastsApi PostForecasts POST /v1/projects/{projectId}/forecasts Inserts a list of forecasts documents in projectId scope.
ForecastsApi PostWellsToForecast POST /v1/projects/{projectId}/forecasts/{id}/wells Inserts a list of well into a forecast.
GeneralOptionsApi DeleteGeneralOptionsById DELETE /v1/projects/{projectId}/econ-models/general-options/{id} Delete the assumptions document that matches the given id scoped to projectId project.
GeneralOptionsApi GetGeneralOptions GET /v1/projects/{projectId}/econ-models/general-options Returns a list of general options documents.
GeneralOptionsApi GetGeneralOptionsById GET /v1/projects/{projectId}/econ-models/general-options/{id} Returns the general options document that matches the given id.
GeneralOptionsApi HeadGeneralOptions HEAD /v1/projects/{projectId}/econ-models/general-options Returns metadata about the existing general options documents.
GeneralOptionsApi PostGeneralOptions POST /v1/projects/{projectId}/econ-models/general-options Inserts a list of general options documents.
GeneralOptionsApi PutGeneralOptions PUT /v1/projects/{projectId}/econ-models/general-options Replace or create a list of general options documents.
MonthlyExportApi GetMonthlyExportById GET /v1/projects/{projectId}/scenarios/{scenarioId}/econ-runs/{econRunId}/monthly-exports/{id} Returns the econ monthly documents that matches the given monthly export id scoped to projectId project, scenarioId scenario and econRunId econ run, monthly export must be created before.
MonthlyExportApi HeadMonthlyExports HEAD /v1/projects/{projectId}/scenarios/{scenarioId}/econ-runs/{econRunId}/monthly-exports Returns metadata about the existing econ monthly documents scoped to projectId project, scenarioId scenario and econRunId econ run.
MonthlyExportApi PostMonthlyExports POST /v1/projects/{projectId}/scenarios/{scenarioId}/econ-runs/{econRunId}/monthly-exports Create an monthly export of econ monthly documents scoped to projectId project, scenarioId scenario and econRunId econ run. Response id should be used to get the results.
MonthlyProductionsApi DeleteMonthlyProductions DELETE /v1/monthly-productions Delete the monthly productions documents that match the given filters.
MonthlyProductionsApi GetMonthlyProductions GET /v1/monthly-productions Returns a list of monthly production documents in the company scope.
MonthlyProductionsApi HeadMonthlyProductions HEAD /v1/monthly-productions Returns metadata about the existing monthly production documents in the company scope.
MonthlyProductionsApi PatchMonthlyProductions PATCH /v1/monthly-productions Patch a list of monthly production documents.
MonthlyProductionsApi PostMonthlyProductions POST /v1/monthly-productions Inserts a list of monthly production documents.
MonthlyProductionsApi PutMonthlyProductions PUT /v1/monthly-productions Upserts a list of monthly production documents.
OneLinersApi GetOneLinerById GET /v1/projects/{projectId}/scenarios/{scenarioId}/econ-runs/{econRunId}/one-liners/{id} Returns the econ one liner document that matches the given id scoped to projectId project, scenarioId scenario and econRunId econ run.
OneLinersApi GetOneLiners GET /v1/projects/{projectId}/scenarios/{scenarioId}/econ-runs/{econRunId}/one-liners Returns a list of econ one liner documents scoped to projectId project, scenarioId scenario and econRunId econ run.
OneLinersApi GetOneLinersComboNames GET /v1/projects/{projectId}/scenarios/{scenarioId}/econ-runs/{econRunId}/one-liners/combo-names Returns a list of combo names contained in the one liner documents that are scoped to project, scenario and econ run.
OneLinersApi HeadOneLiners HEAD /v1/projects/{projectId}/scenarios/{scenarioId}/econ-runs/{econRunId}/one-liners Returns metadata about the existing econ one liners documents scoped to projectId project, scenarioId scenario and econRunId econ run.
OwnershipQualifiersApi GetOwnershipQualifiers GET /v1/ownership-qualifiers Returns a list of ownership qualifiers documents.
OwnershipQualifiersApi GetOwnershipQualifiersById GET /v1/ownership-qualifiers/{id} Returns the ownership qualifier document that matches the given id.
OwnershipQualifiersApi HeadOwnershipQualifiers HEAD /v1/ownership-qualifiers Returns metadata about the existing ownership qualifiers documents.
OwnershipQualifiersApi PostOwnershipQualifiers POST /v1/ownership-qualifiers Inserts a list of ownership qualifiers documents.
OwnershipQualifiersApi PutOwnershipQualifiers PUT /v1/ownership-qualifiers Replace or create a list of ownership qualifiers documents.
OwnershipReversionApi DeleteOwnershipReversionById DELETE /v1/projects/{projectId}/econ-models/ownership-reversions/{id} Delete the assumptions document that matches the given id scoped to projectId project.
OwnershipReversionApi GetOwnershipReversionById GET /v1/projects/{projectId}/econ-models/ownership-reversions/{id} Returns the Ownership Reversions document that matches the given id.
OwnershipReversionApi GetOwnershipReversions GET /v1/projects/{projectId}/econ-models/ownership-reversions Returns a list of ownership reversions documents.
OwnershipReversionApi HeadOwnershipReversions HEAD /v1/projects/{projectId}/econ-models/ownership-reversions Returns metadata about the existing ownership reversions documents.
OwnershipReversionApi PostOwnershipReversions POST /v1/projects/{projectId}/econ-models/ownership-reversions Inserts a list of ownership reversions documents.
OwnershipReversionApi PutOwnershipReversions PUT /v1/projects/{projectId}/econ-models/ownership-reversions Replace or create a list of ownership reversions documents.
PricingApi DeletePricingById DELETE /v1/projects/{projectId}/econ-models/pricing/{id} Delete the assumptions document that matches the given id scoped to projectId project.
PricingApi GetPricing GET /v1/projects/{projectId}/econ-models/pricing Returns a list of pricing documents.
PricingApi GetPricingById GET /v1/projects/{projectId}/econ-models/pricing/{id} Returns the reserves category document that matches the given id.
PricingApi HeadPricing HEAD /v1/projects/{projectId}/econ-models/pricing Returns metadata about the existing pricing documents.
PricingApi PostPricing POST /v1/projects/{projectId}/econ-models/pricing Inserts a list of pricing documents.
PricingApi PutPricing PUT /v1/projects/{projectId}/econ-models/pricing Replace or create a list of pricing documents.
ProductionTaxesApi DeleteProductionTaxesById DELETE /v1/projects/{projectId}/econ-models/production-taxes/{id} Delete the assumptions document that matches the given id scoped to projectId project.
ProductionTaxesApi GetProductionTaxes GET /v1/projects/{projectId}/econ-models/production-taxes Returns a list of production-taxes documents.
ProductionTaxesApi GetProductionTaxesById GET /v1/projects/{projectId}/econ-models/production-taxes/{id} Returns the reserves category document that matches the given id.
ProductionTaxesApi HeadProductionTaxes HEAD /v1/projects/{projectId}/econ-models/production-taxes Returns metadata about the existing production-taxes documents.
ProductionTaxesApi PostProductionTaxes POST /v1/projects/{projectId}/econ-models/production-taxes Inserts a list of production-taxes documents.
ProductionTaxesApi PutProductionTaxes PUT /v1/projects/{projectId}/econ-models/production-taxes Replace or create a list of production-taxes documents.
ProjectDailyProductionsApi DeleteProjectDailyProductions DELETE /v1/projects/{projectId}/daily-productions Delete the daily productions documents that match the given filters.
ProjectDailyProductionsApi GetProjectsDailyProductions GET /v1/projects/{projectId}/daily-productions Returns a list of daily production documents in the specified project’s scope.
ProjectDailyProductionsApi HeadProjectsDailyProductions HEAD /v1/projects/{projectId}/daily-productions Returns metadata about the existing daily production documents in the specified project’s scope.
ProjectDailyProductionsApi PatchProjectsDailyProductions PATCH /v1/projects/{projectId}/daily-productions Patch a list of daily production documents in projectId scope.
ProjectDailyProductionsApi PostProjectsDailyProductions POST /v1/projects/{projectId}/daily-productions Inserts a list of daily production documents in projectId scope.
ProjectDailyProductionsApi PutProjectsDailyProductions PUT /v1/projects/{projectId}/daily-productions Upserts a list of daily production documents in projectId scope.
ProjectMonthlyProductionsApi DeleteProjectMonthlyProductions DELETE /v1/projects/{projectId}/monthly-productions Delete the monthly productions documents that match the given filters.
ProjectMonthlyProductionsApi GetProjectsMonthlyProductions GET /v1/projects/{projectId}/monthly-productions Returns a list of monthly production documents in the specified project’s scope.
ProjectMonthlyProductionsApi HeadProjectsMonthlyProductions HEAD /v1/projects/{projectId}/monthly-productions Returns metadata about the existing monthly production documents in the specified project’s scope.
ProjectMonthlyProductionsApi PatchProjectsMonthlyProductions PATCH /v1/projects/{projectId}/monthly-productions Patch a list of monthly production documents in projectId scope.
ProjectMonthlyProductionsApi PostProjectsMonthlyProductions POST /v1/projects/{projectId}/monthly-productions Inserts a list of monthly production documents in projectId scope.
ProjectMonthlyProductionsApi PutProjectsMonthlyProductions PUT /v1/projects/{projectId}/monthly-productions Upserts a list of monthly production documents in projectId scope.
ProjectWellsApi DeleteProjectWellById DELETE /v1/projects/{projectId}/wells/{id} Delete the well document that matches the given id scoped to projectId project.
ProjectWellsApi DeleteProjectWells DELETE /v1/projects/{projectId}/wells Delete the wells documents that match the given filters scoped to projectId project.
ProjectWellsApi GetProjectWellById GET /v1/projects/{projectId}/wells/{id} Returns the well document that matches the given id scoped to projectId project.
ProjectWellsApi GetProjectWells GET /v1/projects/{projectId}/wells Returns a list of well documents scoped to projectId project.
ProjectWellsApi HeadProjectWells HEAD /v1/projects/{projectId}/wells Returns metadata about the existing well documents scoped to projectId project.
ProjectWellsApi PatchProjectWellById PATCH /v1/projects/{projectId}/wells/{id} Updates the well document that matches the given id in the specified project’s scope.
ProjectWellsApi PatchProjectWells PATCH /v1/projects/{projectId}/wells Updates a list of well documents in the specified project’s scope.
ProjectWellsApi PostProjectsWells POST /v1/projects/{projectId}/wells Inserts a list of well documents into the specified project’s scope.
ProjectWellsApi PutProjectsWells PUT /v1/projects/{projectId}/wells Replaces a list of well documents in the specified project’s scope.
ProjectWellsApi PutProjectsWellsById PUT /v1/projects/{projectId}/wells/{id} Replaces the well document that matches the given id in the specified project’s scope.
ProjectsApi GetProjectById GET /v1/projects/{id} Returns the project document that matches the given id.
ProjectsApi GetProjects GET /v1/projects Returns a list of project documents.
ProjectsApi HeadProjects HEAD /v1/projects Returns metadata about the existing project documents.
ProjectsApi PostProjects POST /v1/projects Inserts a list of project documents.
QualifiersApi DeleteQualifiersDelete DELETE /v1/projects/{projectId}/scenarios/{scenarioId}/qualifiers  
QualifiersApi GetQualifiersRead GET /v1/projects/{projectId}/scenarios/{scenarioId}/qualifiers  
QualifiersApi PostQualifiersUpsert POST /v1/projects/{projectId}/scenarios/{scenarioId}/qualifiers  
QualifiersApi PutQualifiersUpsert PUT /v1/projects/{projectId}/scenarios/{scenarioId}/qualifiers  
ReservesCategoriesApi DeleteReservesCategoryById DELETE /v1/projects/{projectId}/econ-models/reserves-categories/{id} Delete the assumptions document that matches the given id scoped to projectId project.
ReservesCategoriesApi GetReservesCategories GET /v1/projects/{projectId}/econ-models/reserves-categories Returns a list of reserves categories documents.
ReservesCategoriesApi GetReservesCategoryById GET /v1/projects/{projectId}/econ-models/reserves-categories/{id} Returns the reserves category document that matches the given id.
ReservesCategoriesApi HeadReservesCategories HEAD /v1/projects/{projectId}/econ-models/reserves-categories Returns metadata about the existing reserves categories documents.
ReservesCategoriesApi PostReservesCategories POST /v1/projects/{projectId}/econ-models/reserves-categories Inserts a list of reserves categories documents.
ReservesCategoriesApi PutReservesCategories PUT /v1/projects/{projectId}/econ-models/reserves-categories Replace or create a list of reserves categories documents.
RiskingsApi DeleteRiskingsById DELETE /v1/projects/{projectId}/econ-models/riskings/{id} Delete the assumptions document that matches the given id scoped to projectId project.
RiskingsApi GetRiskingById GET /v1/projects/{projectId}/econ-models/riskings/{id} Returns the riskings model document that matches the given id.
RiskingsApi GetRiskings GET /v1/projects/{projectId}/econ-models/riskings Returns a list of riskings models documents.
RiskingsApi HeadRiskings HEAD /v1/projects/{projectId}/econ-models/riskings Returns metadata about the existing riskings models documents.
RiskingsApi PostRiskings POST /v1/projects/{projectId}/econ-models/riskings Inserts a list of riskings models documents.
RiskingsApi PutRiskings PUT /v1/projects/{projectId}/econ-models/riskings Replace or create a list of riskings models documents.
ScenarioCombosApi DeleteScenarioCombosDelete DELETE /v1/projects/{projectId}/scenarios/{scenarioId}/combos  
ScenarioCombosApi GetScenarioCombosRead GET /v1/projects/{projectId}/scenarios/{scenarioId}/combos  
ScenarioCombosApi HeadScenarioCombosCount HEAD /v1/projects/{projectId}/scenarios/{scenarioId}/combos  
ScenarioCombosApi PostScenarioCombosUpsert POST /v1/projects/{projectId}/scenarios/{scenarioId}/combos  
ScenarioCombosApi PutScenarioCombosUpsert PUT /v1/projects/{projectId}/scenarios/{scenarioId}/combos  
ScenarioWellAssignmentsApi DeleteScenarioWellsDelete DELETE /v1/projects/{projectId}/scenarios/{scenarioId}/well-assignments  
ScenarioWellAssignmentsApi GetScenarioWellsRead GET /v1/projects/{projectId}/scenarios/{scenarioId}/well-assignments  
ScenarioWellAssignmentsApi PostScenarioWellsUpsert POST /v1/projects/{projectId}/scenarios/{scenarioId}/well-assignments  
ScenarioWellAssignmentsApi PutScenarioWellsUpsert PUT /v1/projects/{projectId}/scenarios/{scenarioId}/well-assignments  
ScenariosApi DeleteProjectScenarios DELETE /v1/projects/{projectId}/scenarios  
ScenariosApi DeleteScenarios DELETE /v1/projects/{projectId}/scenarios/head  
ScenariosApi GetScenarioById GET /v1/projects/{projectId}/scenarios/{id} Returns the scenario document that matches the given id scoped to projectId project.
ScenariosApi GetScenarios GET /v1/projects/{projectId}/scenarios Returns a list of scenario documents scoped to projectId project.
ScenariosApi HeadScenarios HEAD /v1/projects/{projectId}/scenarios Returns metadata about the existing scenario documents scoped to projectId project.
ScenariosApi PostProjectScenarios POST /v1/projects/{projectId}/scenarios Inserts a list of scenario documents.
ScenariosApi PutProjectScenarios PUT /v1/projects/{projectId}/scenarios Update a list of scenario documents.
StreamPropertiesApi DeleteStreamPropertiesById DELETE /v1/projects/{projectId}/econ-models/stream-properties/{id} Delete the assumptions document that matches the given id scoped to projectId project.
StreamPropertiesApi GetStreamProperties GET /v1/projects/{projectId}/econ-models/stream-properties Returns a list of stream-properties models documents.
StreamPropertiesApi GetStreamPropertiesById GET /v1/projects/{projectId}/econ-models/stream-properties/{id} Returns the stream-properties model document that matches the given id.
StreamPropertiesApi HeadStreamProperties HEAD /v1/projects/{projectId}/econ-models/stream-properties Returns metadata about the existing stream properties models documents.
StreamPropertiesApi PostStreamProperties POST /v1/projects/{projectId}/econ-models/stream-properties Inserts a list of stream-properties models documents.
StreamPropertiesApi PutStreamProperties PUT /v1/projects/{projectId}/econ-models/stream-properties Replace or create a list of stream-properties models documents.
TagsApi GetTags GET /v1/tags Returns a list of tag documents.
TagsApi HeadTags HEAD /v1/tags Returns metadata about the existing tag documents.
TypeCurvesApi GetTypeCurveById GET /v1/projects/{projectId}/type-curves/{id} Returns the type curve document that matches the given id scoped to projectId project.
TypeCurvesApi GetTypeCurveDailyFits GET /v1/projects/{projectId}/type-curves/{id}/fits/daily Returns the daily volume fit information for the type curve document that matches the given id scoped to projectId project.
TypeCurvesApi GetTypeCurveMonthlyFits GET /v1/projects/{projectId}/type-curves/{id}/fits/monthly Returns the monthly volume fit information for the type curve document that matches the given id scoped to projectId project.
TypeCurvesApi GetTypeCurveRepresentativeWells GET /v1/projects/{projectId}/type-curves/{id}/representative-wells Returns the well representative information for the type curve document that matches the given id scoped to projectId project.
TypeCurvesApi GetTypeCurves GET /v1/projects/{projectId}/type-curves Returns a list of type curve documents scoped to projectId project.
TypeCurvesApi HeadTypeCurves HEAD /v1/projects/{projectId}/type-curves Returns metadata about the existing type curve documents scoped to projectId project.
WellCommentsApi GetWellComments GET /v1/well-comments Returns a list of well comment documents.
WellCommentsApi HeadWellComments HEAD /v1/well-comments Returns metadata about the existing well comment documents.
WellIndentifiersApi PatchWellsIdentifiers PATCH /v1/wells-identifiers Updates identifiers of a list of well documents.
WellsApi DeleteWellById DELETE /v1/wells/{id} Delete the well document that matches the given id.
WellsApi DeleteWells DELETE /v1/wells Delete the wells documents that match the given filters.
WellsApi GetWellById GET /v1/wells/{id} Returns the well document that matches the given id.
WellsApi GetWells GET /v1/wells Returns a list of well documents.
WellsApi HeadWells HEAD /v1/wells Returns metadata about the existing well documents.
WellsApi PatchWellById PATCH /v1/wells/{id} Updates the well document that matches the given id.
WellsApi PatchWells PATCH /v1/wells Updates a list of well documents.
WellsApi PostWells POST /v1/wells Inserts a list of well documents.
WellsApi PutWellById PUT /v1/wells/{id} Replaces the well document that matches the given id.
WellsApi PutWells PUT /v1/wells Replaces a list of well documents.

Models

Authorization

ComboCurveV1Api requires the API key and service account provided by Inside Petroleum, as shown in the example below:

using ComboCurve.Api.Api;
using ComboCurve.Api.Auth;

namespace Example
{
    public class Example
    {
        public void Main()
        {
            // Use this to create your service account manually
            var serviceAccount = new ServiceAccount
            {
                ClientEmail = "YOUR_CLIENT_EMAIL",
                ClientId = "YOUR_CLIENT_ID",
                PrivateKey = "YOUR_PRIVATE_KEY"
            };
            // Or use this to load it from a JSON file
            // var serviceAccount = ServiceAccount.FromFile("PATH_TO_JSON_FILE");

            // Set your API key
            var apiKey = "YOUR_API_KEY";

            var apiInstance = new ComboCurveV1Api(serviceAccount, apiKey);
        }
    }
}

Client configuration

ComboCurveV1Api default configuration can be changed by passing an instance of the Configuration class:

using ComboCurve.Api.Api;
using ComboCurve.Api.Auth;
using ComboCurve.Api.Client;

namespace Example
{
    public class Example
    {
        public void Main()
        {
            // Use this to create your service account manually
            var serviceAccount = new ServiceAccount
            {
                ClientEmail = "YOUR_CLIENT_EMAIL",
                ClientId = "YOUR_CLIENT_ID",
                PrivateKey = "YOUR_PRIVATE_KEY"
            };
            // Or use this to load it from a JSON file
            // var serviceAccount = ServiceAccount.FromFile("PATH_TO_JSON_FILE");

            // Set your API key
            var apiKey = "YOUR_API_KEY";

            var configuration = new Configuration(120000 /* timeout in milliseconds */);

            var apiInstance = new ComboCurveV1Api(serviceAccount, apiKey, configuration);
        }
    }
}

Injecting APIs

To add all APIs to dependency injection:

var builder = WebApplication.CreateBuilder(args);

// Add services to the container:

builder.Services.AddControllers();
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();

// Add ComboCurve APIs

// Use this to create your service account manually
var serviceAccount = new ServiceAccount
{
	ClientEmail = "YOUR_CLIENT_EMAIL",
	ClientId = "YOUR_CLIENT_ID",
	PrivateKey = "YOUR_PRIVATE_KEY"
};

// Or use this to load it from a JSON file
// var serviceAccount = ServiceAccount.FromFile("PATH_TO_JSON_FILE");

// Set your API key
var apiKey = "YOUR_API_KEY";

// Adding all APIs:
builder.Services.AddComboCurve(serviceAccount, apiKey);

var app = builder.Build();

// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
    app.UseSwagger();
    app.UseSwaggerUI();
}

app.UseHttpsRedirection();
app.UseAuthorization();
app.MapControllers();
app.Run();