# Create Collection

## `createCollection()`

Create a new SRR to a collection

## Method parameters

| Variable                      | Type     | Description                                                                                                               |
| ----------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------- |
| `startrailLUWContractAddress` | `string` | The address of LicensedUserWallet(LUW) contract. Sets it when you want to execute transaction by the LUW contract address |
| `name`                        | `string` | Collection name                                                                                                           |
| `symbol`                      | `string` | Collection symbol                                                                                                         |
| `salt`                        | `string` | The salt used in collection creation can also serve as an identifier for querying your collection data.                   |

### Parameters Example

```
await sdk.createCollection(
  {
    startrailLUWContractAddress: '0x572a9e6B66F56A0D2c5cBE13066A4662b9C07868',
    name: 'Taihei 2022',
    symbol: 'T22',
    salt: '0xea9369d265ddf31c12231b2aeb90662018499cb62117f30cf722bc1b76c62c46'
  }
)
```

## Returns

`Promise` will be returned which resolves with a `Response` object upon a successful confirmation. `false` will be returned when user flow is cancelled in such a case that a user closes the popup modal.

If the confirmation fails, the `Promise` will resolve with an {error} object that describes the failure.

`Promise<Response | false>`

{% hint style="warning" %}
The use of "txReceiptId" will soon be deprecated and removed.
{% endhint %}

### Response

| Variable      | Type        | Description                                             |
| ------------- | ----------- | ------------------------------------------------------- |
| `txReceiptId` | `string`    | ID to identify transaction details in Startrail-API DB. |
| `tx`          | `TxDetails` | Refer TX for all possible data                          |

### TxDetails

| Variable          | Type     | Description                                                                                             |
| ----------------- | -------- | ------------------------------------------------------------------------------------------------------- |
| `contractAddress` | `string` | The address of collection contract                                                                      |
| `salt`            | `string` | The salt used in collection creation can also serve as an identifier for querying your collection data. |

### Error

ErrorCustom `Error` objects. Refer to the [Error Catalogue](https://docs.startrail.io/startrail-sdk-js/errors) for possible data.

### Response Example

###

```
{
  txReceiptId: 0,
  tx: {
    contractAddress: '0xb135c5F2056e8D84a78094b1B02B28494845747F',
    salt: '0xea9369d265ddf31c12231b2aeb90662018499cb62117f30cf722bc1b76c62c46'
  }
}
```
