---
title: "Create a product"
url: "https://docs.alisx.com/how-to/alis-build/create-a-product/"
---
# Create a product

Add a product to a build environment you administer, or ask its administrators for one. A product is a self-contained feature set with its own Google Cloud project, build repository and deployment environments; it is where services live.

## Prerequisites

- Builder or administrator access to a build environment. Check with `alis org list`.
- A two-letter product id and a display name.

## Create a product as an administrator

=== "CLI"

    ```bash title="Terminal"
    alis product new acme.sh --display-name "Shop"
    ```

    Provisioning is a long-running operation: the product's cloud project, repositories and a development environment are created. Progress streams until it is done; add `--async` to get the operation name and resume with `alis operations wait <name>`. You become an administrator of the new product.

=== "Console"

    1. Open **Build environments** in the console and select your build environment.
    2. Choose **New product**.
    3. Enter the identifier, the display name and the region, then confirm.

## Request a product when you are not an administrator

```bash title="Terminal"
alis product request acme --display-name "Shop" --reason "Storefront and orders API"
```

The request opens a conversation with the build environment's administrators, who approve or decline it. Approval provisions the product with a development environment and makes you its administrator. Add `.sh` to the reference to propose the id; leave it out to let the administrators choose one.

If you cannot open the build environment at all yet, request access and the product in one go:

```bash title="Terminal"
alis org join acme --product-name "Shop" --product-id sh
```

## Clone the repositories

```bash title="Terminal"
alis clone acme.sh
```

This clones the build environment's definitions repo to `~/alis.build/acme/define` and the product's build repo to `~/alis.build/acme/build/sh`, both configured with the Alis git credential helper.

## Give teammates access

```bash title="Terminal"
alis product share acme.sh --email pat@example.com --role builder
```

Use `--role admin` for administrators and `--remove` to revoke. Someone who is not yet on Alis Build is invited first with `--invite <given-name>`. Run the command without flags to list who has access. The console shows the same on the product's **Sharing** page.

## Rename a product

```bash title="Terminal"
alis product rename acme.sh --display-name "Shopfront"
```

Only the display label changes; the id, repositories and cloud resources stay as they are.

## Related

- [Organisations, products and services](https://docs.alisx.com/explanation/organisations-products-services.md)
- [Create a service](https://docs.alisx.com/how-to/alis-build/create-a-service.md)
