> ## Documentation Index
> Fetch the complete documentation index at: https://getfloo.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# apps

> CLI reference: manage apps, explicit app invitations and members, passwords, and GitHub connections

Manage your deployed apps.

## list

List all apps on your account.

```bash theme={null}
floo apps list
```

```
Your apps:
  Name          Status  Runtime   URL
  my-app        live    nodejs    https://my-app.on.getfloo.com
  api-service   live    python    https://api-service.on.getfloo.com
  landing       stopped static    https://landing.on.getfloo.com
```

### Flags

| Flag           | Description      | Default |
| -------------- | ---------------- | ------- |
| `--page N`     | Page number      | `1`     |
| `--per-page N` | Results per page | `50`    |

### JSON output

```json theme={null}
{
  "success": true,
  "data": {
    "apps": [
      {
        "id": "a1b2c3d4-...",
        "name": "my-app",
        "status": "live",
        "url": "https://my-app.on.getfloo.com",
        "runtime": "nodejs",
        "created_at": "2026-02-18T10:30:00Z"
      }
    ]
  }
}
```

***

## show

Show details for a specific app. Accepts app name or UUID.

```bash theme={null}
floo apps show my-app
```

```
App: my-app
  Status:   live
  URL:      https://my-app.on.getfloo.com
  Runtime:  nodejs (Next.js)
  Created:  2026-02-18 10:30
```

### JSON output

```json theme={null}
{
  "success": true,
  "data": {
    "id": "a1b2c3d4-...",
    "name": "my-app",
    "status": "live",
    "url": "https://my-app.on.getfloo.com",
    "runtime": "nodejs",
    "created_at": "2026-02-18T10:30:00Z"
  }
}
```

***

## delete

Delete an app and tear down its infrastructure.

```bash theme={null}
floo apps delete my-app
```

```
This permanently deletes my-app and all its data. Type the app name to confirm: my-app
Deleted my-app
```

Deleting an app is **tier-3 destructive**. Interactive mode makes you type the app name to confirm; there is no `--force` or `--yes` shortcut.

### Flags

| Flag                              | Description                                                                                                                                                                                      |
| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `--yes-i-know-this-destroys-data` | Skip the name-confirmation prompt. Required in non-interactive contexts (CI, `--json`, pipes). Deliberately verbose — destroying an app and its data must be an explicit, acknowledged decision. |

### JSON output

```json theme={null}
{
  "success": true,
  "data": {
    "id": "a1b2c3d4-..."
  }
}
```

***

## password

Show the shared password for a password-protected app.

```bash theme={null}
floo apps password my-app
```

***

## invite

Invite a floo identity to an `accounts`-mode app with an explicit tenant role.

```bash theme={null}
floo apps invite teammate@acme.com --role member --app my-app
```

### Arguments

| Argument | Description             |
| -------- | ----------------------- |
| `EMAIL`  | Email address to invite |

### Flags

| Flag          | Description                                                          |
| ------------- | -------------------------------------------------------------------- |
| `--app APP`   | App name or UUID (inferred from config if omitted)                   |
| `--role ROLE` | Tenant role after acceptance: `member` or `admin` (default `member`) |

The raw invitation URL is returned exactly once and treated as a secret. It is
redacted from JSON and omitted from human output unless you pass the global
`--reveal-secrets` flag. The durable invitation remains valid if email delivery
fails; resend with `--reveal-secrets` to rotate and copy a fresh URL. App access
never grants dashboard or deployment access. For that boundary, see
[Team Access](/docs/guides/team-access).

***

## invites

List invitation history for an app.

```bash theme={null}
floo apps invites --app my-app
```

List responses include `next_cursor` when another page exists. Continue with
`--cursor NEXT_CURSOR`; `floo apps members` accepts the same flag.

Rotate and resend a pending invitation, or revoke it:

```bash theme={null}
floo apps invite-resend INVITE_ID --app my-app
floo apps invite-revoke INVITE_ID --app my-app
```

Resending invalidates the previous URL. Revoked and expired invitations cannot
be accepted.

***

## members

List active explicit app members:

```bash theme={null}
floo apps members --app my-app
```

Change a tenant role or remove app access:

```bash theme={null}
floo apps member-role MEMBERSHIP_ID admin --app my-app
floo apps member-remove MEMBERSHIP_ID --app my-app
```

Changing a role revokes active app sessions that carry the old role. Removing
a member also revokes that person's app sessions and user-bound app API keys.

***

## github

Manage GitHub integration for auto-deploy on push. See the full reference at [GitHub Integration](/docs/cli/github).

```bash theme={null}
floo apps github connect owner/repo --app my-app
floo apps github disconnect --app my-app
floo apps github status --app my-app
```

***

## Errors

| Code                | Meaning                                                  |
| ------------------- | -------------------------------------------------------- |
| `NOT_AUTHENTICATED` | Run `floo auth login` first                              |
| `APP_NOT_FOUND`     | No app with that name or ID. Check with `floo apps list` |
