{
  "name": "amplify",
  "description": "A set of tools and services to help front-end web and mobile developers build scalable full stack applications",
  "subcommands": [
    {
      "name": "init",
      "description": "Initializes a new project, sets up deployment resources in the cloud, and makes your project ready for Amplify"
    },
    {
      "name": "configure",
      "description": "Configures the attributes of your project for amplify-cli, such as switching front-end framework and adding/removing cloud-provider plugins"
    },
    {
      "name": "push",
      "description": "Provisions cloud resources with the latest local developments",
      "subcommands": [
        {
          "name": "notifications"
        },
        {
          "name": "analytics"
        },
        {
          "name": "api"
        },
        {
          "name": "auth"
        },
        {
          "name": "function"
        },
        {
          "name": "hosting"
        },
        {
          "name": "interactions"
        },
        {
          "name": "predictions"
        },
        {
          "name": "storage"
        },
        {
          "name": "xr"
        }
      ],
      "options": [
        {
          "names": [
            "-y"
          ],
          "description": "Answer all question as 'Yes'"
        }
      ]
    },
    {
      "name": "pull",
      "description": "Fetch upstream backend environment definition changes from the cloud and updates the local environment to match that definition"
    },
    {
      "name": "publish",
      "description": "Executes amplify push, and then builds and publishes client-side application for hosting"
    },
    {
      "name": "serve",
      "description": "Executes amplify push, and then executes the project's start command to test run the client-side application locally"
    },
    {
      "name": "status",
      "description": "Shows the state of local resources not yet pushed to the cloud (Create/Update/Delete)",
      "subcommands": [
        {
          "name": "notifications"
        },
        {
          "name": "analytics"
        },
        {
          "name": "api"
        },
        {
          "name": "auth"
        },
        {
          "name": "function"
        },
        {
          "name": "hosting"
        },
        {
          "name": "interactions"
        },
        {
          "name": "predictions"
        },
        {
          "name": "storage"
        },
        {
          "name": "xr"
        },
        {
          "name": "-v",
          "description": "Shows the detailed verbose diff between local and deployed resources, including cloudformation-diff"
        }
      ]
    },
    {
      "name": "delete",
      "description": "Deletes all of the resources tied to the project from the cloud"
    },
    {
      "name": "add",
      "description": "Adds a resource for an Amplify category in your local backend",
      "subcommands": [
        {
          "name": "notifications"
        },
        {
          "name": "analytics"
        },
        {
          "name": "api"
        },
        {
          "name": "auth"
        },
        {
          "name": "function"
        },
        {
          "name": "hosting"
        },
        {
          "name": "interactions"
        },
        {
          "name": "predictions"
        },
        {
          "name": "storage"
        },
        {
          "name": "xr"
        }
      ]
    },
    {
      "name": "update",
      "description": "Update resource for an Amplify category in your local backend",
      "subcommands": [
        {
          "name": "notifications"
        },
        {
          "name": "analytics"
        },
        {
          "name": "api"
        },
        {
          "name": "auth"
        },
        {
          "name": "function"
        },
        {
          "name": "hosting"
        },
        {
          "name": "interactions"
        },
        {
          "name": "predictions"
        },
        {
          "name": "storage"
        },
        {
          "name": "xr"
        }
      ]
    },
    {
      "name": "remove",
      "description": "Removes a resource for an Amplify category in your local backend",
      "subcommands": [
        {
          "name": "notifications"
        },
        {
          "name": "analytics"
        },
        {
          "name": "api"
        },
        {
          "name": "auth"
        },
        {
          "name": "function"
        },
        {
          "name": "hosting"
        },
        {
          "name": "interactions"
        },
        {
          "name": "predictions"
        },
        {
          "name": "storage"
        },
        {
          "name": "xr"
        }
      ]
    },
    {
      "name": "upgrade",
      "description": "Download and install the latest version of the Amplify CLI"
    },
    {
      "name": "uninstall",
      "description": "Remove all global Amplify configuration files and uninstall the Amplify CLI. This will not delete any Amplify projects"
    },
    {
      "name": "notifications",
      "subcommands": [
        {
          "name": "add",
          "description": "Adds a resource for an Amplify category in your local backend"
        },
        {
          "name": "update",
          "description": "Update resource for an Amplify category in your local backend"
        },
        {
          "name": "remove",
          "description": "Removes a resource for an Amplify category in your local backend"
        },
        {
          "name": "console",
          "description": "Opens the web console for the category"
        },
        {
          "name": "push",
          "description": "Provisions cloud resources with the latest local developments",
          "options": [
            {
              "names": [
                "-y"
              ],
              "description": "Answer all question as 'Yes'"
            }
          ]
        }
      ]
    },
    {
      "name": "analytics",
      "subcommands": [
        {
          "name": "add",
          "description": "Adds a resource for an Amplify category in your local backend"
        },
        {
          "name": "update",
          "description": "Update resource for an Amplify category in your local backend"
        },
        {
          "name": "remove",
          "description": "Removes a resource for an Amplify category in your local backend"
        },
        {
          "name": "console",
          "description": "Opens the web console for the category"
        },
        {
          "name": "push",
          "description": "Provisions cloud resources with the latest local developments",
          "options": [
            {
              "names": [
                "-y"
              ],
              "description": "Answer all question as 'Yes'"
            }
          ]
        }
      ]
    },
    {
      "name": "api",
      "subcommands": [
        {
          "name": "gql-compile",
          "description": "Compiles your GraphQL schema and generates a corresponding cloudformation template"
        },
        {
          "name": "migrate",
          "description": "Migrates GraphQL schemas to the latest GraphQL transformer version"
        },
        {
          "name": "override",
          "description": "Generates overrides file to apply custom modifications to CloudFormation"
        },
        {
          "name": "rebuild",
          "description": "Removes and recreates all DynamoDB tables backing a GraphQL API. Useful for resetting test data during the development phase of an app"
        },
        {
          "name": "add",
          "description": "Adds a resource for an Amplify category in your local backend"
        },
        {
          "name": "update",
          "description": "Update resource for an Amplify category in your local backend"
        },
        {
          "name": "remove",
          "description": "Removes a resource for an Amplify category in your local backend"
        },
        {
          "name": "console",
          "description": "Opens the web console for the category"
        },
        {
          "name": "push",
          "description": "Provisions cloud resources with the latest local developments",
          "options": [
            {
              "names": [
                "-y"
              ],
              "description": "Answer all question as 'Yes'"
            }
          ]
        }
      ]
    },
    {
      "name": "auth",
      "subcommands": [
        {
          "name": "add",
          "description": "Adds a resource for an Amplify category in your local backend"
        },
        {
          "name": "update",
          "description": "Update resource for an Amplify category in your local backend"
        },
        {
          "name": "remove",
          "description": "Removes a resource for an Amplify category in your local backend"
        },
        {
          "name": "console",
          "description": "Opens the web console for the category"
        },
        {
          "name": "push",
          "description": "Provisions cloud resources with the latest local developments",
          "options": [
            {
              "names": [
                "-y"
              ],
              "description": "Answer all question as 'Yes'"
            }
          ]
        }
      ]
    },
    {
      "name": "function",
      "subcommands": [
        {
          "name": "build",
          "description": "Builds all the functions in the project (does an npm install on the functions src directory)"
        },
        {
          "name": "add",
          "description": "Adds a resource for an Amplify category in your local backend"
        },
        {
          "name": "update",
          "description": "Update resource for an Amplify category in your local backend"
        },
        {
          "name": "remove",
          "description": "Removes a resource for an Amplify category in your local backend"
        },
        {
          "name": "console",
          "description": "Opens the web console for the category"
        },
        {
          "name": "push",
          "description": "Provisions cloud resources with the latest local developments",
          "options": [
            {
              "names": [
                "-y"
              ],
              "description": "Answer all question as 'Yes'"
            }
          ]
        }
      ]
    },
    {
      "name": "hosting",
      "subcommands": [
        {
          "name": "add",
          "description": "Adds a resource for an Amplify category in your local backend"
        },
        {
          "name": "update",
          "description": "Update resource for an Amplify category in your local backend"
        },
        {
          "name": "remove",
          "description": "Removes a resource for an Amplify category in your local backend"
        },
        {
          "name": "console",
          "description": "Opens the web console for the category"
        },
        {
          "name": "push",
          "description": "Provisions cloud resources with the latest local developments",
          "options": [
            {
              "names": [
                "-y"
              ],
              "description": "Answer all question as 'Yes'"
            }
          ]
        }
      ]
    },
    {
      "name": "interactions",
      "subcommands": [
        {
          "name": "add",
          "description": "Adds a resource for an Amplify category in your local backend"
        },
        {
          "name": "update",
          "description": "Update resource for an Amplify category in your local backend"
        },
        {
          "name": "remove",
          "description": "Removes a resource for an Amplify category in your local backend"
        },
        {
          "name": "console",
          "description": "Opens the web console for the category"
        },
        {
          "name": "push",
          "description": "Provisions cloud resources with the latest local developments",
          "options": [
            {
              "names": [
                "-y"
              ],
              "description": "Answer all question as 'Yes'"
            }
          ]
        }
      ]
    },
    {
      "name": "predictions",
      "subcommands": [
        {
          "name": "add",
          "description": "Adds a resource for an Amplify category in your local backend"
        },
        {
          "name": "update",
          "description": "Update resource for an Amplify category in your local backend"
        },
        {
          "name": "remove",
          "description": "Removes a resource for an Amplify category in your local backend"
        },
        {
          "name": "console",
          "description": "Opens the web console for the category"
        },
        {
          "name": "push",
          "description": "Provisions cloud resources with the latest local developments",
          "options": [
            {
              "names": [
                "-y"
              ],
              "description": "Answer all question as 'Yes'"
            }
          ]
        }
      ]
    },
    {
      "name": "storage",
      "subcommands": [
        {
          "name": "add",
          "description": "Adds a resource for an Amplify category in your local backend"
        },
        {
          "name": "update",
          "description": "Update resource for an Amplify category in your local backend"
        },
        {
          "name": "remove",
          "description": "Removes a resource for an Amplify category in your local backend"
        },
        {
          "name": "console",
          "description": "Opens the web console for the category"
        },
        {
          "name": "push",
          "description": "Provisions cloud resources with the latest local developments",
          "options": [
            {
              "names": [
                "-y"
              ],
              "description": "Answer all question as 'Yes'"
            }
          ]
        }
      ]
    },
    {
      "name": "xr",
      "subcommands": [
        {
          "name": "add",
          "description": "Adds a resource for an Amplify category in your local backend"
        },
        {
          "name": "update",
          "description": "Update resource for an Amplify category in your local backend"
        },
        {
          "name": "remove",
          "description": "Removes a resource for an Amplify category in your local backend"
        },
        {
          "name": "console",
          "description": "Opens the web console for the category"
        },
        {
          "name": "push",
          "description": "Provisions cloud resources with the latest local developments",
          "options": [
            {
              "names": [
                "-y"
              ],
              "description": "Answer all question as 'Yes'"
            }
          ]
        }
      ]
    },
    {
      "name": "mock",
      "description": "Run mock server for testing categories locally"
    },
    {
      "name": "codegen",
      "description": "Generates GraphQL statements(queries, mutations and eventHandlers) and type annotations"
    },
    {
      "name": "console",
      "description": "Opens the web console for the selected cloud resource"
    },
    {
      "name": "logout",
      "description": "If using temporary cloud provider credentials, this logs out of the account"
    },
    {
      "name": "env",
      "description": "Display all commands available for new Amplify project",
      "subcommands": [
        {
          "name": "add",
          "description": "Adds a new environment"
        },
        {
          "name": "pull",
          "description": "Pulls the current env from the cloud",
          "options": [
            {
              "names": [
                "--restore"
              ],
              "description": "Overwrite your local changes"
            }
          ]
        },
        {
          "name": "checkout",
          "description": "Switches to selected environment",
          "options": [
            {
              "names": [
                "--restore"
              ],
              "description": "Overwrite your local changes"
            }
          ],
          "args": [
            {
              "name": "env-name",
              "description": "Env name"
            }
          ]
        },
        {
          "name": "list",
          "description": "Displays a list of all the environments",
          "options": [
            {
              "names": [
                "--details"
              ],
              "description": "See more details"
            },
            {
              "names": [
                "--json"
              ],
              "description": "Format the output"
            }
          ]
        },
        {
          "name": "get",
          "description": "Displays the environment details",
          "options": [
            {
              "names": [
                "--name"
              ],
              "description": "Mandatory flag",
              "takes_arg": true,
              "arg": {
                "name": "env-name",
                "description": "Env name"
              },
              "is_required": true
            }
          ]
        },
        {
          "name": "import",
          "description": "Imports an environment",
          "options": [
            {
              "names": [
                "--name"
              ],
              "description": "Mandatory flag",
              "takes_arg": true,
              "arg": {
                "name": "env-name",
                "description": "Env name"
              },
              "is_required": true
            },
            {
              "names": [
                "--config"
              ],
              "description": "Specify provider configs",
              "takes_arg": true,
              "is_required": true
            },
            {
              "names": [
                "--awsInfo"
              ],
              "description": "Specify AWS configs",
              "takes_arg": true
            }
          ]
        },
        {
          "name": "remove",
          "description": "Removes an environment",
          "args": [
            {
              "name": "env-name",
              "description": "Env name"
            }
          ]
        }
      ]
    }
  ]
}
