Skip to content

Releases: faluapp/falu-dotnet

0.10.0

04 Jan 11:21
3791b90
Compare
Choose a tag to compare

Breaking:

  • Batch messages limit for messages is 1,000 (1k) not 10,000 (10k).
  • Rename CreateAsync(...) to Send*Async(...) and CreateBatchAsync(...) to SendBatchAsync(...) in MessagesServiceClient.
  • New request and response parameters for sending messages.

What's Changed

Full Changelog: 0.9.0...0.10.0

0.9.0

06 Dec 10:52
2fd8f49
Compare
Choose a tag to compare

What's Changed

  • .NET 6 support in #45
  • Multi-target (.NET6, .NET5 and netstandard2.0) in #49
  • Automatically retry rate-limited requests in #35
  • Remove IConfiguration support in #36
  • Remove IHttpClientBuilder action in #37
  • Replace IOptions with IOptionsSnapshot in #38

New Contributors

  • @KennethM768 made their first contribution in #35

Full Changelog: 0.8.0...0.9.0

API 2021-09-03

21 Sep 14:15
9857ab8
Compare
Choose a tag to compare

This SDK now uses API version 2021-09-03.

Other changes:

  • Minor namespace re-organization for core types.
  • Options for Approving/Declining PaymentAuthorizations.
  • No longer reference System.Text.Encodings.Web package directly.
  • *Service types have been renamed to *ServiceClient. For example, MessagesService becomes MessagesServiceClient.
  • Better handling of data put in the request query.

0.7.0

03 Sep 14:42
Compare
Choose a tag to compare

Breaking Changes

  • Change BasicListOptions and inheriting types from class to record types.
  • Change RangeFilteringOptions<T> from sealed class to readonly struct hence making it's properties immutable after creation.
  • Removed Format in WebhookEndpointPatchModel instead use WebhookEndpointCreateRequest.Format available only during creation.
  • Renames:
    • ContinuationToken in BasicListOptions becomes Token.
    • EvaluationModelCreate becomes EvaluationCreateRequest.
    • MessageStreamCreateModel becomes MessageStreamCreateRequest.
    • PaymentRefundRequest becomes PaymentRefundCreateRequest.
    • PaymentRequest becomes PaymentCreateRequest.
    • PaymentRequestMpesa becomes PaymentCreateRequestMpesa.
    • TransferReversalRequest becomes TransferReversalCreateRequest.
    • TransferRequest becomes TransferCreateRequest.
    • TransferRequestMpesa becomes TransferCreateRequestMpesa.
    • TransferRequestMpesaToCustomer becomes TransferCreateRequestMpesaToCustomer.
    • TransferRequestMpesaToBusiness becomes TransferCreateRequestMpesaToBusiness.

New

  • Support for FileUploads and FileUploadLinks (file_upload and file_upload_link objects in the API).
  • Added generic version of FaluClient hence allowing making changes to suit scenarios.
  • Added Reason to PaymentAuthorization.
  • Support for archiving and unarchiing of message streams.
  • Listing:
    • Support for listing recursively. Use the ListRecursivelyAsync(...) methods in supported services.
    • Listing events uses EventsListOptions which supports filterting by type.
    • Listing message streams uses MessageStreamsListOptions.
    • Listing message templates uses MessageTemplatesListOptions.
    • Listing webhook endpoints uses WebhookEndpointsListOptions.

Fixes

  • Registered instance of HttpClient renamed to FaluClient.
  • Marked the Live member in the RequestOptions as nullable.
  • RequestOptions should be created when null. Ensures check for idempotency.
  • Added Url and TraceId in the FaluError

0.6.0

16 Aug 12:11
1fce6e0
Compare
Choose a tag to compare

Breaking Changes

  • PaymentReversals become PaymentRefunds.
  • PaymentBalances become MoneyBalances and they get their own service accessible via FaluClient.MoneyBalances.
  • IdempotencyKey is set on all POST and PATCH requests if it is not provided, as a best practice. This is also meant to aid with automatic retries.

New

  • Automatic retries are now supported with 2 retries in addition to the first try. The configuration can be done via FaluClientOptions.Retries e.g. services.AddFaluClient("sk_test_123", o => o.Retries = 1);
  • Support for adding application information with each request configurable FaluClientOptions.Application e.g. services.AddFaluClient("sk_test_123", o => o.Application = new ApplicationInformation { Name = "My 3rd Patry Service", }). This is recommended for 3rd party plugins and services that extend the functionality offered by Falu.
  • FaluClientOptions can be setup up using IConfiguration instances e.g. services.AddFaluClient(configuration.GetSection("FaluClient")) see integration guide.
  • Validation of MessageTemplates use object and not IDictionary<string, object> for both request and response. However, you should still use an object and not an array or other primitive types.

Fixed

  • PaymentAuthorizationModelPatchModel previously ignored when calling ApproveAsync(...) or DeclineAsync(...) in PaymentAuthorizationsService is now optional and respected when provided.

0.5.2

16 Aug 10:06
e1b4fa4
Compare
Choose a tag to compare

This release removes support for Tags in objects. Tags have since been deprecated and removed on the API server.

0.5.1

14 Jul 09:27
e59c3be
Compare
Choose a tag to compare

New:

  • Added missing filtering options in list operations such as filtering by status.
  • Nullable support

Other Changes:

  • Deprecated Tags in favour of Metadata.
  • Phone and Password are optional when creating an evaluation.