C# client for the ComboCurve REST API
View the Project on GitHub insidepetroleum/combocurve-client-csharp
All URIs are relative to https://api.combocurve.com
| Method | HTTP request | Description |
|---|---|---|
| DeleteProductionCommentById | DELETE /v1/production-comments/{id} | Deletes the production comment document that matches the given id in company scope. |
| DeleteProductionComments | DELETE /v1/production-comments | Delete production comment document(s) in company scope. Supports either `id`, or `well` with date-range filters (`startDate` and `endDate`). |
| GetProductionCommentById | GET /v1/production-comments/{id} | Returns the production comment document that matches the given id in company scope. |
| GetProductionComments | GET /v1/production-comments | Returns a list of production comment documents in the company scope. |
| HeadProductionComments | HEAD /v1/production-comments | Returns metadata about the existing production comment documents in the company scope. |
| PatchProductionComments | PATCH /v1/production-comments | Partially updates production comment document(s) in company scope. Requires `id` and at least one writable field. |
| PostProductionComments | POST /v1/production-comments | Creates production comment document(s) in company scope. The request body accepts either a single ProductionCommentInput object or an array payload. |
| PutProductionComments | PUT /v1/production-comments | Upserts production comment document(s) in company scope. When `id` is provided, existing records are replaced or inserted if not found. Without `id`, a new record is created. |
void DeleteProductionCommentById (string id)
Deletes the production comment document that matches the given id in company scope.
using System;
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 DeleteProductionCommentByIdExample
{
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 ComboCurveV1Api(serviceAccount, apiKey);
// Or use the specific API class (Recommended)
// var apiInstance = new ProductionCommentsApi(serviceAccount, apiKey);
var id = "id_example"; // string |
try
{
// Deletes the production comment document that matches the given id in company scope.
apiInstance.DeleteProductionCommentById(id);
}
catch (ApiException e)
{
Debug.Print("Exception when calling ProductionCommentsApi.DeleteProductionCommentById: " + e.Message );
Debug.Print("Status Code: "+ e.ErrorCode);
Debug.Print(e.StackTrace);
}
}
}
}
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string |
void (empty response body)
API Key, Service Account
| Status code | Description | Response headers | |————-|————-|——————| | 204 | OK | * X-Delete-Count - The number of records that were deleted. | | 400 | Bad Request. There is something wrong with the request data. | - |
[Back to top] [Back to API list] [Back to Model list] [Back to README]
void DeleteProductionComments (string id = null, string well = null, DateTimeOffset? startDate = null, DateTimeOffset? endDate = null)
Delete production comment document(s) in company scope. Supports either id, or well with date-range filters (startDate and endDate).
using System;
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 DeleteProductionCommentsExample
{
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 ComboCurveV1Api(serviceAccount, apiKey);
// Or use the specific API class (Recommended)
// var apiInstance = new ProductionCommentsApi(serviceAccount, apiKey);
var id = "id_example"; // string | filter by production comment id (optional)
var well = "well_example"; // string | filter by well id (required when deleting by date range) (optional)
var startDate = 2013-10-20T19:20:30+01:00; // DateTimeOffset? | lower bound filter for startDate (used with well + endDate) (optional)
var endDate = 2013-10-20T19:20:30+01:00; // DateTimeOffset? | upper bound filter for endDate (used with well + startDate) (optional)
try
{
// Delete production comment document(s) in company scope. Supports either `id`, or `well` with date-range filters (`startDate` and `endDate`).
apiInstance.DeleteProductionComments(id, well, startDate, endDate);
}
catch (ApiException e)
{
Debug.Print("Exception when calling ProductionCommentsApi.DeleteProductionComments: " + e.Message );
Debug.Print("Status Code: "+ e.ErrorCode);
Debug.Print(e.StackTrace);
}
}
}
}
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | filter by production comment id | [optional] |
| well | string | filter by well id (required when deleting by date range) | [optional] |
| startDate | DateTimeOffset? | lower bound filter for startDate (used with well + endDate) | [optional] |
| endDate | DateTimeOffset? | upper bound filter for endDate (used with well + startDate) | [optional] |
void (empty response body)
API Key, Service Account
| Status code | Description | Response headers | |————-|————-|——————| | 204 | OK | * X-Delete-Count - The number of records that were deleted. | | 400 | Bad Request. There is something wrong with the request data. | - |
[Back to top] [Back to API list] [Back to Model list] [Back to README]
ProductionComment GetProductionCommentById (string id)
Returns the production comment document that matches the given id in company scope.
using System;
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 GetProductionCommentByIdExample
{
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 ComboCurveV1Api(serviceAccount, apiKey);
// Or use the specific API class (Recommended)
// var apiInstance = new ProductionCommentsApi(serviceAccount, apiKey);
var id = "id_example"; // string |
try
{
// Returns the production comment document that matches the given id in company scope.
ProductionComment result = apiInstance.GetProductionCommentById(id);
Debug.WriteLine(result);
}
catch (ApiException e)
{
Debug.Print("Exception when calling ProductionCommentsApi.GetProductionCommentById: " + e.Message );
Debug.Print("Status Code: "+ e.ErrorCode);
Debug.Print(e.StackTrace);
}
}
}
}
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string |
API Key, Service Account
| Status code | Description | Response headers | |————-|————-|——————| | 200 | OK | - | | 400 | Bad Request. There is something wrong with the request data. | - | | 404 | Not Found | - |
[Back to top] [Back to API list] [Back to Model list] [Back to README]
ICollection<ProductionComment> GetProductionComments (int? skip = null, int? take = null, string sort = null, string cursor = null, string well = null, string commentType = null, DateTimeOffset? startDate = null, DateTimeOffset? endDate = null, DateTimeOffset? updatedAt = null)
Returns a list of production comment documents in the company scope.
using System;
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 GetProductionCommentsExample
{
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 ComboCurveV1Api(serviceAccount, apiKey);
// Or use the specific API class (Recommended)
// var apiInstance = new ProductionCommentsApi(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) (between 1 and 2000)
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 well = "well_example"; // string | filter by well (optional)
var commentType = "commentType_example"; // string | filter by stable comment type key (for example, prod_comment_type_0) (optional)
var startDate = DateTimeOffset.Parse("2013-10-20"); // DateTimeOffset? | filter by startDate (optional)
var endDate = DateTimeOffset.Parse("2013-10-20"); // DateTimeOffset? | filter by endDate (optional)
var updatedAt = DateTimeOffset.Parse("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)
try
{
// Returns a list of production comment documents in the company scope.
ICollection<ProductionComment> result = apiInstance.GetProductionComments(skip, take, sort, cursor, well, commentType, startDate, endDate, updatedAt);
Debug.WriteLine(result);
}
catch (ApiException e)
{
Debug.Print("Exception when calling ProductionCommentsApi.GetProductionComments: " + e.Message );
Debug.Print("Status Code: "+ e.ErrorCode);
Debug.Print(e.StackTrace);
}
}
}
}
| Name | Type | Description | Notes |
|---|---|---|---|
| skip | int? | number of items to skip | [optional] [default to 0] |
| take | int? | max records to return | [optional] [default to 25] [between 1 and 2000] |
| sort | string | field to sort by, including + or - at the beginning for ascending or descending order, respectively | [optional] |
| cursor | string | used in pagination to get the next page | [optional] |
| well | string | filter by well | [optional] |
| commentType | string | filter by stable comment type key (for example, prod_comment_type_0) | [optional] |
| startDate | DateTimeOffset? | filter by startDate | [optional] |
| endDate | DateTimeOffset? | filter by endDate | [optional] |
| updatedAt | 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] |
ICollection<ProductionComment>
API Key, Service Account
| Status code | Description | Response headers | |————-|————-|——————| | 200 | OK | * Link - 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. | | 400 | Bad Request. There is something wrong with the request data. | - |
[Back to top] [Back to API list] [Back to Model list] [Back to README]
void HeadProductionComments (int? skip = null, int? take = null, string well = null, string commentType = null, DateTimeOffset? startDate = null, DateTimeOffset? endDate = null, DateTimeOffset? updatedAt = null)
Returns metadata about the existing production comment documents in the company scope.
using System;
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 HeadProductionCommentsExample
{
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 ComboCurveV1Api(serviceAccount, apiKey);
// Or use the specific API class (Recommended)
// var apiInstance = new ProductionCommentsApi(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) (between 1 and 2000)
var well = "well_example"; // string | filter by well (optional)
var commentType = "commentType_example"; // string | filter by stable comment type key (for example, prod_comment_type_0) (optional)
var startDate = DateTimeOffset.Parse("2013-10-20"); // DateTimeOffset? | filter by startDate (optional)
var endDate = DateTimeOffset.Parse("2013-10-20"); // DateTimeOffset? | filter by endDate (optional)
var updatedAt = DateTimeOffset.Parse("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)
try
{
// Returns metadata about the existing production comment documents in the company scope.
apiInstance.HeadProductionComments(skip, take, well, commentType, startDate, endDate, updatedAt);
}
catch (ApiException e)
{
Debug.Print("Exception when calling ProductionCommentsApi.HeadProductionComments: " + e.Message );
Debug.Print("Status Code: "+ e.ErrorCode);
Debug.Print(e.StackTrace);
}
}
}
}
| Name | Type | Description | Notes |
|---|---|---|---|
| skip | int? | number of items to skip | [optional] [default to 0] |
| take | int? | max records to return | [optional] [default to 25] [between 1 and 2000] |
| well | string | filter by well | [optional] |
| commentType | string | filter by stable comment type key (for example, prod_comment_type_0) | [optional] |
| startDate | DateTimeOffset? | filter by startDate | [optional] |
| endDate | DateTimeOffset? | filter by endDate | [optional] |
| updatedAt | 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] |
void (empty response body)
API Key, Service Account
| Status code | Description | Response headers |
|————-|————-|——————|
| 200 | OK | * X-Query-Count - The number of records in this resource. When filters are provided only matching records are counted.
* Link - 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. |
| 400 | Bad Request. There is something wrong with the request data. | - |
[Back to top] [Back to API list] [Back to Model list] [Back to README]
ProductionCommentMultiStatusResponse PatchProductionComments (List
productionComments = null)
Partially updates production comment document(s) in company scope. Requires id and at least one writable field.
using System;
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 PatchProductionCommentsExample
{
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 ComboCurveV1Api(serviceAccount, apiKey);
// Or use the specific API class (Recommended)
// var apiInstance = new ProductionCommentsApi(serviceAccount, apiKey);
var productionComments = new List<ProductionCommentPatchInput>(); // List<ProductionCommentPatchInput> | Production comment document(s) to patch. (optional)
try
{
// Partially updates production comment document(s) in company scope. Requires `id` and at least one writable field.
ProductionCommentMultiStatusResponse result = apiInstance.PatchProductionComments(productionComments);
Debug.WriteLine(result);
}
catch (ApiException e)
{
Debug.Print("Exception when calling ProductionCommentsApi.PatchProductionComments: " + e.Message );
Debug.Print("Status Code: "+ e.ErrorCode);
Debug.Print(e.StackTrace);
}
}
}
}
| Name | Type | Description | Notes |
|---|---|---|---|
| productionComments | List<ProductionCommentPatchInput> | Production comment document(s) to patch. | [optional] [Max number of items is 200] |
ProductionCommentMultiStatusResponse
API Key, Service Account
| Status code | Description | Response headers | |————-|————-|——————| | 207 | Multi-Status | - |
[Back to top] [Back to API list] [Back to Model list] [Back to README]
ProductionCommentMultiStatusResponse PostProductionComments (List
productionComments = null)
Creates production comment document(s) in company scope. The request body accepts either a single ProductionCommentInput object or an array payload.
using System;
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 PostProductionCommentsExample
{
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 ComboCurveV1Api(serviceAccount, apiKey);
// Or use the specific API class (Recommended)
// var apiInstance = new ProductionCommentsApi(serviceAccount, apiKey);
var productionComments = new List<ProductionCommentInput>(); // List<ProductionCommentInput> | Production comment document(s) to insert. (optional)
try
{
// Creates production comment document(s) in company scope. The request body accepts either a single ProductionCommentInput object or an array payload.
ProductionCommentMultiStatusResponse result = apiInstance.PostProductionComments(productionComments);
Debug.WriteLine(result);
}
catch (ApiException e)
{
Debug.Print("Exception when calling ProductionCommentsApi.PostProductionComments: " + e.Message );
Debug.Print("Status Code: "+ e.ErrorCode);
Debug.Print(e.StackTrace);
}
}
}
}
| Name | Type | Description | Notes |
|---|---|---|---|
| productionComments | List<ProductionCommentInput> | Production comment document(s) to insert. | [optional] [Max number of items is 200] |
ProductionCommentMultiStatusResponse
API Key, Service Account
| Status code | Description | Response headers | |————-|————-|——————| | 207 | Multi-Status | - |
[Back to top] [Back to API list] [Back to Model list] [Back to README]
ProductionCommentMultiStatusResponse PutProductionComments (List
productionComments = null)
Upserts production comment document(s) in company scope. When id is provided, existing records are replaced or inserted if not found. Without id, a new record is created.
using System;
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 PutProductionCommentsExample
{
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 ComboCurveV1Api(serviceAccount, apiKey);
// Or use the specific API class (Recommended)
// var apiInstance = new ProductionCommentsApi(serviceAccount, apiKey);
var productionComments = new List<ProductionCommentPutInput>(); // List<ProductionCommentPutInput> | Production comment document(s) to replace. (optional)
try
{
// Upserts production comment document(s) in company scope. When `id` is provided, existing records are replaced or inserted if not found. Without `id`, a new record is created.
ProductionCommentMultiStatusResponse result = apiInstance.PutProductionComments(productionComments);
Debug.WriteLine(result);
}
catch (ApiException e)
{
Debug.Print("Exception when calling ProductionCommentsApi.PutProductionComments: " + e.Message );
Debug.Print("Status Code: "+ e.ErrorCode);
Debug.Print(e.StackTrace);
}
}
}
}
| Name | Type | Description | Notes |
|---|---|---|---|
| productionComments | List<ProductionCommentPutInput> | Production comment document(s) to replace. | [optional] [Max number of items is 200] |
ProductionCommentMultiStatusResponse
API Key, Service Account
| Status code | Description | Response headers | |————-|————-|——————| | 207 | Multi-Status | - |
[Back to top] [Back to API list] [Back to Model list] [Back to README]