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

# Create Asset Group

> Create a Seedance asset group using `POST /v1/seedance/asset/CreateAssetGroup`.

# Create Asset Group

Create a new asset group for categorizing and managing subsequently uploaded assets. When uploading assets, pass in the returned `GroupId`.

## Method and Path

```http theme={null}
POST /v1/seedance/asset/CreateAssetGroup
```

## Request Example

<CodeGroup>
  ```bash theme={null}
  curl -X POST https://octopusx.ai/v1/seedance/asset/CreateAssetGroup \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{
      "Name": "test",
      "Description": "this is description"
    }'
  ```

  ```python theme={null}
  import requests

  resp = requests.post(
      "https://octopusx.ai/v1/seedance/asset/CreateAssetGroup",
      headers={
          "Authorization": "Bearer YOUR_API_KEY",
          "Content-Type": "application/json",
          "Accept": "application/json",
      },
      json={
          "Name": "test",
          "Description": "this is description",
      },
      timeout=30,
  )
  print(resp.json())
  ```
</CodeGroup>

## Response Example

<ResponseExample>
  ```json 200 theme={null}
  {
    "state": 1,
    "data": {
      "Id": "group-20260412163933-zwxdc"
    },
    "error": null
  }
  ```

  ```json 400 theme={null}
  {
    "error": {
      "code": "InvalidParameter",
      "message": "the parameter duration specified in the request is not valid",
      "type": "new_api_error"
    }
  }
  ```

  ```json 401 theme={null}
  {
    "error": {
      "code": "Unauthorized",
      "message": "Invalid API key provided",
      "type": "new_api_error"
    }
  }
  ```

  ```json 429 theme={null}
  {
    "error": {
      "code": "RateLimitExceeded",
      "message": "当前请求频率过高，请稍后再试",
      "type": "new_api_error"
    }
  }
  ```

  ```json 500 theme={null}
  {
    "error": {
      "code": "InternalError",
      "message": "internal server error",
      "type": "new_api_error"
    }
  }
  ```
</ResponseExample>

## Authentication

```http theme={null}
Authorization: Bearer YOUR_API_KEY
```

## Body

<ParamField body="Name" type="string" required>
  Asset group name, up to 64 characters.
</ParamField>

<ParamField body="Description" type="string">
  Asset group description, up to 300 characters.
</ParamField>

## Response

<ResponseField name="state" type="integer">
  Business status code, `1` usually indicates success.
</ResponseField>

<ResponseField name="data.Id" type="string">
  Asset group ID, passed as `GroupId` in subsequent [Upload Asset](./asset-create-media) requests.
</ResponseField>

<ResponseField name="error" type="object | null">
  Error information; `null` on success.
</ResponseField>

## Related Pages

* [Seedance-2 Overview](./overview)
* [Upload Asset](./asset-create-media)
* [Query Asset](./asset-get)
