---
title: blossom app:create
url: "/docs/reference/cli/app/create/"
canonical_url: https://docs.blossom88.com/docs/reference/cli/app/create/
markdown_url: https://docs.blossom88.com/docs/reference/cli/app/create.md
summary: Create an app
categories:
- cli
- reference
---

# blossom app:create

Create an app

## Usage

    blossom app:create [--location LOCATION] [--data DATA]

## Flags

| Flag | Description |
| --- | --- |
| `--location` | Location id (defaults to profile or Account default) |
| `--data, -d` | YAML or JSON data, a path to a data file, or an HTTP(S) URL |

Examples:

    blossom app:init
    blossom app:create --data app.yml
    blossom app:create --data https://example.com/app.yml
    blossom app:create -d '{"app":{"name":"demo"}}'

app.yml:

```yaml
app:
  name: demo
```

Creates an app in the current Blossom Account. `--data` accepts a file path,
an HTTP(S) URL, or inline YAML/JSON. All forms use the same nested resource
document shape.

Local files and inline data support `$VAR` and `${VAR}` substitution from
`.env`, `BLOSSOM_VARS_FILE`, and the process environment. See
`blossom help:data`.

Run `blossom app:init` to create a starter app.yml file.

Use file data when the payload is edited by a person or checked into a script
repository. Use URL data for demos and tutorials with a ready-to-run payload.
Use inline data when the payload is small.

After creating an app, list apps to get the new resource id:

    blossom app:list
    BLOSSOM_OUTPUT=json blossom app:list

Full guide:
https://docs.blossom88.com/learn/getting-started/apps/

Choose a saved destination with `--location location-...` or
`location_id` in the payload. Otherwise the profile's `location_id`, then
the Account default applies. Use `blossom location:list` to see destinations.
An explicit payload and `--location` must agree.
