# BaseContextOptions

Defined in: [packages/synapse-sdk/src/types.ts:352](https://github.com/FilOzone/synapse-sdk/blob/1a9447e47b3ce068db6736df02803453e0987905/packages/synapse-sdk/src/types.ts#L352)

Base options shared by all context creation methods

Contains fields common to both single and multi-context creation:
CDN enablement, metadata matching, and creation callbacks.

## Extended by

- [`CreateContextsOptions`](/reference/filoz/synapse-sdk/synapse/interfaces/createcontextsoptions/)
- [`StorageServiceOptions`](/reference/filoz/synapse-sdk/synapse/interfaces/storageserviceoptions/)

## Properties

### callbacks?

> `optional` **callbacks?**: [`StorageContextCallbacks`](/reference/filoz/synapse-sdk/synapse/interfaces/storagecontextcallbacks/)

Defined in: [packages/synapse-sdk/src/types.ts:372](https://github.com/FilOzone/synapse-sdk/blob/1a9447e47b3ce068db6736df02803453e0987905/packages/synapse-sdk/src/types.ts#L372)

Callbacks for creation process

***

### cdnGroup?

> `optional` **cdnGroup?**: `string`

Defined in: [packages/synapse-sdk/src/types.ts:363](https://github.com/FilOzone/synapse-sdk/blob/1a9447e47b3ce068db6736df02803453e0987905/packages/synapse-sdk/src/types.ts#L363)

CDN group id used as the `withCDN` metadata value when CDN is enabled. Every context (primary
and secondaries) that shares this value resolves to the same shared CDN bandwidth rail in FWSS
(keyed by `keccak256(payer, cdnGroup)`), so a multi-copy CDN upload buys bandwidth once instead
of once per copy. Opt-in and empty by default, which keeps a dedicated bandwidth rail per data
set and preserves exact-metadata reuse.

***

### metadata?

> `optional` **metadata?**: [`Record`](https://www.typescriptlang.org/docs/handbook/utility-types.html#recordkeys-type)\<`string`, `string`\>

Defined in: [packages/synapse-sdk/src/types.ts:369](https://github.com/FilOzone/synapse-sdk/blob/1a9447e47b3ce068db6736df02803453e0987905/packages/synapse-sdk/src/types.ts#L369)

Custom metadata for data sets (key-value pairs).
Used to match existing data sets during provider selection.

***

### withCDN?

> `optional` **withCDN?**: `boolean`

Defined in: [packages/synapse-sdk/src/types.ts:354](https://github.com/FilOzone/synapse-sdk/blob/1a9447e47b3ce068db6736df02803453e0987905/packages/synapse-sdk/src/types.ts#L354)

Whether to enable CDN services