{
  "name": "dcli",
  "description": "Dashlane CLI",
  "subcommands": [
    {
      "name": "sync",
      "aliases": [
        "s"
      ],
      "description": "Manually synchronize the local vault with Dashlane"
    },
    {
      "name": "read",
      "description": "Retrieve a secret from the local vault via its path",
      "args": [
        {
          "name": "path",
          "description": "Path to the secret (dl://<title>/<field> or dl://<id>/<field>)"
        }
      ]
    },
    {
      "name": "exec",
      "description": "Execute a command with secrets injected into the environment variables (-- <command>)",
      "args": [
        {
          "name": "command"
        }
      ]
    },
    {
      "name": "inject",
      "description": "Inject secrets into a templated string or file (uses stdin and stdout by default)",
      "options": [
        {
          "names": [
            "-i",
            "--in"
          ],
          "description": "Input file of a template to inject the credential into",
          "takes_arg": true,
          "arg": {
            "name": "file",
            "template": "filepaths"
          }
        },
        {
          "names": [
            "-o",
            "--out"
          ],
          "description": "Output file to write the injected template to",
          "takes_arg": true,
          "arg": {
            "name": "file",
            "template": "filepaths"
          }
        }
      ]
    },
    {
      "name": "password",
      "aliases": [
        "p"
      ],
      "description": "Retrieve a password from the local vault and copy it to the clipboard",
      "options": [
        {
          "names": [
            "-o",
            "--output"
          ],
          "description": "How to print the passwords. The JSON option outputs all the matching credentials",
          "takes_arg": true,
          "arg": {
            "name": "type",
            "suggestions": [
              "clipboard",
              "password",
              "json"
            ]
          }
        }
      ],
      "args": [
        {
          "name": "filters",
          "description": "Filter credentials based on any parameter using <param>=<value>; if <param> is not specified in the filter, will default to url and title",
          "is_variadic": true
        }
      ]
    },
    {
      "name": "otp",
      "aliases": [
        "o"
      ],
      "description": "Retrieve an OTP code from local vault and copy it to the clipboard",
      "options": [
        {
          "names": [
            "--print"
          ],
          "description": "Prints just the OTP code, instead of copying it to the clipboard"
        }
      ],
      "args": [
        {
          "name": "filters",
          "description": "Filter credentials based on any parameter using <param>=<value>; if <param> is not specified in the filter, will default to url and title",
          "is_variadic": true
        }
      ]
    },
    {
      "name": "note",
      "aliases": [
        "n"
      ],
      "description": "Retrieve a secure note from the local vault and open it",
      "options": [
        {
          "names": [
            "-o",
            "--output"
          ],
          "description": "How to print the notes. The JSON option outputs all the matching notes",
          "takes_arg": true,
          "arg": {
            "name": "type",
            "suggestions": [
              "text",
              "json"
            ]
          }
        }
      ],
      "args": [
        {
          "name": "filters",
          "description": "Filter notes based on any parameter using <param>=<value>; if <param> is not specified in the filter, will default to title only",
          "is_variadic": true
        }
      ]
    },
    {
      "name": "accounts",
      "aliases": [
        "a"
      ],
      "description": "Manage your accounts connected to the CLI",
      "subcommands": [
        {
          "name": "whoami",
          "description": "Prints the login email of the account currently in use"
        },
        {
          "name": "help",
          "description": "Display help for command",
          "args": [
            {
              "name": "command"
            }
          ]
        }
      ]
    },
    {
      "name": "devices",
      "aliases": [
        "d"
      ],
      "description": "Operations on devices",
      "subcommands": [
        {
          "name": "list",
          "description": "Lists all registered devices that can access your account",
          "options": [
            {
              "names": [
                "--json"
              ],
              "description": "Output in JSON format"
            }
          ]
        },
        {
          "name": "remove",
          "description": "De-registers a list of devices. De-registering the CLI will implies doing a \"dcli logout\"",
          "options": [
            {
              "names": [
                "--all"
              ],
              "description": "Remove all devices including this one (dangerous)"
            },
            {
              "names": [
                "--others"
              ],
              "description": "Remove all other devices"
            }
          ],
          "args": [
            {
              "name": "device ids",
              "description": "Ids of the devices to remove",
              "is_variadic": true
            }
          ]
        },
        {
          "name": "register",
          "description": "Registers a new device to be used in non-interactive mode",
          "options": [
            {
              "names": [
                "--json"
              ],
              "description": "Output in JSON format"
            }
          ],
          "args": [
            {
              "name": "device name",
              "description": "Name of the device to register"
            }
          ]
        },
        {
          "name": "help",
          "description": "Display help for command",
          "args": [
            {
              "name": "command"
            }
          ]
        }
      ]
    },
    {
      "name": "team",
      "aliases": [
        "t"
      ],
      "description": "Team related commands",
      "subcommands": [
        {
          "name": "credentials",
          "aliases": [
            "c"
          ],
          "description": "Team credentials operations",
          "subcommands": [
            {
              "name": "generate",
              "description": "Generate new team credentials",
              "options": [
                {
                  "names": [
                    "--json"
                  ],
                  "description": "Output in JSON format"
                }
              ]
            },
            {
              "name": "list",
              "description": "List all team credentials",
              "options": [
                {
                  "names": [
                    "--json"
                  ],
                  "description": "Output in JSON format"
                }
              ]
            },
            {
              "name": "revoke",
              "description": "Revoke credentials by access key",
              "args": [
                {
                  "name": "accessKey",
                  "description": "Access key of the credentials to revoke"
                }
              ]
            },
            {
              "name": "help",
              "description": "Display help for command",
              "args": [
                {
                  "name": "command"
                }
              ]
            }
          ]
        },
        {
          "name": "members",
          "aliases": [
            "m"
          ],
          "description": "List team members",
          "options": [
            {
              "names": [
                "--csv"
              ],
              "description": "Output in CSV format"
            },
            {
              "names": [
                "--human-readable"
              ],
              "description": "Output dates in human readable format"
            }
          ],
          "args": [
            {
              "name": "page",
              "description": "Page number"
            },
            {
              "name": "limit",
              "description": "Limit of members per page"
            }
          ]
        },
        {
          "name": "logs",
          "aliases": [
            "l"
          ],
          "description": "List audit logs",
          "options": [
            {
              "names": [
                "--start"
              ],
              "description": "Start timestamp in ms",
              "takes_arg": true,
              "arg": {
                "name": "start"
              }
            },
            {
              "names": [
                "--end"
              ],
              "description": "End timestamp in ms (use \"now\" to get the current timestamp)",
              "takes_arg": true,
              "arg": {
                "name": "end"
              }
            },
            {
              "names": [
                "--type"
              ],
              "description": "Log type",
              "takes_arg": true,
              "arg": {
                "name": "type"
              }
            },
            {
              "names": [
                "--category"
              ],
              "description": "Log category",
              "takes_arg": true,
              "arg": {
                "name": "category"
              }
            },
            {
              "names": [
                "--csv"
              ],
              "description": "Output in CSV format"
            },
            {
              "names": [
                "--human-readable"
              ],
              "description": "Output dates in human readable format"
            }
          ]
        },
        {
          "name": "report",
          "aliases": [
            "r"
          ],
          "description": "Get team report",
          "args": [
            {
              "name": "days",
              "description": "Number of days in history"
            }
          ]
        },
        {
          "name": "help",
          "description": "Display help for command",
          "args": [
            {
              "name": "command"
            }
          ]
        }
      ]
    },
    {
      "name": "configure",
      "aliases": [
        "c"
      ],
      "description": "Configure the CLI",
      "subcommands": [
        {
          "name": "disable-auto-sync",
          "description": "Disable automatic synchronization which is done once per hour (default: false)",
          "args": [
            {
              "name": "boolean",
              "suggestions": [
                "true",
                "false"
              ]
            }
          ]
        },
        {
          "name": "save-master-password",
          "description": "Should the encrypted master password be saved and the OS keychain be used (default: true)",
          "args": [
            {
              "name": "boolean",
              "suggestions": [
                "true",
                "false"
              ]
            }
          ]
        },
        {
          "name": "help",
          "description": "Display help for command",
          "args": [
            {
              "name": "command"
            }
          ]
        }
      ]
    },
    {
      "name": "backup",
      "description": "Backup your local vault (will use the current directory by default)",
      "options": [
        {
          "names": [
            "--directory"
          ],
          "description": "Output directory of the backup (\".\" by default)",
          "takes_arg": true,
          "arg": {
            "name": "directory",
            "template": "folders"
          }
        },
        {
          "names": [
            "--filename"
          ],
          "description": "Filename of the backup (\"dashlane-backup-<unix_timestamp>.db by default\")",
          "takes_arg": true,
          "arg": {
            "name": "filename"
          }
        }
      ]
    },
    {
      "name": "logout",
      "description": "Logout and clean your local database and OS keychain"
    },
    {
      "name": "help",
      "description": "Display help for command",
      "args": [
        {
          "name": "command"
        }
      ]
    }
  ],
  "options": [
    {
      "names": [
        "-h",
        "--help"
      ],
      "description": "Display help for command"
    },
    {
      "names": [
        "-V",
        "--version"
      ],
      "description": "Output the version number"
    },
    {
      "names": [
        "--debug"
      ],
      "description": "Print debug messages"
    }
  ]
}
