# Advanced set up

To get started you will need to instantiate and configure the Squid SDK:

```typescript
const Squid = new Squid(config)
```

The optional `config` parameter can be used to pass custom configuration to the SDK:

```typescript
type Config = {
  apiKey?: string
  baseUrl?: string
  executionSettings?: {
    infiniteApproval?: boolean
  }
}
```

| Property                           | Description                                                                                                                                       |
| ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| apiKey                             | *API KEY* to have access to *Squid API* (not implemented yet)                                                                                     |
| baseUrl                            | Set the *Squid API URL*, this should be used to set the *environment*                                                                             |
| executionSettings                  | Customize *executeRoute* method behavior                                                                                                          |
| executionSettings.infiniteApproval | Set to *false* if you only want to approve the specific amount of tokens to be send in the *executedRoute* method. (infinite approval as default) |
