Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .openapi-generator/FILES
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,8 @@ ShipEngineSDK/Model/CreateAndValidateShipment.cs
ShipEngineSDK/Model/CreateBatchRequest.cs
ShipEngineSDK/Model/CreateBatchRequestBody.cs
ShipEngineSDK/Model/CreateBatchResponseBody.cs
ShipEngineSDK/Model/CreateCombinedLabelDocumentRequestBody.cs
ShipEngineSDK/Model/CreateCombinedLabelDocumentResponseBodyYaml.cs
ShipEngineSDK/Model/CreateLabelFromRateRequestBody.cs
ShipEngineSDK/Model/CreateLabelFromRateResponseBody.cs
ShipEngineSDK/Model/CreateLabelFromShipmentRequestBody.cs
Expand All @@ -113,6 +115,7 @@ ShipEngineSDK/Model/CreateReturnLabelResponseBody.cs
ShipEngineSDK/Model/CreateShipmentResponseBodyFields.cs
ShipEngineSDK/Model/CreateShipmentsRequestBody.cs
ShipEngineSDK/Model/CreateShipmentsResponseBody.cs
ShipEngineSDK/Model/CreateTagRequestBody.cs
ShipEngineSDK/Model/CreateTagResponseBody.cs
ShipEngineSDK/Model/CreateWarehouseRequestBody.cs
ShipEngineSDK/Model/CreateWarehouseResponseBody.cs
Expand All @@ -138,6 +141,7 @@ ShipEngineSDK/Model/ErrorSource.cs
ShipEngineSDK/Model/ErrorType.cs
ShipEngineSDK/Model/ErrorWithLabelIdResponseBody.cs
ShipEngineSDK/Model/EstimateRatesRequestBody.cs
ShipEngineSDK/Model/EstimatedImportCharges.cs
ShipEngineSDK/Model/FedexAccountSettings.cs
ShipEngineSDK/Model/FedexAccountSettingsRequestBody.cs
ShipEngineSDK/Model/FedexPickupType.cs
Expand Down Expand Up @@ -424,6 +428,8 @@ docs/models/CreateAndValidateShipment.md
docs/models/CreateBatchRequest.md
docs/models/CreateBatchRequestBody.md
docs/models/CreateBatchResponseBody.md
docs/models/CreateCombinedLabelDocumentRequestBody.md
docs/models/CreateCombinedLabelDocumentResponseBodyYaml.md
docs/models/CreateLabelFromRateRequestBody.md
docs/models/CreateLabelFromRateResponseBody.md
docs/models/CreateLabelFromShipmentRequestBody.md
Expand All @@ -441,6 +447,7 @@ docs/models/CreateReturnLabelResponseBody.md
docs/models/CreateShipmentResponseBodyFields.md
docs/models/CreateShipmentsRequestBody.md
docs/models/CreateShipmentsResponseBody.md
docs/models/CreateTagRequestBody.md
docs/models/CreateTagResponseBody.md
docs/models/CreateWarehouseRequestBody.md
docs/models/CreateWarehouseResponseBody.md
Expand All @@ -466,6 +473,7 @@ docs/models/ErrorSource.md
docs/models/ErrorType.md
docs/models/ErrorWithLabelIdResponseBody.md
docs/models/EstimateRatesRequestBody.md
docs/models/EstimatedImportCharges.md
docs/models/FedexAccountSettings.md
docs/models/FedexAccountSettingsRequestBody.md
docs/models/FedexPickupType.md
Expand Down
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -223,3 +223,13 @@ Fixed handling of No Content responses
### Changed

- Marked v2 methods as obsolete

## 3.1.0

### Added

- Created new EstimatedImportCharges model for commercial invoices for international shipments.

### Changed

- Extend shipment endpoints to request, create, update and delete estimated import charges.
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ var shipengine = new ShipEngine("___YOUR_API_KEY_HERE__");

This C# SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:

