The FileMaker Data API
Retrieves information about the Claris FileMaker Server or Claris FileMaker Cloud host
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
Successful request
Retrieve a list of hosted FileMaker databases.
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
Authorization | string Provide the FileMaker authentication credentials via HTTP Basic Authentication of the form "Authorization: Basic ABCDEFGHIJK" where ABCDEFGHIJK is the base 64 encoding of the string 'username:password' |
X-FM-Data-OAuth-Request-Id | string Provide the OAuth login Request ID |
X-FM-Data-OAuth-Identifier | string Provide the OAuth login Identifier |
Successful request
Retrieves a list of layouts for a FileMaker database
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
X-FM-Data-OAuth-Request-Id | string Provide the OAuth login Request ID |
X-FM-Data-OAuth-Identifier | string Provide the OAuth login Identifier |
Successful request
Retrieves a list of scripts for a FileMaker database
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
X-FM-Data-OAuth-Request-Id | string Provide the OAuth login Request ID |
X-FM-Data-OAuth-Identifier | string Provide the OAuth login Identifier |
Successful request
Retrieves layout metadata for a FileMaker database.
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
layout required | string Layout |
recordId | string Record ID to retrieve related value list data |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
Successful request
Retrieve layout metadata (old version)
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
layout required | string Layout |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
Successful request
Login to a FileMaker database.
Provide either an 'Authorization' header parameter OR BOTH 'X-FM-Data-OAuth-Request-Id' and 'X-FM-Data-OAuth-Identifier' header parameters.
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
Authorization | string Provide the FileMaker authentication credentials via HTTP Basic Authentication of the form "Authorization: Basic ABCDEFGHIJK" where ABCDEFGHIJK is the base 64 encoding of the string 'username:password' |
X-FM-Data-OAuth-Request-Id | string Provide the OAuth login Request ID |
X-FM-Data-OAuth-Identifier | string Provide the OAuth login Identifier |
Content-Type required | string Value: "application/json" HTTP Header Content-Type: application/json |
Parameters for a login request.
fmDataSource | Array of objects External FileMaker Data Source Authentication: {"fmDataSource": [ { "database": "<databaseName>", "username" : "<username>", "password" : "<password>", "oAuthRequestId" : " "database": is a string with the name of the external database file. "username": is a string with the username to login to solution. "password": is a string with the password to login to solution. "oAuthRequestId": is the X-FMS-Request-ID header value returned from '/oauth/getoauthurl' in FileMaker Server OAuth workflow. "oAuthIdentifier": is the URL query value for "identifier" in FileMaker Server OAuth workflow. (NOTE: If both "oAuthRequestId" and "oAuthIdentifier" are supplied, FileMaker Data API will perform an OAuth login.) (NOTE: This feature only supports databases hosted on the same FileMaker Server.) |
Successful login
Log out of a FileMaker database
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
sessionToken required | string Session Token |
Successful logout
Validate session token
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
Successful request
Get records
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
layout required | string Layout |
script | string The name of the FileMaker script to be run after the action specified by the API call and after the subsequent sort. |
script.param | string A parameter for the FileMaker script named by script. |
script.presort | string The name of the FileMaker script to be run after the action specified by the API call but before the subsequent sort. |
script.presort.param | string A parameter for the FileMaker script named by script.presort. |
script.prerequest | string The name of the FileMaker script to be run before the action specified by the API call and the subsequent sort. |
script.prerequest.param | string A parameter for the FileMaker script named by script.prerequest. |
layout.response | string The layout to switch to when processing response. |
portal | Array of strings The portal result set to return. Use the portal object name or portal table name. If this parameter is omitted, the API will return all portal objects and records in the layout. For best performance, pass the portal object name or portal table name. |
_offset | string The record number of the first record in the range of records. |
_limit | string The maximum number of records that should be returned. If not specified, the default value is 100. |
_sort | string Field name and sort order of the result set. The order in which the criteria are specified determines the precedence. Records are returned in the original creation order if a sort order is not provided. The default sort order is "ascend". |
dateformats | string The date format. Use 0 for US, 1 for file locale, or 2 for ISO8601. If not specified, the default value is 0. |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
Record results
Create a new record
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
layout required | string Layout |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
Content-Type required | string Value: "application/json" HTTP Header Content-Type: application/json |
Parameters for a create record request.
fieldData required | object A JSON object that contains field-value pairs for fields in the target layout. If "{}" is provided as a data value, an empty record is created with any auto enter values defined in the current table’s schema. |
portalData | object A JSON object that contains portal row values in the target layout. The format mirrors the portalData format from Get Records. |
script | string The name of the FileMaker script to be run after the action specified by the API call and after the subsequent sort. |
script.param | string The text string to use as a parameter for the script that was named by script. |
script.prerequest | string The name of the script to be run before the action specified by the API call and the subsequent sort. |
script.prerequest.param | string The text string to use as a parameter for the script that was named by script.prerequest. |
script.presort | string The name of the script to be run after the action specified by the API call but before the subsequent sort. |
script.presort.param | string The text string to use as a parameter for the script that was named by script.presort. |
Successful record creation
Get a record by recordId
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
layout required | string Layout |
recordId required | string Record ID |
script | string The name of the FileMaker script to be run after the action specified by the API call and after the subsequent sort. |
script.param | string A parameter for the FileMaker script named by script. |
script.presort | string The name of the FileMaker script to be run after the action specified by the API call but before the subsequent sort. |
script.presort.param | string A parameter for the FileMaker script named by script.presort. |
script.prerequest | string The name of the FileMaker script to be run before the action specified by the API call and the subsequent sort. |
script.prerequest.param | string A parameter for the FileMaker script named by script.prerequest. |
layout.response | string The layout to switch to when processing response. |
portal | Array of strings The portal result set to return. Use the portal object name or portal table name. If this parameter is omitted, the API will return all portal objects and records in the layout. For best performance, pass the portal object name or portal table name. |
dateformats | string The date format. Use 0 for US, 1 for file locale, or 2 for ISO8601. If not specified, the default value is 0. |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
single record
Edit a record by recordId
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
layout required | string Layout |
recordId required | string Record ID |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
Content-Type required | string Value: "application/json" HTTP Header Content-Type: application/json |
Parameters for an edit record request.
fieldData | object A JSON object that contains field-value pairs for fields in the target layout. If "{}" is provided as a data value, an empty record is created with any auto enter values defined in the current table’s schema. |
portalData | object A JSON object that contains portal row values in the target layout. The format mirrors the portalData format from Get Records. |
modId | string The last modification ID. When you use modId, a record is edited only when the modId matches. |
script | string The name of the FileMaker script to be run after the action specified by the API call and after the subsequent sort. |
script.param | string The text string to use as a parameter for the script that was named by script. |
script.prerequest | string The name of the script to be run before the action specified by the API call and the subsequent sort. |
script.prerequest.param | string The text string to use as a parameter for the script that was named by script.prerequest. |
script.presort | string The name of the script to be run after the action specified by the API call but before the subsequent sort. |
script.presort.param | string The text string to use as a parameter for the script that was named by script.presort. |
Successful result
Delete a record by recordId
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
layout required | string Layout |
recordId required | string Record ID |
script | string The name of the FileMaker script to be run after the action specified by the API call and after the subsequent sort. |
script.param | string A parameter for the FileMaker script named by script. |
script.presort | string The name of the FileMaker script to be run after the action specified by the API call but before the subsequent sort. |
script.presort.param | string A parameter for the FileMaker script named by script.presort. |
script.prerequest | string The name of the FileMaker script to be run before the action specified by the API call and the subsequent sort. |
script.prerequest.param | string A parameter for the FileMaker script named by script.prerequest. |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
Successful result
Duplicate a record by recordId
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
layout required | string Layout |
recordId required | string Record ID |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
Content-Type required | string Value: "application/json" HTTP Header Content-Type: application/json |
Parameters for a duplicate record request.
script | string The name of the FileMaker script to be run after the action specified by the API call and after the subsequent sort. |
script.param | string The text string to use as a parameter for the script that was named by script. |
script.prerequest | string The name of the script to be run before the action specified by the API call and the subsequent sort. |
script.prerequest.param | string The text string to use as a parameter for the script that was named by script.prerequest. |
script.presort | string The name of the script to be run after the action specified by the API call but before the subsequent sort. |
script.presort.param | string The text string to use as a parameter for the script that was named by script.presort. |
Successful result
Find Records in a Layout
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
layout required | string Layout |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
Content-Type required | string Value: "application/json" HTTP Header Content-Type: application/json |
Parameters for a find request.
query required | Array of objects Fields and Find criteria in the following query schema: [ { "<fieldName>": "<fieldValue>", "omit" : "true" ... }, ...] |
sort | Array of objects The sort field specification. Example: [ { "fieldName": "LastName", "sortOrder": "ascend" }, { "fieldName": "FirstName", "sortOrder": "ascend" } ] |
script | string The name of the FileMaker script to be run after the action specified by the API call and after the subsequent sort. |
script.param | string The text string to use as a parameter for the script that was named by script. |
script.prerequest | string The name of the script to be run before the action specified by the API call and the subsequent sort. |
script.prerequest.param | string The text string to use as a parameter for the script that was named by script.prerequest. |
script.presort | string The name of the script to be run after the action specified by the API call but before the subsequent sort. |
script.presort.param | string The text string to use as a parameter for the script that was named by script.presort. |
offset | integer or string The record number of the first record in the range of records. |
limit | integer or string The maximum number of records that should be returned. If not specified, the default value is 100. |
layout.response | string The layout to switch to when processing response. |
portal | Array of strings The portal result set to return. Use portal object name or portal table name. If this parameter is omitted, the API will return all portal objects and records in the layout. For best performance, pass the portal object name or portal table name. |
dateformats | integer or string The date format. Use 0 for US, 1 for file locale, or 2 for ISO8601. If not specified, the default value is 0. |
search results matching criteria
Execute Script
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
layout required | string Layout |
scriptName required | string The name of the FileMaker script to be run. |
script.param | string A parameter for the FileMaker script. |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
Successful request
Upload a single file into a container field (default repetition number)
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
layout required | string Layout |
recordId required | string Record ID |
containerFieldName required | string Container Field Name |
modId | string Modification ID of record |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
upload required | string <binary> File to upload into container field |
search results matching criteria
Upload a single file into the specified repetition of a container field
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
layout required | string Layout |
recordId required | string Record ID |
containerFieldName required | string Container Field Name |
containerFieldRepetition required | string Container Field Repetition |
modId | string Modification ID of record |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
upload required | string <binary> File to upload into container field |
search results matching criteria
Set Global Fields
version required | string Enum: "v1" "v2" "vLatest" FileMaker Data API version requested, currently 'v1', 'v2' or 'vLatest' |
database required | string Database |
Authorization required | string Provide a session token as 'Bearer sessionToken'. |
Content-Type required | string Value: "application/json" HTTP Header Content-Type: application/json |
File to upload into container field
globalFields | object A JSON object that contains field-value pairs to set global fields in a target database. Field names must be Fully Qualified. |
set global fields response