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

# Quickstart

> Create, download, use, and delete a Brand Skill.

This walkthrough creates one Brand Skill from a website and PDF, downloads the
completed folder, and removes Bloom's retained copy.

## Before you start

You need:

* the dedicated Bloom API key issued for your integration;
* a public website URL, a temporary public PDF URL, or both; and
* a server-side environment where the API key remains secret.

```bash theme={null}
export BLOOM_API_KEY=bloom_sk_...
```

## 1. Create the Brand Skill

This example combines a website and PDF in one Brand Skill:

```bash theme={null}
curl --request POST "https://www.trybloom.ai/api/v1/brand-skills" \
  --header "x-api-key: $BLOOM_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
    "brandName": "Acme",
    "sources": [
      {
        "kind": "website",
        "url": "https://acme.com"
      },
      {
        "kind": "pdf",
        "url": "https://uploads.example.com/acme-brand-guide.pdf",
        "filename": "acme-brand-guide.pdf"
      }
    ]
  }'
```

Bloom downloads the PDF during this request, queues the build, and returns
`202 Accepted`:

```json theme={null}
{
  "data": {
    "id": "00000000-0000-4000-8000-000000000000",
    "status": "pending"
  }
}
```

Save `data.id` in your job record:

```bash theme={null}
export BRAND_SKILL_ID=00000000-0000-4000-8000-000000000000
```

The [create reference](/api-reference/brand-skills/create-a-brand-skill) owns
the exact source schemas and limits.

## 2. Check the build

```bash theme={null}
curl "https://www.trybloom.ai/api/v1/brand-skills/$BRAND_SKILL_ID" \
  --header "x-api-key: $BLOOM_API_KEY"
```

Repeat this request until `data.status` is `completed` or `failed`. Start with
a five-second interval and back off between later requests.

When the build completes, `data.download` contains the temporary ZIP URL,
filename, and byte length. The [get reference](/api-reference/brand-skills/get-a-brand-skill)
contains the complete response schema.

## 3. Download and extract the Skill

Copy `data.download.url` from the completed response:

```bash theme={null}
export BRAND_SKILL_DOWNLOAD_URL="https://..."

curl --location "$BRAND_SKILL_DOWNLOAD_URL" --output brand-skill.zip
unzip brand-skill.zip -d brand-skill
```

Store the whole extracted folder and preserve its relative paths. Continue to
[Use the downloaded Skill](/using-the-skill) before wiring it into an agent.

## 4. Delete Bloom's copy

After your system has stored the Skill:

```bash theme={null}
curl --request DELETE \
  "https://www.trybloom.ai/api/v1/brand-skills/$BRAND_SKILL_ID" \
  --header "x-api-key: $BLOOM_API_KEY"
```

Deletion removes the source files, generated ZIP, and Brand Skill resource
held by Bloom.

<Card title="Build the production lifecycle" icon="arrows-rotate" href="/integration-flow">
  Add safe polling, failure handling, storage, and cleanup to your backend.
</Card>
