Invocation and credentials
Every filemaker operation names one FileMaker file. Protected files also need a FileMaker account. For unattended scripts, store the password in macOS Keychain once, then use --username, --keychain, and --no-prompt on each run.
Invocation
Pass an NDJSON operations file as the final argument:
filemaker --file="/absolute/path/Contacts.fmp12" \
--username="Developer" \
--keychain \
--no-prompt \
ops.ndjson
If you omit the operations file, filemaker reads NDJSON from standard input. See Operation syntax and NDJSON input for the input format.
The --file target can be an absolute or relative path to a local .fmp12 file, or an fmnet:// URL for a hosted file. Relative paths resolve from the current directory. A path beginning with ~ is refused rather than expanded.
Credentials for unattended scripts
Store a protected file's password in Keychain from an interactive terminal:
filemaker --file="/absolute/path/Contacts.fmp12" \
--username="Developer" \
--store-credentials
The command prompts for the password, stores it in macOS Keychain, and exits without opening the file. Subsequent scripts use the first example's --keychain --no-prompt combination.
--no-prompt is the default, but include it in unattended scripts to state that the process must never wait for a credential window. If Keychain has no accepted password, the command reports an authentication failure and exits.
Keychain credentials are associated with the account and the resolved --file target. Use the same fully resolved path or fmnet:// URL every time so the command finds the stored credential.
To remove the stored password, run this from an interactive terminal:
filemaker --file="/absolute/path/Contacts.fmp12" \
--username="Developer" \
--forget-credentials
Warning Do not pass passwords on the command line Avoid --password. Its value can appear in the process list, shell history, logs, and automation configuration. Do not put a FileMaker password in an NDJSON file either.
Credentials for interactive use
When a person is available to respond, combine --keychain with --prompt:
filemaker --file="/absolute/path/Contacts.fmp12" \
--username="Developer" \
--keychain \
--prompt \
ops.ndjson
filemaker tries the stored password first. If it is missing or rejected, a native window asks for the account and password and offers to save the accepted credential. The password does not pass through the command line.
Omit all credential options for an unprotected file. The account used to authenticate is separate from --user-name, which sets the name shown as the modifier in FileMaker Pro.
Built-in help
The installed binary is the authority for the release on the machine:
filemaker --help
filemaker help
filemaker help field create
filemaker help --json --all
-
filemaker --helpdocuments the invocation and global options. -
filemaker helplists the operation catalogs. -
filemaker help <catalog> <verb>documents one operation and the fields it accepts. -
filemaker help --json --allreturns the complete operation reference as JSON for tooling.