Review the changes to the publicly available REST APIs for Trifacta® Self-Managed Enterprise Edition for the current release and past releases.
Changes for Release 7.5
Flow sharing API now accepts user email addresses
Beginning in Release 7.5, the API has been enhanced to allow insertion of a user's email address as part of the request body. Below is an example request:
If the above returns a
201 - Success status message, then
firstname.lastname@example.org has been given the role of
collaborator, which uses the
flow_editor policy, for flowId
Tip: You can still use the internal identifier for the user, too.
Changes for Release 7.1
Introducing in-app API reference documentation
Beginning in Release 7.1, API reference documentation is available directly from the Trifacta application. From the menu bar, select Help menu > API Documentation.
- More endpoints and attributes are now available!
- Reference content comes directly from the codebase.
- Searchable and browsable
More content and features will be added to this new capability of the next few releases.
NOTE: The API reference doc that was published with the product documentation is no longer available. Please use the in-app API reference documentation.
NOTE: The API reference documentation may require enablement in your environment. For more information, see API Reference.
Workflow documentation is still available in the product documentation. For more information on these workflows, see API Reference.
API changes for authorization
Release 7.1 introduces authorization, which provides finer-grained access controls to user-defined objects in the platform. For more information, see Changes to User Management.
As a result of authorization, the following changes have been applied to the listed API endpoints.
Connection permissions - POST
When setting permissions, the request body now must include the
NOTE: This is required.
Defines the policy level to assign to the change in connection permissions. Accepted values:
For more information, see the API reference documentation: https://api.trifacta.com/ee/7.6/index.html#operation/createConnectionPermission
Connection permissions - GET
Response no longer includes
NOTE: Above is removed.
Response does include the following new parameters:
For details on these parameters, please see the API Reference documentation:https://api.trifacta.com/ee/7.6/index.html#operation/getConnectionPermissions
Connections - GET LIST
Response now includes an
authorizationPermission field in the
associatedPeople block for each connection:
For details on these parameters, please see the API Reference documentation:https://api.trifacta.com/ee/7.6/index.html#operation/listConnections
Connections - GET
Same change as previous.
For details on these parameters, please see the API Reference documentation:https://api.trifacta.com/ee/7.6/index.html#operation/getConnection
People - GET LIST
Response now includes the following attributes:
NOTE: Above attributes appear only if the authenticating user is an administrator or the specific user.
For details on these parameters, please see the API Reference documentation:https://api.trifacta.com/ee/7.6/index.html#operation/listPeople
People - GET
Same change as previous.
For details on these parameters, please see the API Reference documentation:https://api.trifacta.com/ee/7.6/index.html#operation/getPerson
Create Salesforce connection changes
Beginning in Release 7.1, the structure of a Salesforce connection object has been changed. In prior releases, a Salesforce connection could not be shared without also sharing credentials. These changes allow a Salesforce connection to be shared without requiring the sharing of credentials.
Prior to Release 7.1, when creating a Salesforce connection using the APIs, the
/v4/connections POST method required the insertion of a Salesforce security token as part of the
params section of the request:
Beginning in Release 7.1, the following changes have been applied to this request structure:
credentialsarea of the API request
- A host and port number value are not required.
For more information:
Apply overrides to file-based data sources when you run a job
You can now apply overrides to your file-based data sources when you run a job using the APIs. See API Workflow - Run Job.
Changes for Release 7.0
v3 endpoints are no longer available
The v3 version of the API endpoints are no longer available in the platform.
You must use the v4 versions. See API Reference.
Path to file-based imported datasets can be specified by URI
In Release 6.8 and earlier, you could create an imported dataset from a file-based source using a request like the following:
Beginning in this release, you can specify the source using a single
NOTE: The prior format using
type is still supported.
For more information, seehttps://api.trifacta.com/ee/7.6/index.html#operation/createImportedDataset
awsRoles GET method removed
Prior to Release 7.0, the platform supported the ability to retrieve awsRole objects based on awsRoleId value.
In Release 7.0 and later, this endpoint has been disabled in the product.
Workaround: You can still acquire awsRole identifiers and objects via API. For more information, seehttps://api.trifacta.com/ee/7.6/index.html#operation/listAwsRoles
Connections endpoints simplified
Prior to Release 7.0, the request to create a connection looked liked the following:
In the above, the
connectParams information is duplicated elsewhere in the request.
Beginning in Release 7.0, the
connectParams elements of the Connections endpoint have been removed.
The above request now looks like the following:
nameattributes are now required when creating a new connection.
- If you have downstream scripts that utilize the
connectParamsobjects, these must be updated to reference the corresponding attributes after upgrade to Release 7.0 or later.
For more information, seehttps://api.trifacta.com/ee/7.6/index.html#operation/getConnection
Publishing for a jobGroup has been simplified
After you have run a job, you can publish the results from the job using the following endpoint:
Prior to Release 7.0, the request to submit to the endpoint looked like the following:
flowNodeId value is not necessary, as it can be inferred from the
id value that is part of the endpoint URI.
Beginning in Release 7.0, the request no longer requires the
NOTE: No changes are required to existing scripts. Values submitted for the
flowNodeId or the
outputObjectId are ignored.
For more information, seehttps://api.trifacta.com/ee/7.6/index.html#operation/publishJobGroup
WASB URI format has changed
In Release 6.8 and earlier, the supported format for WASB URIs was the following:
This format was not an Azure standard. Beginning in Release 7.0, the following standards-based format is supported:
NOTE: Any references in your API tooling to the previous WASB UI format must be updated to the new format.
Saving Databricks Personal Access Token has different response
In Release 6.8 and earlier, when saving a Databricks Personal Access Token, the response looked like the following:
|Response Code||204 - No Content|
Beginning in Release 7.0, the response looks like the following:
|Response Code||200 - Ok|
For more information, seehttps://api.trifacta.com/ee/7.6/index.html#operation/saveDatabricksAccessToken
Documentation for awsRoles object corrected
In Release 6.8 and earlier, the following issues appeared in the documentation for the awsRoles object. These issues have been corrected in this release:
The POST and PUT methods for the awsRoles endpoint require either of the following user permissions:
- Workspace admin
- Trifacta admin
Optional workspaceid/personid attributes:
For the POST and PUT methods for the awsRoles endpoint, you can optionally assign the role to a workspace or person.
Changes for Release 6.8.1
Improvements to AssetTransfer API documentation
Before disabling or deleting a user's account, an admin may wish to transfer the user's assets to the ownership of a different user. For more information on how to transfer all assets via API, see https://api.trifacta.com/ee/7.6/index.html#operation/transferAssets
Changes for Release 6.8
Overrides to relational sources and targets
Through the APIs, you can now apply overrides to relational sources and targets during job execution or deployment import.
When you are running a job, you can override the default publication settings for the job using
overrides in the request. For more information, see API Workflow - Run Job.
When you import a flow package into a deployment, you may need to remap the source and output of the flow to use production versions of your data. This capability has been present in the product for file-based sources and targets. Now, it's available for relational sources and targets. For more information, see Define Import Mapping Rules.
New flow object definition
Release 6.8 introduces a new version of the flow object definition. This new version will support cross-product and cross-version import and export of flows in the future. For more information see Changes to the Object Model.
NOTE: The endpoints to use to manage flow packages remain unchanged. Similarly, the methods used to define import mapping rules remains unchanged. The API responses that contain flow definitions has changed. See below.
Export and import macros
Beginning in Release 6.8, you can export and import macro definitions via API.
Changes for Release 6.4
Request format for assigning connection permissions endpoint has changed
For this endpoint:
<cid>is in the internal connection identifier.
The request payload format has changed.
Before Release 6.4, the request format was as follows:
Beginning in Release 6.4, the request format is as follows:
NOTE: The old request format is no longer supported.
For more information, see https://api.trifacta.com/ee/7.6/index.html#operation/createConnectionPermission
v4 version of password reset request endpoint
To assist in migration from the command-line interface to using the APIs, a v4 version of an API endpoint has been made available to allow for administrators to generate password reset codes.
Changes to awsConfig object
NOTE: No action is required.
In Release 6.0, the awsConfig object was introduced to enable the assignment of AWS configurations to individual users (per-user auth) via API. This version of the awsConfig object supported a mapping of a single IAM role to an awsConfig object.
Beginning in Release 6.4, per-user authentication now supports mapping of multiple possible IAM roles to an individual user's configuration. To enable this one-to-many mapping, the awsRoles object was introduced.
- An awsRoles object creates a one-to-one mapping between an IAM role and an awsConfig object.
- An awsConfig object can have multiple awsRoles assigned to it.
Changes to awsConfig object:
rolefield in the object has been replaced by
activeRoleId, which maps to the active role for the configuration object.
- For each
rolereference in the awsConfig objects, a corresponding awsRole object has been created and mapped to it.
Beginning in Release 6.4, you can create, edit, and delete awsRoles objects, which can be used to map an AWS IAM role ARN to a specified AWSConfig object. You can map multiple awsRoles to a single awsConfig.
For more information, see API Workflow - Manage AWS Configurations.
Changes for Release 6.3
Assign AWSConfigs to a user at create time
Beginning in Release 6.3, you can assign an AWSConfig object to a user when you create the object. This shortcut reduces the number of REST calls that you need to make.
NOTE: For security reasons, AWSConfig objects must be assigned to users at the time of creation. Admin users can assign to other users. Non-admin users are automatically assigned the AWSConfig objects that they create.
Prior to Release 6.3, AWSConfig objects were assigned through the following endpoint. Example:
NOTE: This endpoint has been removed from the platform. Please update any scripts that reference the above endpoint to manage AWS configuration assignments through the new method described in the following link.
Changes for Release 6.0
Error in Release 6.0.x API docs
In Release 6.0 - Release 6.0.2, the online and PDF versions of the documentation referenced the following endpoint: API JobGroups Get Status v4. According to the docs, this endpoint was triggered in this manner:
This endpoint exists in v3 of the API endpoints. It does not exist in v4.
Instead, you should monitor the
status field for the base GET endpoint for jobGroups. For more information, see https://api.trifacta.com/ee/7.6/index.html#operation/getJobGroup
Planned End of Life of v3 API endpoints
In Release 6.0, the v3 API endpoints are supported.
In the next release of Trifacta Self-Managed Enterprise Edition after Release 6.0, the v3 API endpoints will be removed from the product (End of Life).
You must migrate to using the v4 API endpoints before upgrading to the next release after Release 6.0.
Changes for Release 5.9
Introducing Access Tokens
Each request to the API endpoints of the Trifacta platform requires submission of authentication information. In Release 5.1 and earlier:
- A request could include clear-text username/password combinations. This method is not secure.
- A request could include a browser cookie. This method does not work for well for use cases outside of the browser (e.g. scripts).
Beginning in Release 5.9, API users can manage authentication using access tokens. These tokens obscure any personally identifiable information and represent a standards-based method of secure authentication.
NOTE: All previous methods of API authentication are supported in this release. Access tokens is the preferred method of authentication.
The basic process works in the following manner:
- API user requests generation of a new token.
- This initial request must contain a valid username and password.
- Request includes expiration.
- Token value is returned in the response.
- The token value inserted into the Authorization header of each request to the platform.
- User monitors current time and expiration time of the token. At any time, the user can request a new token to be generated using the same endpoint used in the initial request.
Access tokens can be generated via API or the Trifacta application.
NOTE: This feature must be enabled in your instance of the platform. See Enable API Access Tokens.
API: For more information, see https://api.trifacta.com/ee/7.6/index.html#operation/createApiAccessToken
- Trifacta application: For more information, see Access Tokens Page.
For more information on API authentication methods, see https://api.trifacta.com/ee/7.6/index.html#section/Authentication
Changes for Release 5.1
Changes for Release 5.0
Introducing v4 APIs
Release 5.0 signals the introduction of version 4 of the REST APIs.
NOTE: At this time, a very limited number of v4 REST APIs are publicly available. Where possible, you should continue to use the v3 endpoints. For more information, see API Reference.
The following conventions apply to v4 and later versions of the APIs:
Parameter lists are consistently enveloped in the following manner:
- Field names are in
camelCaseand are consistent with the resource name in the URL or with the
From early API versions, foreign keys have been replaced with identifiers like the following:
v3 and earlier v4 and later
Publication endpoint references database differently. This change is to make the publishing endpoint for relational targets more flexible in the future.
v3 and earlier v4 and later
Changes for Release 4.2
Create Hive and Redshift connections via API
You can create connections of these types via API:
- Only one global Hive connection is still supported.
- You can create multiple Redshift connections.
WrangledDataset endpoints are still valid
In Release 4.1.1 and earlier, the WrangledDataset endpoints enabled creation, modification, and deletion of a wrangled dataset object, which also created the associated recipe object.
In Release 4.2, wrangled datasets have been removed from the application interface. However, the WrangledDataset API endpoints remain, although they now apply to the recipe directly.
The following endpoints and methods are still available:
NOTE: In a future release, these endpoints may be migrated to recipe-based endpoints. API users should review this page for each release.
For more information, see Changes to the Object Model.
This page has no comments.