Notable additions and updates to the Flatfile platform
is
operator with values of error
and valid
guestAuthentication
array field has been replaced with a new guestLinkUrl
string field in the DataClip modelsharedLink
set to “unrestricted”, a guest link with a permanent access token is generatedsharedLink
set to “restricted”, a direct sheet URL is generated without a tokentarget="_blank"
). This improvement ensures that users don’t navigate away from the Flatfile interface when clicking on links within documents, maintaining their current context and workflow.This change applies to all links in documents, whether they’re created using Markdown syntax or HTML anchor tags.keepRecordIds
flag to maintain record IDs during transformations. This enhancement provides greater control over how records are processed during transformation operations.Key Benefits:keepRecordIds
is set to true
, the system uses updateRecords
instead of the previous add/delete approach, ensuring that record IDs remain unchanged throughout the transformation process. This is particularly valuable when:keepRecordIds
flag can be included in transformation job configurations:keepRecordIds
defaults to false
, maintaining the existing behavior for current implementations.@flatfile/api
module has been updated. The RecordUpdates
and Success
types are now imported in a different order.The implementation of the clearColumn
method has been refactored. Instead of using the map
and filter
array methods, it now uses the reduce
method to generate the recordsUpdates
array. The new implementation checks if the field value exists and if the field is not read-only before clearing it. This change likely improves performance and readability.The wording of the info
and outcome.message
properties in the transitionJob
call has been updated from “Column was removed” to “Column was cleared”. This change provides more accurate messaging about the action performed.Additionally, the code now handles read-only fields correctly. If a field is marked as read-only in the RecordConfig
, its value will not be cleared.These changes improve the functionality, performance, and messaging of the clearColumn
logic without introducing any breaking changes to the external interface.error
state and appropriate error messages when duplicate values are encountered for fields with a unique constrainttakeSnapshotForJob
, which handles creating and labeling the snapshot
based on the job, sheet, and column details. This allows developers to review
the sheet state prior to the column clearing if needed.appId
has been added
to the /v1/spaces
endpoint. Developers can now pass the appId
query
parameter to retrieve only the spaces associated with the specified app. For
example, ?appId=us_app_123
will return only spaces linked to the app with ID
us_app_123
. If an invalid or non-existent app ID is provided, an empty list
will be returned.clearColumnAction
now has a constraint added that checks if the column is enabled before allowing the action to be executed. This ensures that the action can only be performed on columns that are currently enabled, preventing any potential issues or errors that could arise from attempting to clear a disabled column.viewMapped
functionality has been updated to include new text strings for
messaging related to updating a table to only view mapped fields. The messages
include “Updating the table to only view mapped fields”, “Halfway there, hang
tight…”, “Almost done…”, “Table update complete. Please audit the data”, and
“An error occurred while updating the workbook. See Event Logs.” These strings
will be displayed to the user during the process of updating a table to show
only mapped fields, providing status updates and handling potential errors. This
change enhances the user experience by providing clear communication during this
operation.config.options
property was undefined, an error would
occur. Now, if config.options
is undefined, it defaults to an empty array.
This ensures that the code can safely handle cases where config.options
is not
present or is undefined. For example, if a developer was updating a sheet with
an enum field that did not previously have any options defined, the update can
now proceed without errors.addColumn
, clearColumn
, and removeColumn
with their
respective translations for adding, clearing, and removing columns.In the English translation file, the title of the “mapValues” section has been
updated from “Map values” to “Map Fields”.sheetSidebarOrder
setting in the
workbook. Any sheets not included in the order are appended to the end.@flatfile/api@1.9.17
Secrets have been updated to introduce new optional fields for filtering.A new optional actorId
field of type ActorId
has been added to the
ListSecrets
request type and WriteSecret
type for secrets. This allows
filtering secrets by the associated actor (user, guest, agent, or api key).@flatfile/api@1.9.16
Added new methods to for managing stored sheet constraints: getConstraints
,
createConstraint
, getConstraintById
, updateConstraint
, and
deleteConstraint
.@flatfile/api@1.9.15
With the addition of archived spaces there is now an ability to unarchiveSpace
method and space:unarchived
event.Deprecated use of metadata field at the cell value level, recommending use of
record level metadata instead.spaces-ui
Updates to Snapshots resource to track changes to a sheet’s schema (i.e. added
and removed columns). A more robust Snapshot will enable more complex features
when comparing 2 different snapshots.@flatfile/api@1.9.14
JobConfig
type, allowing additional data to be
associated with jobs.@flatfile/api@1.9.13
spaces-ui
New fields ‘guide’ and ‘guardrail’ have been added to Actions. These options
enable providing markdown guidance and warnings to your users.guardrail
component will render as a modal warning before the action event
is triggered. This can be useful for actions that have critical consequences or
require user acknowledgment before proceeding.This can be useful for actions that have critical consequences or require user
acknowledgment before proceeding.spaces-ui
The “requireAllValidTotal” option has been added for custom actions in the Sheet
toolbar. This new option requires all rows in the Sheet to be valid for the
action to be enabled, regardless of selection. If “requireAllValidTotal” is set
and there are any validation errors in the entire Sheet, the custom action will
be disabled with the corresponding tooltip message.The existing “requireAllValid” option has been updated to only apply to the
selected rows, rather than all rows. If “requireAllValid” is set and there are
validation errors in the selected rows, the custom action will be disabled with
the corresponding tooltip message.spaces-ui
Introduces support for handling locked sheets (indicated by the locked icon),
and improves the handling of import files.@flatfile/api@1.9.8
A new reference-list
property type has been added to allow defining an array
of values referenced from another sheet. Links will be established automatically
by the matching engine or similar upon an evaluation of unique or similar
columns between datasets.The ReferencePropertyConfig
has been updated to make the relationship
property optional, allowing it to be omitted.@flatfile/api@1.9.7
New options have been added to the ListWorkbooksRequest to allow filtering
workbooks by name, namespace, label, and treatment, as well as controlling
whether to include sheets. For example, you can now pass a name
parameter to
filter workbooks by name, or a treatment
parameter to filter by treatment. The
includeSheets
boolean parameter controls whether sheet data is included in the
response.@flatfile/api@1.9.6
In AgentConfig type, a new optional property sourceMap
of type string has been
added. This allows including a source map for the agent code.@flatfile/api@1.9.5
A new property treatments
of type Flatfile.WorkbookTreatments[]
has been
added to the Workbook
and CreateWorkbookConfig
types. This array allows
specifying treatments for a workbook, with the currently available treatment
being ExtractedFromSource
. This change introduces a new external interface
that developers using the package should be aware of when creating or updating
workbooks.Example usage:@flatfile/api@1.9.3
A new JobOutcomeTrigger
type has been introduced to specify whether a job
outcome’s effect should be triggered automatically or manually.spaces-ui
Improvements have been made to error handling and user feedback in the file
import and mapping process. If an error occurs, a popover is displayed to the
user with the error message, providing clearer feedback on failures during the
import process./users/:userId/resend-invite
endpoint enabling admins to resend
an invitation to a user who has not yet accepted it.deleteMultipleRules
method simplifies the management of mapping rules by
allowing bulk deletions. The DeleteMultipleRulesRequest
type represents the
request payload, detailing the array of rule IDs to be deleted.delete
method that allows you to delete an app.ValidationMessage
type has been enhanced with two new optional properties:
field
and path
. The field
property specifies which field the validation
message pertains to, while the path
property, of type JsonPathString
,
specifies the JSONPath for the validation message. These enhancements provide
more context and precision in validation feedback.JobOutcomeNext
type now includes a new view
option, allowing jobs to
specify a custom view that should be displayed upon completion. To support this,
we introduced the JobOutcomeNextView
type, which provides details for the
custom view, including the sheet ID, hidden columns, and an optional label.updateSheet
method that allows you to update a sheet’s
name, slug, and metadata. The SheetUpdateRequest
type represents the update
request payload, including the name, slug, and metadata of the sheet.
Additionally, an optional metadata
property has been added to the Sheet
and
SheetUpdate
types, allowing for the storage of contextual metadata related to
the sheet.spaces-ui
A new “Update View” button can now be found in the job outcome modal for jobs
that modify the visibility of columns in a workbook sheet. This button triggers
updating the column visibility based on the job outcome.There are 2 new capabilities to the next property of Job Outcomes:view
gives developers the ability to manipulate the Sheet’s view on
completion of a Job - Giving control over things like applying a filter or
hiding a columndownload
gives developers the ability to include file details (such as a
fileName and URL), which are then used to trigger a download to the user’s
browser on completion of the jobEnvironment
events expanding the scope of domains our
system recognizes. To leverage these events, you can listen on to the following
topics: The corresponding event topics are environment:created
,
environment:updated
, and environment:deleted
.filter
param allows allows you to provide options
to filter records, with the default set to none while the filterField
param
enables narrowing the valid/error filter results to a specific field, but it
requires the filter to be set.We corrected a typo in the JobOutcomeNextFiles
type by renaming the file
property to files to accurately represent an array of file objects.spaces-ui
ListDocumentsResponse
The data
property now returns an array of Document
objects instead of the
previous DocumentResponse
. This change standardizes the format and improves
consistency in how document data is handled.predecessorIds
property to JobConfig
. This property allows
you to specify job dependencies, meaning you can list the IDs of jobs that must
be completed before the current job can start. This helps in managing and
sequencing job execution more effectively.We added a new feature to handle job outcomes more effectively with a new type
called JobOutcomeNext
and its variant files. This includes:JobOutcomeNextFileObject
Stores individual file information with an ID and
optional label.JobOutcomeNextFiles
Handles multiple files, including an array of
JobOutcomeNextFileObject instances and an optional label.ListViewsRequest
to include optional pageSize
and pageNumber
properties, allowing for pagination when retrieving views. We’ve also added a
createdBy
property to View
and ViewResponse
to track the creator of each
view.workbook:created
event was emitted even when the workbook was
only being updated. Now, the logic emits a workbook:updated
event when
necessary. Additionally, the POST /:workbookId/rebuild
endpoint now handles
eventing properly.