<!-- Public documentation export; not library implementation source. -->
# IDatafeedChartApi

[Integration guide](https://docs.lumencharts.com/charting-library/datafeed/) · [Reference index](https://docs.lumencharts.com/charting-library/api/)

Public contract reference. This declaration describes types and callback shapes; availability is constrained by the linked integration guide and the runtime capability. Legacy product-specific fields are not a promise of implementation.

## footprint {#footprint}

```ts
footprint?: FootprintProvider;
```

Optional rebuild volume footprint source.
**Beta.** This may change in a later release.

## getMarks {#getmarks}

```ts
getMarks?(
    symbolInfo: LibrarySymbolInfo,
    from: number,
    to: number,
    onDataCallback: GetMarksCallback<Mark>,
    resolution: ResolutionString,
  ): void;
```

Use the type signature above and the integration guide for the owning capability.

| Parameter | Type | Required |
| --- | --- | --- |
| `symbolInfo` | `LibrarySymbolInfo` | Yes |
| `from` | `number` | Yes |
| `to` | `number` | Yes |
| `onDataCallback` | `GetMarksCallback<Mark>` | Yes |
| `resolution` | `ResolutionString` | Yes |

## getTimescaleMarks {#gettimescalemarks}

```ts
getTimescaleMarks?(
    symbolInfo: LibrarySymbolInfo,
    from: number,
    to: number,
    onDataCallback: GetMarksCallback<TimescaleMark>,
    resolution: ResolutionString,
  ): void;
```

Use the type signature above and the integration guide for the owning capability.

| Parameter | Type | Required |
| --- | --- | --- |
| `symbolInfo` | `LibrarySymbolInfo` | Yes |
| `from` | `number` | Yes |
| `to` | `number` | Yes |
| `onDataCallback` | `GetMarksCallback<TimescaleMark>` | Yes |
| `resolution` | `ResolutionString` | Yes |

## getServerTime {#getservertime}

```ts
getServerTime?(callback: ServerTimeCallback): void;
```

Use the type signature above and the integration guide for the owning capability.

| Parameter | Type | Required |
| --- | --- | --- |
| `callback` | `ServerTimeCallback` | Yes |

## searchSymbols {#searchsymbols}

```ts
searchSymbols(
    userInput: string,
    exchange: string,
    symbolType: string,
    onResult: SearchSymbolsCallback,
  ): void;
```

Use the type signature above and the integration guide for the owning capability.

| Parameter | Type | Required |
| --- | --- | --- |
| `userInput` | `string` | Yes |
| `exchange` | `string` | Yes |
| `symbolType` | `string` | Yes |
| `onResult` | `SearchSymbolsCallback` | Yes |

## resolveSymbol {#resolvesymbol}

```ts
resolveSymbol(
    symbolName: string,
    onResolve: ResolveCallback,
    onError: ErrorCallback,
    extension?: SymbolResolveExtension,
  ): void;
```

Use the type signature above and the integration guide for the owning capability.

| Parameter | Type | Required |
| --- | --- | --- |
| `symbolName` | `string` | Yes |
| `onResolve` | `ResolveCallback` | Yes |
| `onError` | `ErrorCallback` | Yes |
| `extension` | `SymbolResolveExtension` | No |

## getBars {#getbars}

```ts
getBars(
    symbolInfo: LibrarySymbolInfo,
    resolution: ResolutionString,
    periodParams: PeriodParams,
    onResult: HistoryCallback,
    onError: ErrorCallback,
  ): void;
```

Use the type signature above and the integration guide for the owning capability.

| Parameter | Type | Required |
| --- | --- | --- |
| `symbolInfo` | `LibrarySymbolInfo` | Yes |
| `resolution` | `ResolutionString` | Yes |
| `periodParams` | `PeriodParams` | Yes |
| `onResult` | `HistoryCallback` | Yes |
| `onError` | `ErrorCallback` | Yes |

## subscribeBars {#subscribebars}

```ts
subscribeBars(
    symbolInfo: LibrarySymbolInfo,
    resolution: ResolutionString,
    onTick: SubscribeBarsCallback,
    listenerGuid: string,
    onResetCacheNeededCallback: () => void,
  ): void;
```

Use the type signature above and the integration guide for the owning capability.

| Parameter | Type | Required |
| --- | --- | --- |
| `symbolInfo` | `LibrarySymbolInfo` | Yes |
| `resolution` | `ResolutionString` | Yes |
| `onTick` | `SubscribeBarsCallback` | Yes |
| `listenerGuid` | `string` | Yes |
| `onResetCacheNeededCallback` | `() => void` | Yes |

## unsubscribeBars {#unsubscribebars}

```ts
unsubscribeBars(listenerGuid: string): void;
```

Use the type signature above and the integration guide for the owning capability.

| Parameter | Type | Required |
| --- | --- | --- |
| `listenerGuid` | `string` | Yes |

## subscribeDepth {#subscribedepth}

```ts
subscribeDepth?(symbol: string, callback: DOMCallback): string;
```

Use the type signature above and the integration guide for the owning capability.

| Parameter | Type | Required |
| --- | --- | --- |
| `symbol` | `string` | Yes |
| `callback` | `DOMCallback` | Yes |

## unsubscribeDepth {#unsubscribedepth}

```ts
unsubscribeDepth?(subscriberUID: string): void;
```

Use the type signature above and the integration guide for the owning capability.

| Parameter | Type | Required |
| --- | --- | --- |
| `subscriberUID` | `string` | Yes |

## getVolumeProfileResolutionForPeriod {#getvolumeprofileresolutionforperiod}

```ts
getVolumeProfileResolutionForPeriod?(
    currentResolution: ResolutionString,
    from: number,
    to: number,
    symbolInfo: LibrarySymbolInfo,
  ): ResolutionString;
```

Use the type signature above and the integration guide for the owning capability.

| Parameter | Type | Required |
| --- | --- | --- |
| `currentResolution` | `ResolutionString` | Yes |
| `from` | `number` | Yes |
| `to` | `number` | Yes |
| `symbolInfo` | `LibrarySymbolInfo` | Yes |

## Related types

- [LibrarySymbolInfo](https://docs.lumencharts.com/charting-library/api/LibrarySymbolInfo)
- [GetMarksCallback](https://docs.lumencharts.com/charting-library/api/GetMarksCallback)
- [Mark](https://docs.lumencharts.com/charting-library/api/Mark)
- [ResolutionString](https://docs.lumencharts.com/charting-library/api/ResolutionString)
- [TimescaleMark](https://docs.lumencharts.com/charting-library/api/TimescaleMark)
- [ServerTimeCallback](https://docs.lumencharts.com/charting-library/api/ServerTimeCallback)
- [SearchSymbolsCallback](https://docs.lumencharts.com/charting-library/api/SearchSymbolsCallback)
- [ResolveCallback](https://docs.lumencharts.com/charting-library/api/ResolveCallback)
- [ErrorCallback](https://docs.lumencharts.com/charting-library/api/ErrorCallback)
- [SymbolResolveExtension](https://docs.lumencharts.com/charting-library/api/SymbolResolveExtension)
- [PeriodParams](https://docs.lumencharts.com/charting-library/api/PeriodParams)
- [HistoryCallback](https://docs.lumencharts.com/charting-library/api/HistoryCallback)
- [SubscribeBarsCallback](https://docs.lumencharts.com/charting-library/api/SubscribeBarsCallback)
- [DOMCallback](https://docs.lumencharts.com/charting-library/api/DOMCallback)

---
Documentation page: https://docs.lumencharts.com/charting-library/api/IDatafeedChartApi
