combocurve-client-csharp

Logo

C# client for the ComboCurve REST API

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

ComboCurve.Api.Api.ProductionCommentsApi

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.

DeleteProductionCommentById

void DeleteProductionCommentById (string id)

Deletes the production comment document that matches the given id in company scope.

Example

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);
            }
        }
    }
}

Parameters

Name Type Description Notes
id string    

Return type

void (empty response body)

Authorization

API Key, Service Account

HTTP request headers

HTTP response details

| 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]

DeleteProductionComments

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).

Example

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);
            }
        }
    }
}

Parameters

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]

Return type

void (empty response body)

Authorization

API Key, Service Account

HTTP request headers

HTTP response details

| 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]

GetProductionCommentById

ProductionComment GetProductionCommentById (string id)

Returns the production comment document that matches the given id in company scope.

Example

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);
            }
        }
    }
}

Parameters

Name Type Description Notes
id string    

Return type

ProductionComment

Authorization

API Key, Service Account

HTTP request headers

HTTP response details

| 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]

GetProductionComments

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.

Example

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);
            }
        }
    }
}

Parameters

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]

Return type

ICollection<ProductionComment>

Authorization

API Key, Service Account

HTTP request headers

HTTP response details

| 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]

HeadProductionComments

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.

Example

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);
            }
        }
    }
}

Parameters

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]

Return type

void (empty response body)

Authorization

API Key, Service Account

HTTP request headers

HTTP response details

| 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]

PatchProductionComments

ProductionCommentMultiStatusResponse PatchProductionComments (List productionComments = null)

Partially updates production comment document(s) in company scope. Requires id and at least one writable field.

Example

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);
            }
        }
    }
}

Parameters

Name Type Description Notes
productionComments List<ProductionCommentPatchInput> Production comment document(s) to patch. [optional] [Max number of items is 200]

Return type

ProductionCommentMultiStatusResponse

Authorization

API Key, Service Account

HTTP request headers

HTTP response details

| Status code | Description | Response headers | |————-|————-|——————| | 207 | Multi-Status | - |

[Back to top] [Back to API list] [Back to Model list] [Back to README]

PostProductionComments

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.

Example

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);
            }
        }
    }
}

Parameters

Name Type Description Notes
productionComments List<ProductionCommentInput> Production comment document(s) to insert. [optional] [Max number of items is 200]

Return type

ProductionCommentMultiStatusResponse

Authorization

API Key, Service Account

HTTP request headers

HTTP response details

| Status code | Description | Response headers | |————-|————-|——————| | 207 | Multi-Status | - |

[Back to top] [Back to API list] [Back to Model list] [Back to README]

PutProductionComments

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.

Example

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);
            }
        }
    }
}

Parameters

Name Type Description Notes
productionComments List<ProductionCommentPutInput> Production comment document(s) to replace. [optional] [Max number of items is 200]

Return type

ProductionCommentMultiStatusResponse

Authorization

API Key, Service Account

HTTP request headers

HTTP response details

| Status code | Description | Response headers | |————-|————-|——————| | 207 | Multi-Status | - |

[Back to top] [Back to API list] [Back to Model list] [Back to README]