- API version: 1.1.202501091801
- API version: 1.1.202503131403
- SDK version: 3.0.0
- Generator version: 7.7.0
- Build package: org.openapitools.codegen.languages.CSharpClientCodegen
Expand Down Expand Up @@ -86,6 +86,7 @@ API | Method | Description
*Insurance* | [**ConnectInsurer**](docs//apis/InsuranceApi.md#connectinsurer) | Connect a Shipsurance Account
*Insurance* | [**DisconnectInsurer**](docs//apis/InsuranceApi.md#disconnectinsurer) | Disconnect a Shipsurance Account
*Insurance* | [**GetInsuranceBalance**](docs//apis/InsuranceApi.md#getinsurancebalance) | Get Insurance Funds Balance
*Labels* | [**CreateCombinedLabelDocument**](docs//apis/LabelsApi.md#createcombinedlabeldocument) | Created Combined Label Document
*Labels* | [**CreateLabel**](docs//apis/LabelsApi.md#createlabel) | Purchase Label
*Labels* | [**CreateLabelFromRate**](docs//apis/LabelsApi.md#createlabelfromrate) | Purchase Label with Rate ID
*Labels* | [**CreateLabelFromShipment**](docs//apis/LabelsApi.md#createlabelfromshipment) | Purchase Label with Shipment ID
Expand Down Expand Up @@ -127,6 +128,7 @@ API | Method | Description
*Shipments* | [**UntagShipment**](docs//apis/ShipmentsApi.md#untagshipment) | Remove Tag from Shipment
*Shipments* | [**UpdateShipment**](docs//apis/ShipmentsApi.md#updateshipment) | Update Shipment By ID
*Tags* | [**CreateTag**](docs//apis/TagsApi.md#createtag) | Create a New Tag
*Tags* | [**CreateTag_0**](docs//apis/TagsApi.md#createtag_0) | Create a New Tag
*Tags* | [**DeleteTag**](docs//apis/TagsApi.md#deletetag) | Delete Tag
*Tags* | [**ListTags**](docs//apis/TagsApi.md#listtags) | Get Tags
*Tags* | [**RenameTag**](docs//apis/TagsApi.md#renametag) | Update Tag Name
Expand Down
63 changes: 63 additions & 0 deletions ShipEngineSDK/Api/LabelsApi.cs
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,27 @@ namespace ShipEngineSDK;
/// </summary>
public partial interface IShipEngine
{
/// <summary>
/// Created Combined Label Document Download a combined label file
/// </summary>
/// <exception cref="System.ArgumentNullException">Thrown when required argument is null</exception>
/// <exception cref="ShipEngineSDK.ShipEngineException">Thrown when fails to make API call</exception>
/// <param name="createCombinedLabelDocumentRequestBody"></param>
/// <param name="cancellationToken">Cancellation Token to cancel the request.</param>
/// <returns>Task of ApiResponse (CreateCombinedLabelDocumentResponseBodyYaml)</returns>
Task<CreateCombinedLabelDocumentResponseBodyYaml> CreateCombinedLabelDocument(CreateCombinedLabelDocumentRequestBody createCombinedLabelDocumentRequestBody, CancellationToken cancellationToken = default);

/// <summary>
/// Created Combined Label Document Download a combined label file
/// </summary>
/// <exception cref="System.ArgumentNullException">Thrown when required argument is null</exception>
/// <exception cref="ShipEngineSDK.ShipEngineException">Thrown when fails to make API call</exception>
/// <param name="methodClient">HttpClient to use for the request</param>
/// <param name="createCombinedLabelDocumentRequestBody"></param>
/// <param name="cancellationToken">Cancellation Token to cancel the request.</param>
/// <returns>Task of ApiResponse (CreateCombinedLabelDocumentResponseBodyYaml)</returns>
Task<CreateCombinedLabelDocumentResponseBodyYaml> CreateCombinedLabelDocument(HttpClient methodClient, CreateCombinedLabelDocumentRequestBody createCombinedLabelDocumentRequestBody, CancellationToken cancellationToken = default);

/// <summary>
/// Purchase Label Purchase and print a label for shipment
/// </summary>
Expand Down Expand Up @@ -256,6 +277,48 @@ public partial interface IShipEngine
/// </summary>
public partial class ShipEngine
{
/// <summary>
/// Created Combined Label Document Download a combined label file
/// </summary>
/// <exception cref="System.ArgumentNullException">Thrown when required argument is null</exception>
/// <exception cref="ShipEngineSDK.ShipEngineException">Thrown when fails to make API call</exception>
/// <param name="createCombinedLabelDocumentRequestBody"></param>
/// <param name="cancellationToken">Cancellation Token to cancel the request.</param>
/// <returns>Task of ApiResponse (CreateCombinedLabelDocumentResponseBodyYaml)</returns>
public Task<CreateCombinedLabelDocumentResponseBodyYaml> CreateCombinedLabelDocument(CreateCombinedLabelDocumentRequestBody createCombinedLabelDocumentRequestBody, CancellationToken cancellationToken = default)
{
return CreateCombinedLabelDocument(_client, createCombinedLabelDocumentRequestBody, cancellationToken);
}

/// <summary>
/// Created Combined Label Document Download a combined label file
/// </summary>
/// <exception cref="System.ArgumentNullException">Thrown when required argument is null</exception>
/// <exception cref="ShipEngineSDK.ShipEngineException">Thrown when fails to make API call</exception>
/// <param name="methodClient">HttpClient to use for the request</param>
/// <param name="createCombinedLabelDocumentRequestBody"></param>
/// <param name="cancellationToken">Cancellation Token to cancel the request.</param>
/// <returns>Task of ApiResponse (CreateCombinedLabelDocumentResponseBodyYaml)</returns>
public async Task<CreateCombinedLabelDocumentResponseBodyYaml> CreateCombinedLabelDocument(HttpClient methodClient, CreateCombinedLabelDocumentRequestBody createCombinedLabelDocumentRequestBody, CancellationToken cancellationToken = default)
{
// verify the required parameter 'createCombinedLabelDocumentRequestBody' is set
if (createCombinedLabelDocumentRequestBody == null)
{
throw new ArgumentNullException(nameof(createCombinedLabelDocumentRequestBody));
}


RequestOptions requestOptions = new("/v1/documents/combined_labels");

requestOptions.Data = JsonSerializer.Serialize(createCombinedLabelDocumentRequestBody, JsonSerializerOptions);

requestOptions.Operation = "LabelsApi.CreateCombinedLabelDocument";

var result = await SendHttpRequestAsync<CreateCombinedLabelDocumentResponseBodyYaml>(HttpMethods.Post, requestOptions, methodClient, _config, cancellationToken);

return result;
}

/// <summary>
/// Purchase Label Purchase and print a label for shipment
/// </summary>
Expand Down
83 changes: 73 additions & 10 deletions ShipEngineSDK/Api/TagsApi.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,25 +25,46 @@ namespace ShipEngineSDK;
public partial interface IShipEngine
{
/// <summary>
/// Create a New Tag Create a new Tag for customizing how you track your shipments
/// Create a New Tag Create a new tag for customizing how you track your shipments.
/// </summary>
/// <exception cref="System.ArgumentNullException">Thrown when required argument is null</exception>
/// <exception cref="ShipEngineSDK.ShipEngineException">Thrown when fails to make API call</exception>
/// <param name="createTagRequestBody"></param>
/// <param name="cancellationToken">Cancellation Token to cancel the request.</param>
/// <returns>Task of ApiResponse (CreateTagResponseBody)</returns>
Task<CreateTagResponseBody> CreateTag(CreateTagRequestBody createTagRequestBody, CancellationToken cancellationToken = default);

/// <summary>
/// Create a New Tag Create a new tag for customizing how you track your shipments.
/// </summary>
/// <exception cref="System.ArgumentNullException">Thrown when required argument is null</exception>
/// <exception cref="ShipEngineSDK.ShipEngineException">Thrown when fails to make API call</exception>
/// <param name="methodClient">HttpClient to use for the request</param>
/// <param name="createTagRequestBody"></param>
/// <param name="cancellationToken">Cancellation Token to cancel the request.</param>
/// <returns>Task of ApiResponse (CreateTagResponseBody)</returns>
Task<CreateTagResponseBody> CreateTag(HttpClient methodClient, CreateTagRequestBody createTagRequestBody, CancellationToken cancellationToken = default);

/// <summary>
/// Create a New Tag Create a new tag for customizing how you track your shipments (deprecated - use POST /v1/tags instead)
/// </summary>
/// <exception cref="System.ArgumentNullException">Thrown when required argument is null</exception>
/// <exception cref="ShipEngineSDK.ShipEngineException">Thrown when fails to make API call</exception>
/// <param name="tagName"></param>
/// <param name="cancellationToken">Cancellation Token to cancel the request.</param>
/// <returns>Task of ApiResponse (CreateTagResponseBody)</returns>
Task<CreateTagResponseBody> CreateTag(string tagName, CancellationToken cancellationToken = default);
Task<CreateTagResponseBody> CreateTag_0(string tagName, CancellationToken cancellationToken = default);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we know why this got created as CreateTag_0? That seems kinda strange.

Copy link
Contributor Author

@r3dnaxel r3dnaxel Mar 14, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe It is connected to these Tags API changes
We added a new endpoint with the same name than the old one, the second one marked as deprecated, so probably It generates the name of the old one with that "_0" suffix to differentiate them


/// <summary>
/// Create a New Tag Create a new Tag for customizing how you track your shipments
/// Create a New Tag Create a new tag for customizing how you track your shipments (deprecated - use POST /v1/tags instead)
/// </summary>
/// <exception cref="System.ArgumentNullException">Thrown when required argument is null</exception>
/// <exception cref="ShipEngineSDK.ShipEngineException">Thrown when fails to make API call</exception>
/// <param name="methodClient">HttpClient to use for the request</param>
/// <param name="tagName"></param>
/// <param name="cancellationToken">Cancellation Token to cancel the request.</param>
/// <returns>Task of ApiResponse (CreateTagResponseBody)</returns>
Task<CreateTagResponseBody> CreateTag(HttpClient methodClient, string tagName, CancellationToken cancellationToken = default);
Task<CreateTagResponseBody> CreateTag_0(HttpClient methodClient, string tagName, CancellationToken cancellationToken = default);

/// <summary>
/// Delete Tag Delete a tag that is no longer needed
Expand Down Expand Up @@ -116,28 +137,70 @@ public partial interface IShipEngine
public partial class ShipEngine
{
/// <summary>
/// Create a New Tag Create a new Tag for customizing how you track your shipments
/// Create a New Tag Create a new tag for customizing how you track your shipments.
/// </summary>
/// <exception cref="System.ArgumentNullException">Thrown when required argument is null</exception>
/// <exception cref="ShipEngineSDK.ShipEngineException">Thrown when fails to make API call</exception>
/// <param name="createTagRequestBody"></param>
/// <param name="cancellationToken">Cancellation Token to cancel the request.</param>
/// <returns>Task of ApiResponse (CreateTagResponseBody)</returns>
public Task<CreateTagResponseBody> CreateTag(CreateTagRequestBody createTagRequestBody, CancellationToken cancellationToken = default)
{
return CreateTag(_client, createTagRequestBody, cancellationToken);
}

/// <summary>
/// Create a New Tag Create a new tag for customizing how you track your shipments.
/// </summary>
/// <exception cref="System.ArgumentNullException">Thrown when required argument is null</exception>
/// <exception cref="ShipEngineSDK.ShipEngineException">Thrown when fails to make API call</exception>
/// <param name="methodClient">HttpClient to use for the request</param>
/// <param name="createTagRequestBody"></param>
/// <param name="cancellationToken">Cancellation Token to cancel the request.</param>
/// <returns>Task of ApiResponse (CreateTagResponseBody)</returns>
public async Task<CreateTagResponseBody> CreateTag(HttpClient methodClient, CreateTagRequestBody createTagRequestBody, CancellationToken cancellationToken = default)
{
// verify the required parameter 'createTagRequestBody' is set
if (createTagRequestBody == null)
{
throw new ArgumentNullException(nameof(createTagRequestBody));
}


RequestOptions requestOptions = new("/v1/tags");

requestOptions.Data = JsonSerializer.Serialize(createTagRequestBody, JsonSerializerOptions);

requestOptions.Operation = "TagsApi.CreateTag";

var result = await SendHttpRequestAsync<CreateTagResponseBody>(HttpMethods.Post, requestOptions, methodClient, _config, cancellationToken);

return result;
}

/// <summary>
/// Create a New Tag Create a new tag for customizing how you track your shipments (deprecated - use POST /v1/tags instead)
/// </summary>
/// <exception cref="System.ArgumentNullException">Thrown when required argument is null</exception>
/// <exception cref="ShipEngineSDK.ShipEngineException">Thrown when fails to make API call</exception>
/// <param name="tagName"></param>
/// <param name="cancellationToken">Cancellation Token to cancel the request.</param>
/// <returns>Task of ApiResponse (CreateTagResponseBody)</returns>
public Task<CreateTagResponseBody> CreateTag(string tagName, CancellationToken cancellationToken = default)
public Task<CreateTagResponseBody> CreateTag_0(string tagName, CancellationToken cancellationToken = default)
{
return CreateTag(_client, tagName, cancellationToken);
return CreateTag_0(_client, tagName, cancellationToken);
}

/// <summary>
/// Create a New Tag Create a new Tag for customizing how you track your shipments
/// Create a New Tag Create a new tag for customizing how you track your shipments (deprecated - use POST /v1/tags instead)
/// </summary>
/// <exception cref="System.ArgumentNullException">Thrown when required argument is null</exception>
/// <exception cref="ShipEngineSDK.ShipEngineException">Thrown when fails to make API call</exception>
/// <param name="methodClient">HttpClient to use for the request</param>
/// <param name="tagName"></param>
/// <param name="cancellationToken">Cancellation Token to cancel the request.</param>
/// <returns>Task of ApiResponse (CreateTagResponseBody)</returns>
public async Task<CreateTagResponseBody> CreateTag(HttpClient methodClient, string tagName, CancellationToken cancellationToken = default)
public async Task<CreateTagResponseBody> CreateTag_0(HttpClient methodClient, string tagName, CancellationToken cancellationToken = default)
{
// verify the required parameter 'tagName' is set
if (tagName == null)
Expand All @@ -150,7 +213,7 @@ public async Task<CreateTagResponseBody> CreateTag(HttpClient methodClient, stri

requestOptions.PathParameters.Add("tag_name", ClientUtils.ParameterToString(tagName)); // path parameter

requestOptions.Operation = "TagsApi.CreateTag";
requestOptions.Operation = "TagsApi.CreateTag_0";

var result = await SendHttpRequestAsync<CreateTagResponseBody>(HttpMethods.Post, requestOptions, methodClient, _config, cancellationToken);

Expand Down
Loading
Loading