/** * FileMaker Node - Version 1 * Retrieve data from the FileMaker data API */ export interface FilemakerV1Params { action?: 'create' | 'delete' | 'duplicate' | 'edit' | 'find' | 'records' | 'record' | 'performscript' | Expression; /** * FileMaker Layout Name. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ layout?: string | Expression; /** * Internal Record ID returned by get (recordid) * @displayOptions.show { action: ["record", "edit", "delete", "duplicate"] } */ recid?: number | Expression; /** * The record number of the first record in the range of records * @displayOptions.show { action: ["find", "records"] } * @default 1 */ offset?: number | Expression; /** * Max number of results to return * @displayOptions.show { action: ["find", "records"] } * @default 100 */ limit?: number | Expression; /** * Whether to get portal data as well * @displayOptions.show { action: ["record", "records", "find"] } * @default false */ getPortals?: boolean | Expression; /** * 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. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. * @displayOptions.show { action: ["record", "records", "find"], getPortals: [true] } * @default [] */ portals?: string | Expression; /** * Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a> * @displayOptions.show { action: ["find"] } */ responseLayout?: string | Expression; /** * Queries * @displayOptions.show { action: ["find"] } * @default {} */ queries?: { /** Query */ query?: Array<{ /** Field Name * @default {} */ fields?: { /** Field */ field?: Array<{ /** Search Field. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ name?: string | Expression; /** Value to search */ value?: string | Expression | PlaceholderValue; }>; }; /** Omit * @default false */ omit?: boolean | Expression; }>; }; /** * Whether to sort data * @displayOptions.show { action: ["find", "record", "records"] } * @default false */ setSort?: boolean | Expression; /** * Sort rules * @displayOptions.show { setSort: [true], action: ["find", "records"] } * @default {} */ sortParametersUi?: { /** Rules */ rules?: Array<{ /** Field Name. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ name?: string | Expression; /** Sort order * @default ascend */ value?: 'ascend' | 'descend' | Expression; }>; }; /** * Whether to define a script to be run before the action specified by the API call and after the subsequent sort * @displayOptions.show { action: ["find", "record", "records"] } * @default false */ setScriptBefore?: boolean | Expression; /** * The name of the FileMaker script to be run after the action specified by the API call and after the subsequent sort. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. * @displayOptions.show { action: ["find", "record", "records"], setScriptBefore: [true] } */ scriptBefore?: string | Expression; /** * A parameter for the FileMaker script * @displayOptions.show { action: ["find", "record", "records"], setScriptBefore: [true] } */ scriptBeforeParam?: string | Expression | PlaceholderValue; /** * Whether to define a script to be run after the action specified by the API call but before the subsequent sort * @displayOptions.show { action: ["find", "record", "records"] } * @default false */ setScriptSort?: boolean | Expression; /** * The name of the FileMaker script to be run after the action specified by the API call but before the subsequent sort. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. * @displayOptions.show { action: ["find", "record", "records"], setScriptSort: [true] } */ scriptSort?: string | Expression; /** * A parameter for the FileMaker script * @displayOptions.show { action: ["find", "record", "records"], setScriptSort: [true] } */ scriptSortParam?: string | Expression | PlaceholderValue; /** * Whether to define a script to be run after the action specified by the API call but before the subsequent sort * @displayOptions.show { action: ["find", "record", "records"] } * @default false */ setScriptAfter?: boolean | Expression; /** * The name of the FileMaker script to be run after the action specified by the API call and after the subsequent sort. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. * @displayOptions.show { action: ["find", "record", "records"], setScriptAfter: [true] } */ scriptAfter?: string | Expression; /** * A parameter for the FileMaker script * @displayOptions.show { action: ["find", "record", "records"], setScriptAfter: [true] } */ scriptAfterParam?: string | Expression | PlaceholderValue; /** * The last modification ID. When you use modId, a record is edited only when the modId matches. * @displayOptions.show { action: ["edit"] } */ modId?: number | Expression; /** * Fields to define * @displayOptions.show { action: ["create", "edit"] } * @default {} */ fieldsParametersUi?: { /** Fields */ fields?: Array<{ /** Field Name. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ name?: string | Expression; /** Value */ value?: string | Expression | PlaceholderValue; }>; }; /** * The name of the FileMaker script to be run. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. * @displayOptions.show { action: ["performscript"] } */ script?: string | Expression; /** * A parameter for the FileMaker script * @displayOptions.show { action: ["performscript"] } */ scriptParam?: string | Expression | PlaceholderValue; } export interface FilemakerV1Credentials { fileMaker: CredentialReference; } interface FilemakerV1NodeBase { type: 'n8n-nodes-base.filemaker'; version: 1; credentials?: FilemakerV1Credentials; } export type FilemakerV1ParamsNode = FilemakerV1NodeBase & { config: NodeConfig; }; export type FilemakerV1Node = FilemakerV1ParamsNode;