Releases: ipaas-com/iPaaS.Integration.SDK
Release list
2.0.6
Authentication Changes
This release includes a modification to the way authentication is made for iPaaS API calls. This is required if you make any iPaaS API calls, such as through the iPaaSApi\IPaaSApiCallWrapper class. Calls made with the supplied token now require an additional header, X-Client-Id. This is now supplied in the Settings.ClientCompanyId field. See the Migration Path section below for exactly where this change must be made.
New Features
-Added support for PersistentData.EditableInUI - this field allows users to set certain persistent data fields as non-editable. Note that users will still be able to change the value of the field in the API. This is just a signal to disable the ability in the UI. This field will default to true if it is not supplied.
-Added support for FeatureSupport.ComingSoon - this field allows users to indicate that a feature is not yet available, but will be soon.
Migration Path
-Ensure that you are on .NET 8.0
--Update to the latest IntegrationDevelopmentUtility here: https://github.com/ipaas-com/iPaaS.Integration.DevelopmentUtility/
-Update to the latest version of the SDK (2.0.6)
-Add this line to iPaaSCallWrapper.createRequest just before the return statement:
req.AddHeader("X-Company-Id", _settings.CompanyId);
2.0.2
The new version updates the SDK to provide enhanced support for metadata elements, add additional functionality, get up-to-date on APIs, and update the .NET version.
The following changes were made:
MetaData Enhancements
MetaData was modified to add FeatureSupport.
The Preset model was modified to add DefaultValue, SortOrder, and PresetValues (for enum type presets).
IntegrationInfo was modified to add the VersionPatch field to allow integrators to modify the patch version without creating a new minor or major version.
IntegrationInfo was modified to add VersionCustomFieldNames. This allows integrators to specify the names of version- or environment-specific custom fields. Note that we do not allow integrators to specify values here, only names.
IntegrationInfo was modified to add the following OAuth fields: OAuthAuthorizationTypeId (0=NONE, 1= OAUTH_IPAAS_DRIVEN, 2= OAUTH_EXTERNALLY_DRIVEN, 3= OAUTH_EXTERNALLY_DRIVEN_HYBRID, 4= OAUTH_EXTERNALLY_DRIVEN_LOGIN_FIRST),
OAuthUrlTemplate, OAuthIdentifierField, OAuthSuccessCallbackField.
Features was modified to add several new fields and collections based on the new Feature Support data.
Other Changes
Added a new field attributes called iPaaSMetaData to allow users to specify Description, DataType, and IsRequired for each field of their data models.
The ResponseObject was modified to add an additional ResponseType field. This is allows users to specify the type of an object even if the Payload is null. This is primarily an internal-use feature that integrators do not need to populate.
Added a Constants class
Added an Exception field to the TransferRequest object. When transfers are called from pre-requisite or post-action, previously we only set the HasErrors flag. The Exception field will now contain the exception that occurred. Note that we do NOT throw the exception. The caller can determine if the exception should be thrown or not.
Migration Guide
Follow the steps below to upgrade an existing integration to the latest version of the SDK. Note that upgrading is optional. Existing integrations will continue to work with earlier SDK versions.
- Update your project to .NET 8.0
- Update to the latest version of the SDK
- Replace your Integration Development Utility with the updated version here.
- If you have references to the Message/Media or Employee APIs in your Settings file, remove those references. Update any code that used those fields to now use the standard values from the SDK.
- Update your MetaData file to use the new VersionPatch field. Default this to 0 unless you are currently updating the code.
- Update your MetaData file to use the new fields on Presets, Integration
- Change any references from the obsolete field Settings.IPaaSApi_MessageUrl to the new field, IPaaSApi_MediaUrl
- (Optional) Define any supported features in your LoadMetaData method MetaData.cs
- (Optional) Add any OAuth settings to your IntegrationInfo instance.