The formdata-dev CLI lets you create accounts, manage forms, and configure destinations from your terminal. It requires no global installation.
The CLI runs via npx -- no global install is needed:
Expected output:
init command to create your account interactively:Your secret key (sk_...) is displayed only once during account creation. It is saved to your credentials file automatically, but keep a backup in a secure location.
Credentials are stored as JSON at:
The file contains:
File permissions are set to 0600 (owner read/write only) automatically on Unix systems.
If you set the XDG_CONFIG_HOME environment variable, the CLI respects it and stores credentials at $XDG_CONFIG_HOME/formdata/credentials instead.
| Command | Description |
|---|---|
npx formdata-dev init |
Create account and store credentials |
npx formdata-dev status |
Account overview with all forms and destinations |
npx formdata-dev keys rotate |
Rotate secret key (invalidates the old key) |
| Command | Description |
|---|---|
npx formdata-dev forms list |
List all forms |
npx formdata-dev forms create |
Create a new form (interactive) |
npx formdata-dev forms get <id> |
Show form details and destinations |
npx formdata-dev forms update <id> |
Update form settings |
npx formdata-dev forms delete <id> |
Delete a form |
| Command | Description |
|---|---|
npx formdata-dev destinations list |
List destinations for a form |
npx formdata-dev destinations add |
Add a destination to a form (interactive) |
npx formdata-dev destinations rm <formId> <destId> |
Remove a destination |
After initializing, verify everything is configured:
Expected output:
| Error | Cause | Fix |
|---|---|---|
Network error: fetch failed |
Cannot reach api.formdata.dev |
Check your internet connection and firewall rules |
Invalid or expired credentials (401) |
Secret key is wrong or was rotated | Run npx formdata-dev init to set up again, or npx formdata-dev keys rotate if you still have a valid key |
slug already taken (409) |
Another account already uses that subdomain slug | Choose a different slug value |
No credentials found |
Missing credentials file | Run npx formdata-dev init to create an account |
Not found (404) |
Form or destination ID does not exist | Run npx formdata-dev forms list to find valid IDs |
Required. Please enter a value. |
A required prompt was left blank | Enter a non-empty value for the field |
On Windows, the chmod 0600 call for the credentials file is a no-op. Make sure your user profile directory has appropriate access controls.