NEW: API Connection Manager - Enable Direct Editing of Client Secret in the Connection Settings instead of clicking "..." button
NEW: API Connector - All Google Connectors - Add Redirect URL Property to support Web Application credentials (Advanced Option)
NEW: API Connector - All Google Connectors - Update instructions for all Google API Connectors to Publish App (without this custom app expires refresh_token every 7 days)
NEW: API Connector - Amazon Seller Partner (SP-API) - New connector to read / write data from SP-API (Orders, Reports, Inventory etc)
NEW: API Connector - Asana - Read / Write Tasks, Sub Tasks, Projects, Users, and more
NEW: API Connector - Azure DevOps - Query list doesnt refresh after changing Project prameter for get_workitems_by_query_id endpoint on Query Builder UI
NEW: API Connector - Azure DevOps - Updated datatypes for some endpoint columns (previously they were all string types)
NEW: API Connector - CosmosDB - Change default rows per page (MaxItemCount) from 100 to 1000 for performance improvement
NEW: API Connector - CosmosDB - Updated datatypes for some endpoint columns (previously they were all string types)
NEW: API Connector - Gmail - Add Htmlbody / PlainTextBody columns (Previously it was always null)
NEW: API Connector - Gmail - Add new feature to download attachments / list attachments
NEW: API Connector - Gmail - Added extra columns / fixed datatypes for Messages table
NEW: API Connector - Google BigQuery - Add support for TIMESTAMP columns to display as DateTime column along with original column (new column NameOfTimeStampColumn_DT)
NEW: API Connector - JIRA - Add option to choose custom domain in service URL
NEW: API Connector - JIRA - Add option to use PAT (Personal Access Token) for Authentication (Bearer Token)
NEW: API Connector - JIRA - Added Lookup support (WHERE Id=123) for SELECT / UPDATE / DELETE operations
NEW: API Connector - Outlook Mail (Office 365) - Allow to get messages from a specific folder for get_messages and get_my_messages endpoints
NEW: API Connector - Outlook Mail (Office 365) - New endpoint download_message_attachments to get multiple attachments by search condition
NEW: API Connector - Service Desk Plus ManageEngine - Add endpoints to read Project data (Projects, Memebers, Milestones, Comments)
NEW: API Connector - Service Desk Plus ManageEngine - Add endpoints to read Task data
NEW: API Connector - ServiceDesk Plus (Managed Engine by Zoho) - Added new tables / endpoints related to Projects, Members, Milestones, Changes, Assests, Problems, Contracts and PurchaseOrders
NEW: API Connector - Shopify - Change datatype for LineItems to DT_NTEXT to handle more than 4000 chars
NEW: API Connector - Smartsheet - New connector to read / write SmartSheet data (Sheets, Rows, Contacts etc)
NEW: API Connector - Zendesk - Add new endpoint search_export to read more than 1000 search records
NEW: API Connector - Zendesk - New incremental export endpoints for User, Organization and Ticket Metric Event (Fetch updated records only)
NEW: API Connector - Zendesk - Performance improvement for many paginated endpoints such as get_tickets, get_tickets_incr, get_users, get_organizations, get_ticket_metrics and more
NEW: API Connector - Zendesk - Update Offset based pagination to cursor based pagination (Zendesk Announced they will discontinue old pagination)
NEW: API Connector - Zoho CRM - Add support for new dataceneters (Saudi Arabia (SA), Canada (CA) and Japan (JP))
NEW: API Connector - Zoho CRM - Add support for V3, V4... V7 APIs
NEW: API Connector - Zoho CRM - Support for choosing higher API version (e.g. V7) - Set at connection level
NEW: API Connector Framework - Add EndPoint property DisableChildEndPoint - Useful when used with ParameterScope (Zoho v3+ usecase)
NEW: API Connector Framework - Add new EndPoint Property PushToChildEndPoint - Support for passing Parent variable to child endpoint if parent is dynamically expanded (e.g. Zoho Usecase of get_[$parent.api_name$] used in child_Search)
NEW: API Connector Framework - Add new UI Editor type for Browse Folder (e.g. <Param ... Editor="FolderOpen" ... )
NEW: API Connector Framework - Add support for IF_NULL (conditional output based on null value) in Functions property for InputColumns and OutputColumns (Previously when null value ignored Functions property and results in null)
NEW: API Connector Framework - Add support for Key Attribute for Auth Parameters (Right now it must use Name)
NEW: API Connector Framework - Add Support for Static Options when MultiSelectAllOnBlank or MultiSelectAllOnDefault specified and no OptionsEndPoint listed
NEW: API Connector Framework - Allow KeyIf property to use flag for MapToParam and Name to use for Key column (matahc with Param name) - e.g. KeyIf="id|1|IdOrKey"
NEW: API Connector Framework - Allow option to hide Generate Token button and AccessToken (introduce TokenUIMode Property for OAuth connection type)
NEW: API Connector Framework - Allow Property Type Paramater with new attribute PropertyScope=ApiObject to make EndPoint Attribute Dynamic
NEW: API Connector Framework - Allow to use Column Placeholders in Function during Expand (e.g. <Column Exapnd="True" Functions="[$parent.id$].....".... > ) for Dynamic Columns (Expand=True)
NEW: API Connector Framework - Provide a way to use multiple endpoint names in OptionsEndPoint and Union Result (E.g. OptionsEndPoint="get_cars;get_bikes"
NEW: API Connector Framework - Three new properties for OAuth Connection - AuthorizeInFullBrowser, UseLoopbackUrlForDefault, CustomWarningForFullMode
NEW: API Connector Framework - Trim LayoutMap to avoid whitespace error
NEW: Dynamics CRM Connection Manager - Select OAuth Type as default when UI is launched
NEW: Excel Destination - Add two new properties to control Date formats for DateTime and Date without time (right now all date values displayed with same format yyyy-MM-dd HH:mm:ss)
NEW: Excel Destination - PreserveFormatting=True doesnt work
NEW: Excel Source - Provide additional system table __SheetList__ to return list of tabs on a sepected sheet
NEW: Export Excel Task - Add new property to control Date format for Date value without time part (right now all date values (without time part) displayed with long format yyyy-MM-dd HH:mm:ss and no way to control it)
NEW: Export Excel Task - ExcelPreserveFormat=True doesnt work
NEW: Export JSON / XML Task, Generate JSON / XML Transform - <map src="*" /> doesnt expand in order (Always adds at the end)
NEW: Export JSON / XML Task, Generate JSON / XML Transform - <map src="*" /> doesnt work if added under array node
NEW: Export JSON / XML Task, Generate JSON / XML Transform - Allow to skip certain properties from map expansion using skipexpandfor = regular-expression (Example: <map src="*" skipexpandfor="^(some_column1|some_column2)$--regex"/> )
NEW: Export JSON / XML Task, Generate JSON / XML Transform - Give option to hide fragment attribute name in LayoutMap (e.g. <map fragment="true" hidename="true" ...> )
NEW: General - Add new parameter returnStaticValueOnBadExpression for FUN_TO_DATETIME / FUN_TO_DATE / FUN_TO_DATETIME_UTC - If user entered invalid expression then allow to return expression or inputvalue as is if supplied
NEW: General - Add option on License Manager (Logging Tab) to turn on global logging for HTTP / HTTPS Requests (Useful when Fiddler not installed)
NEW: General - Add ThrowIfMissing parameter for FUN_JSON_TO_TEXT (bad filter throws error if parameter is passed)
NEW: General - Allow suffix in placeholder function name "_safe" or "_strict" (e.g. FUN_READFILE_SAFE) to fail or return error message rather than ignoring error (current behavior)
NEW: General - Allow to export Mappings with 5 additional options (SSIS ProperCase / lower_case/ No labels and For API Connector added lower_case / Current Grid) along with ProperCase and No Labels
NEW: General - FUN_IF add two new match operators - In / NotIn - Example <<2|~|In|~|1,2,3,4|~|found|~|not found,FUN_IF>> - Use comma to supply options
NEW: General - FUN_IF date time compare doesnt work in Eq, NotEq, Lt, Gt, LtEq, GtEq operator
NEW: General - FUN_IF numeric / datetime compare doesnt work for some culture (e.g. German, Finland with comma as decimal point) - Operator Failed Eq, NotEq, Lt, Gt, LtEq, GtEq operator
NEW: General - Improve error message for registration related errors
NEW: General - License Manager shows OFFLINE in some cases even its connected to the internet
NEW: General - New placeholder function FUN_CASE with (example <<some_color_here|~|eq:red|~|color is red|~|eq:green|~|color is green|~|default message,FUN_CASE>> ) - Allowed Match Operators are Eq, NotEq , Gt, GtEq, Lt, LtEq, Between, Contains, ... few more
NEW: Google Analytics Connection Manager - Allow to Ignore Certificate Errors (Useful with Proxy such as Fiddler)
NEW: Google Data Connection Manager - Make GA4 default for new connection and label GA3 (i.e. UA) as discontinued
NEW: JSON / XML / CSV Source - Allow new line character in Custom Search / Replace Textbox (Useful when you like to replace Tab chars to New line - Use \t--regex in SearchFor, and Hit enter key in ReplaceBy) - Previously it was single line textbox
NEW: MongoDB Source, DynamoDB Source, Excel Source, Azure Table Source - Empty string compare not working (e.g. where name<>'' )
NEW: OAuth Connection Manager - Allow RedirectUrl for all Google Providers
NEW: REST API Task, JSON / XML / CSV Source, Web API Destination - Expose a new option under [Advanced HTTP Optio] tab - AllowAuthRedirectToAnyDomain to redirect Authorization to different domain
NEW: REST API Task, JSON/XML/CSV Source, Web API Destination - Redirect 307 / 308 StatusCode along with 301 and 302
NEW: Salesforce Connection - Enable PKCE Code Verifier for OAuth 2.0 by default (Advanced Tab) - Without this on generate token user may see error => missing required code challenge
NEW: Salesforce Connection Manager - Add a new option OwnerChangeOptions (Useful for Insert/Update operations in Target)
NEW: Salesforce Connection Manager - Allow to set custom InstanceURL on Advanced Tab (Set AccessToken dynamically from external system scenario)
NEW: Salesforce Destination - Support insert / update / upsert using related object's ExternalId field (i.e. set lookup field) - Update nested field by Relation Name
NEW: Salesforce Source - Add support for * in Select Query
NEW: Salesforce Source - Provide an option to use Bulk API for query (EnableBulkMode=true)
NEW: Secure FTP Task , Advanced File System Task - Change Examples to be clear on Size (its in bytes)
NEW: SSIS Validation Task - Add In / NotIn match operator (Use comma separated values to match) - For Numeric or Date use # (e.g. 100#200 or 2012-01-01#2012-12-31)
Bug fixes
FIX: All Google Providers (Youtube, Sheets, Drive, Calendar, BigQuery, Gmail) - Add access_type=offline&prompt=consent - You may not get refresh token back in some cases after authorize without this
FIX: API Connector - Outlook Mail (Office 365) - Some fields have wrong datatypes
FIX: API Connector - Power BI - Some fields have wrong datatypes
FIX: API Connector - CosmosDB - Maximum 10000 rows are fetched because PagingByUrlMaxPages is set to 100 by default. It needs to be 0 for unlimited pages
FIX: API Connector - Google BigQuery - read_table_data endpoint throws Invalid dataset ID error
FIX: API Connector - Jira - Some fields (e.g. Summary) are too small for ETL tools like SSIS
FIX: API Connector - Zoho CRM - Lookup fields are NULL and Lookup_Field_Id is not in the output (e.g. select Account_Name from Deals)
FIX: API Connector Framework - Order attribute for Column / EndPoint / Table tags may not work correctly if you have Expand=True
FIX: API Connector Framework - Throw meaningful error if Lookup operation is not supported in UPDATE / DELETE and user tried to use Id in WHERE clause
FIX: Dynamics CRM Destination - Update description for EnableDuplicateDetection property to be more clear (it was misleading)
FIX: General - Allow decimal format timestamp as input for FUN_UNIX_TIMESTAMP_MS_TO_DATE (e.g. <<1.577941199123E9, FUN_UNIX_TIMESTAMP_MS_TO_DATE>> OR <<1577941199.123, FUN_UNIX_TIMESTAMP_MS_TO_DATE>> both must produce 2020-01-02T04:59:59.123)
FIX: General - FUN_IF does case-sensitive RegX match by default (unlike other operations) and ignores use if case-sensitive argument
FIX: General - FUN_IF returns input value if match part is set to Blank (e.g. {input}|~|Eq|~|{something}|~||~|not match,FUN_IF)
FIX: General - fun_unix_timestamp_to_date and fun_unix_timestamp_ms_to_date doesnt work in some cultures where dot not allowed in time part (e.g. Finland)
FIX: General - License UI saves settings.xml to custom data but reads from ProgramData causing mismatch
FIX: General - Sometimes wrong RowNumber reported in error
FIX: Google Analytics Source - You cannot see more than 50 profiles in the browse dialog box (pagination issue)
FIX: HTTP Connection Manager - Dynamic Token Auth Preview shows {none} rather than blank
FIX: OAuth Connection Manager - If Authorization URL has Query string it may fail to extract Token sometimes
FIX: OAuth Connection Manager - Manual loopback redirect URL (e.g. http://localhost:1234) does not work in Google API
FIX: OAuth Connection Manager - Sometimes after error Generate Token button is not enabled
FIX: REST API Task, JSON / XML / CSV Source - MultiPart with file upload fails due to longer than 70 chars auto generated boundary (Setting custom MultiPartBoundary Property works fine)
FIX: REST Connection Manager - If Service URL has --regex suffix UI may add duplicate entries
FIX: Salesforce Connection Manager - Throws Invalid URI: The URI is empty error when you choose Custom Service Type (Other)
FIX: Salesforce Source - Including nested object Id column in SELECT throws error - the item with the same key has been already added (e.g. SELECT Account.Owner.Id FROM Contact)
FIX: Salesforce Source - You may get error - Object reference not set - If you click Preview button after 2 hours of inactivity
FIX: Upsert Destination - System.Exception: The object is not in the hash table.