Flatfile subpackage_sheets API
The subpackage_sheets API from Flatfile — 11 operation(s) for subpackage_sheets.
The subpackage_sheets API from Flatfile — 11 operation(s) for subpackage_sheets.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/flatfile-subpackage-sheets-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Reference subpackage_accounts Subpackage Sheets API
version: 1.0.0
servers:
- url: https://api.x.flatfile.com/v1
tags:
- name: subpackage_sheets
paths:
/sheets:
get:
operationId: list
summary: List sheets
description: Returns sheets in a workbook
tags:
- subpackage_sheets
parameters:
- name: workbookId
in: query
description: ID of workbook
required: true
schema:
$ref: '#/components/schemas/type_commons_WorkbookId'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
- name: X-Disable-Hooks
in: header
required: true
schema:
type: string
enum:
- 'true'
responses:
'200':
description: Response with status 200
content:
application/json:
schema:
$ref: '#/components/schemas/type_sheets_ListSheetsResponse'
/sheets/{sheetId}:
get:
operationId: get
summary: Get a sheet
description: Returns a sheet in a workbook
tags:
- subpackage_sheets
parameters:
- name: sheetId
in: path
description: ID of sheet
required: true
schema:
$ref: '#/components/schemas/type_commons_SheetId'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
- name: X-Disable-Hooks
in: header
required: true
schema:
type: string
enum:
- 'true'
responses:
'200':
description: Response with status 200
content:
application/json:
schema:
$ref: '#/components/schemas/type_sheets_SheetResponse'
delete:
operationId: delete
summary: Delete a sheet
description: Deletes a specific sheet from a workbook
tags:
- subpackage_sheets
parameters:
- name: sheetId
in: path
description: ID of sheet
required: true
schema:
$ref: '#/components/schemas/type_commons_SheetId'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
- name: X-Disable-Hooks
in: header
required: true
schema:
type: string
enum:
- 'true'
responses:
'200':
description: Response with status 200
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Success'
'400':
description: Error response with status 400
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Errors'
'404':
description: Error response with status 404
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Errors'
patch:
operationId: update-sheet
summary: Update a sheet
description: Updates Sheet
tags:
- subpackage_sheets
parameters:
- name: sheetId
in: path
description: ID of sheet
required: true
schema:
$ref: '#/components/schemas/type_commons_SheetId'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
- name: X-Disable-Hooks
in: header
required: true
schema:
type: string
enum:
- 'true'
responses:
'200':
description: Response with status 200
content:
application/json:
schema:
$ref: '#/components/schemas/type_sheets_SheetResponse'
'400':
description: Error response with status 400
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Errors'
'404':
description: Error response with status 404
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Errors'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/type_sheets_SheetUpdateRequest'
/sheets/{sheetId}/duplicate:
post:
operationId: duplicate-sheet
summary: Duplicate a sheet
description: Creates a copy of a sheet including all its data within the same workbook
tags:
- subpackage_sheets
parameters:
- name: sheetId
in: path
description: ID of sheet to duplicate
required: true
schema:
$ref: '#/components/schemas/type_commons_SheetId'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
- name: X-Disable-Hooks
in: header
required: true
schema:
type: string
enum:
- 'true'
responses:
'200':
description: Response with status 200
content:
application/json:
schema:
$ref: '#/components/schemas/type_sheets_SheetResponse'
'400':
description: Error response with status 400
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Errors'
'404':
description: Error response with status 404
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Errors'
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Custom name for the duplicated sheet. Defaults to "Copy of [original name]"
slug:
type: string
description: Custom slug for the duplicated sheet. Defaults to "[original slug]-copy-[timestamp]"
/sheets/{sheetId}/validate:
post:
operationId: validate
summary: Validate a sheet
description: Trigger data hooks and validation to run on a sheet
tags:
- subpackage_sheets
parameters:
- name: sheetId
in: path
description: ID of sheet
required: true
schema:
$ref: '#/components/schemas/type_commons_SheetId'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
- name: X-Disable-Hooks
in: header
required: true
schema:
type: string
enum:
- 'true'
responses:
'200':
description: Response with status 200
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Success'
'400':
description: Error response with status 400
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Errors'
'404':
description: Error response with status 404
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Errors'
/sheets/{sheetId}/download:
get:
operationId: get-records-as-csv
summary: Download records as a CSV file
description: Returns records from a sheet in a workbook as a csv file
tags:
- subpackage_sheets
parameters:
- name: sheetId
in: path
description: ID of sheet
required: true
schema:
$ref: '#/components/schemas/type_commons_SheetId'
- name: versionId
in: query
description: Deprecated, use `sinceCommitId` instead.
required: false
schema:
type: string
- name: commitId
in: query
description: Returns records that were changed in that version in that version and only those records.
required: false
schema:
$ref: '#/components/schemas/type_commons_CommitId'
- name: sinceVersionId
in: query
description: Deprecated, use `sinceCommitId` instead.
required: false
schema:
$ref: '#/components/schemas/type_commons_VersionId'
- name: sinceCommitId
in: query
description: Returns records that were changed in that version in addition to any records from versions after that version.
required: false
schema:
$ref: '#/components/schemas/type_commons_CommitId'
- name: sortField
in: query
description: The field to sort the data on.
required: false
schema:
$ref: '#/components/schemas/type_commons_SortField'
- name: sortDirection
in: query
description: Sort direction - asc (ascending) or desc (descending)
required: false
schema:
$ref: '#/components/schemas/type_commons_SortDirection'
- name: filter
in: query
description: Options to filter records
required: false
schema:
$ref: '#/components/schemas/type_commons_Filter'
- name: filterField
in: query
description: The field to filter the data on.
required: false
schema:
$ref: '#/components/schemas/type_commons_FilterField'
- name: searchValue
in: query
description: The value to search for data on.
required: false
schema:
$ref: '#/components/schemas/type_commons_SearchValue'
- name: searchField
in: query
description: The field to search for data on.
required: false
schema:
$ref: '#/components/schemas/type_commons_SearchField'
- name: ids
in: query
description: The Record Ids param (ids) is a list of record ids that can be passed to several record endpoints allowing the user to identify specific records to INCLUDE in the query, or specific records to EXCLUDE, depending on whether or not filters are being applied. When passing a query param that filters the record dataset, such as 'searchValue', or a 'filter' of 'valid' | 'error' | 'all', the 'ids' param will EXCLUDE those records from the filtered results. For basic queries that do not filter the dataset, passing record ids in the 'ids' param will limit the dataset to INCLUDE just those specific records
required: false
schema:
$ref: '#/components/schemas/type_commons_RecordId'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
- name: X-Disable-Hooks
in: header
required: true
schema:
type: string
enum:
- 'true'
responses:
'200':
description: Response with status 200
content:
application/octet-stream:
schema:
type: string
format: binary
/sheets/{sheetId}/counts:
get:
operationId: get-record-counts
summary: Get record counts
description: Returns counts of records from a sheet
tags:
- subpackage_sheets
parameters:
- name: sheetId
in: path
description: ID of sheet
required: true
schema:
$ref: '#/components/schemas/type_commons_SheetId'
- name: versionId
in: query
description: Returns records that were changed in that version and only those records.
required: false
schema:
type: string
- name: sinceVersionId
in: query
description: Deprecated, use `sinceCommitId` instead.
required: false
schema:
$ref: '#/components/schemas/type_commons_VersionId'
- name: commitId
in: query
description: Returns records that were changed in that version in addition to any records from versions after that version.
required: false
schema:
$ref: '#/components/schemas/type_commons_CommitId'
- name: sinceCommitId
in: query
description: Listing a commit ID here will return all records since the specified commit.
required: false
schema:
$ref: '#/components/schemas/type_commons_CommitId'
- name: filter
in: query
description: Options to filter records
required: false
schema:
$ref: '#/components/schemas/type_commons_Filter'
- name: filterField
in: query
description: The field to filter the data on.
required: false
schema:
$ref: '#/components/schemas/type_commons_FilterField'
- name: searchValue
in: query
description: The value to search for data on.
required: false
schema:
$ref: '#/components/schemas/type_commons_SearchValue'
- name: searchField
in: query
description: The field to search for data on.
required: false
schema:
$ref: '#/components/schemas/type_commons_SearchField'
- name: byField
in: query
description: If true, the counts for each field will also be returned
required: false
schema:
type: boolean
- name: q
in: query
description: An FFQL query used to filter the result set to be counted
required: false
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
- name: X-Disable-Hooks
in: header
required: true
schema:
type: string
enum:
- 'true'
responses:
'200':
description: Response with status 200
content:
application/json:
schema:
$ref: '#/components/schemas/type_sheets_RecordCountsResponse'
/sheets/{sheetId}/calculations:
get:
operationId: get-calculations
summary: List calculations
description: Returns all calculations for a sheet
tags:
- subpackage_sheets
parameters:
- name: sheetId
in: path
description: ID of sheet
required: true
schema:
$ref: '#/components/schemas/type_commons_SheetId'
- name: versionId
in: query
description: Returns records that were changed in that version and only those records.
required: false
schema:
type: string
- name: sinceVersionId
in: query
description: Deprecated, use `sinceCommitId` instead.
required: false
schema:
$ref: '#/components/schemas/type_commons_VersionId'
- name: commitId
in: query
description: Returns records that were changed in that version in addition to any records from versions after that version.
required: false
schema:
$ref: '#/components/schemas/type_commons_CommitId'
- name: sinceCommitId
in: query
description: Listing a commit ID here will return all records since the specified commit.
required: false
schema:
$ref: '#/components/schemas/type_commons_CommitId'
- name: filter
in: query
description: Options to filter records
required: false
schema:
$ref: '#/components/schemas/type_commons_Filter'
- name: filterField
in: query
description: The field to filter the data on.
required: false
schema:
$ref: '#/components/schemas/type_commons_FilterField'
- name: searchValue
in: query
description: The value to search for data on.
required: false
schema:
$ref: '#/components/schemas/type_commons_SearchValue'
- name: searchField
in: query
description: The field to search for data on.
required: false
schema:
$ref: '#/components/schemas/type_commons_SearchField'
- name: byField
in: query
description: If true, the counts for each field will also be returned
required: false
schema:
type: boolean
- name: q
in: query
description: An FFQL query used to filter the result set to be counted
required: false
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
- name: X-Disable-Hooks
in: header
required: true
schema:
type: string
enum:
- 'true'
responses:
'200':
description: Response with status 200
content:
application/json:
schema:
$ref: '#/components/schemas/type_sheets_ListCalculationsResponse'
'404':
description: Error response with status 404
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Errors'
/sheets/{sheetId}/commits:
get:
operationId: get-sheet-commits
summary: Get commit versions for a sheet
description: Returns the commit versions for a sheet
tags:
- subpackage_sheets
parameters:
- name: sheetId
in: path
description: ID of sheet
required: true
schema:
$ref: '#/components/schemas/type_commons_SheetId'
- name: completed
in: query
description: If true, only return commits that have been completed. If false, only return commits that have not been completed. If not provided, return all commits.
required: false
schema:
type: boolean
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
- name: X-Disable-Hooks
in: header
required: true
schema:
type: string
enum:
- 'true'
responses:
'200':
description: Response with status 200
content:
application/json:
schema:
$ref: '#/components/schemas/type_commits_ListCommitsResponse'
/sheets/{sheetId}/lock:
post:
operationId: lock-sheet
summary: Lock a sheet
description: Locks a sheet
tags:
- subpackage_sheets
parameters:
- name: sheetId
in: path
description: ID of sheet
required: true
schema:
$ref: '#/components/schemas/type_commons_SheetId'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
- name: X-Disable-Hooks
in: header
required: true
schema:
type: string
enum:
- 'true'
responses:
'200':
description: Response with status 200
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Success'
'400':
description: Error response with status 400
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Errors'
'404':
description: Error response with status 404
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Errors'
/sheets/{sheetId}/unlock:
post:
operationId: unlock-sheet
summary: Unlock a sheet
description: Removes a lock from a sheet
tags:
- subpackage_sheets
parameters:
- name: sheetId
in: path
description: ID of sheet
required: true
schema:
$ref: '#/components/schemas/type_commons_SheetId'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
- name: X-Disable-Hooks
in: header
required: true
schema:
type: string
enum:
- 'true'
responses:
'200':
description: Response with status 200
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Success'
'400':
description: Error response with status 400
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Errors'
'404':
description: Error response with status 404
content:
application/json:
schema:
$ref: '#/components/schemas/type_commons_Errors'
/sheets/{sheetId}/cells:
get:
operationId: get-cell-values
summary: Get record cells by field
description: Returns record cell values grouped by all fields in the sheet
tags:
- subpackage_sheets
parameters:
- name: sheetId
in: path
description: ID of sheet
required: true
schema:
$ref: '#/components/schemas/type_commons_SheetId'
- name: fieldKey
in: query
required: false
schema:
$ref: '#/components/schemas/type_sheets_FieldKey'
- name: sortField
in: query
required: false
schema:
$ref: '#/components/schemas/type_commons_SortField'
- name: sortDirection
in: query
required: false
schema:
$ref: '#/components/schemas/type_commons_SortDirection'
- name: filter
in: query
required: false
schema:
$ref: '#/components/schemas/type_commons_Filter'
- name: filterField
in: query
description: Name of field by which to filter records
required: false
schema:
$ref: '#/components/schemas/type_commons_FilterField'
- name: pageSize
in: query
description: Number of records to return in a page (default 1000 if pageNumber included)
required: false
schema:
$ref: '#/components/schemas/type_commons_PageSize'
- name: pageNumber
in: query
description: Based on pageSize, which page of records to return
required: false
schema:
$ref: '#/components/schemas/type_commons_PageNumber'
- name: distinct
in: query
description: Must be set to true
required: true
schema:
$ref: '#/components/schemas/type_sheets_Distinct'
- name: includeCounts
in: query
required: false
schema:
$ref: '#/components/schemas/type_sheets_IncludeCounts'
- name: searchValue
in: query
description: A value to find for a given field in a sheet. Wrap the value in "" for exact match
required: false
schema:
$ref: '#/components/schemas/type_commons_SearchValue'
- name: q
in: query
description: An FFQL query used to filter the records to be queried
required: false
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
- name: X-Disable-Hooks
in: header
required: true
schema:
type: string
enum:
- 'true'
responses:
'200':
description: Response with status 200
content:
application/json:
schema:
$ref: '#/components/schemas/type_sheets_CellsResponse'
components:
schemas:
type_property_FieldAppearance:
type: object
properties:
size:
$ref: '#/components/schemas/type_property_FieldSize'
description: Control the appearance of this field when it's displayed in a table or input
title: FieldAppearance
type_commons_PageNumber:
type: integer
description: Based on pageSize, which page of records to return
title: PageNumber
type_commons_Error:
type: object
properties:
key:
type: string
message:
type: string
required:
- message
title: Error
type_property_NumberConfig:
type: object
properties:
decimalPlaces:
type: integer
description: Number of decimal places to round data to
title: NumberConfig
type_commons_VersionId:
type: string
description: Version ID
title: VersionId
type_property_RequiredConstraintConfig:
type: object
properties:
message:
type: string
description: Custom validation message to display when the constraint fails
level:
$ref: '#/components/schemas/type_records_ValidationType'
description: Validation level (error, warn, info). Defaults to error.
title: RequiredConstraintConfig
type_property_ReferenceListPropertyConfig:
type: object
properties:
ref:
type: string
description: Full path reference to a sheet configuration. Must be in the same workbook.
key:
type: string
description: Key of the property to use as the reference key. Defaults to `id`
filter:
$ref: '#/components/schemas/type_property_ReferenceFilter'
description: Optional filter to narrow the set of records in the reference sheet used as valid values
required:
- ref
- key
title: ReferenceListPropertyConfig
type_sheets_SheetResponse:
type: object
properties:
data:
$ref: '#/components/schemas/type_sheets_Sheet'
required:
- data
title: SheetResponse
type_sheets_SheetAccess:
type: string
enum:
- '*'
- add
- edit
- delete
- import
title: SheetAccess
type_property_StringConfig:
type: object
properties:
size:
$ref: '#/components/schemas/type_property_StringConfigOptions'
required:
- size
title: StringConfig
type_commons_ActionMessageType:
type: string
enum:
- error
- info
title: ActionMessageType
type_property_Constraint:
oneOf:
- type: object
properties:
type:
type: string
enum:
- required
description: 'Discriminator value: required'
config:
$ref: '#/components/schemas/type_property_RequiredConstraintConfig'
required:
- type
- type: object
properties:
type:
type: string
enum:
- unique
description: 'Discriminator value: unique'
config:
$ref: '#/components/schemas/type_property_UniqueConstraintConfig'
required:
- type
- type: object
properties:
type:
type: string
enum:
- computed
description: 'Discriminator value: computed'
required:
- type
- type: object
properties:
type:
type: string
enum:
- external
description: 'Discriminator value: external'
validator:
type: string
description:
type: string
description: A full description of what this constraint configuration does
label:
type: string
description: A short description of what this constraint constraint should do, example - values between 1 and 100
config:
description: Any type
required:
- type
- validator
- type: object
properties:
type:
type: string
enum:
- stored
description: 'Discriminator value: stored'
validator:
type: string
description: Must match the constraint validator name.
version:
type: integer
description: The version of the stored constraint to use. (Defaults to version 1.)
description:
type: string
description: A full description of what this constraint configuration does
label:
type: string
description: A short description of what this constraint constraint should do, example - values between 1 and 100
config:
description: Any type
required:
- type
- validator
discriminator:
propertyName: type
title: Constraint
type_records_RecordCounts:
type: object
properties:
total:
type: integer
valid:
type: integer
error:
type: integer
errorsByField:
type: object
additionalProperties:
type: integer
byField:
type: object
additionalProperties:
$ref: '#/components/schemas/type_records_FieldRecordCounts'
description: Counts for valid, error, and total records grouped by field key
required:
- total
- valid
- error
title: RecordCounts
type_commons_SortField:
type: string
description: Name of field by which to sort records
title: SortField
type_commons_ActionMount:
oneOf:
- type: object
properties:
type:
type: string
enum:
- sheet
description: 'Discriminator value: sheet'
slugs:
type: array
items:
type: string
required:
- type
- type: object
properties:
type:
type: string
enum:
- workbook
description: 'Discriminator value: workbook'
slugs:
type: array
items:
type: string
required:
- type
- type: object
properties:
type:
type: string
enum:
- field
description: 'Discriminator value: field'
keys:
type: array
items:
type: string
required:
- type
- type: object
properties:
type:
type: string
enum:
- document
description: 'Discriminator value: document'
required:
- type
- type: object
properties:
type:
type: string
enum:
- file
description: 'Discriminator value: file'
required:
- type
discriminator:
propertyName: type
title: ActionMount
type_sheets_SheetTreatments:
type: string
enum:
- CLIPPED_FROM_SHEET
- ENUM_REFERENCE
title: SheetTreatments
type_commons_Errors:
type: object
properties:
errors:
type: array
items:
$ref: '#/components/schemas/type_commons_Error'
required:
- errors
title: Errors
type_commons_ActionConstraint:
oneOf:
- type: object
properties:
type:
type: string
enum:
- hasAllValid
description: 'Discriminator value: hasAllValid'
ignoreSelection:
type: boolean
required:
- type
- type: object
properties:
type:
type: string
enum:
- hasSelection
description: 'Discriminator value: hasSelection'
required:
- type
- type: object
properties:
type:
# --- truncated at 32 KB (75 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/flatfile/refs/heads/main/openapi/flatfile-subpackage-sheets-api-openapi.yml