# Interface: ExecutionContext

Defined in: [api_types.ts:1212](https://github.com/coda/packs-sdk/blob/b2b4c9dba5ca748bdbb94481cc13b5ca3c328ef6/api_types.ts#L1212)

An object passed to the `execute` function of every formula invocation with information and utilities for handling the invocation. In particular, this contains the [core.Fetcher](../Fetcher/), which is used for making HTTP requests.

## Extended by

- [`SyncExecutionContext`](../SyncExecutionContext/)
- [`UpdateSyncExecutionContext`](../UpdateSyncExecutionContext/)
- [`MockExecutionContext`](../../../testing/interfaces/MockExecutionContext/)

## Properties

### endpoint?

> `readonly` `optional` **endpoint**: `string`

Defined in: [api_types.ts:1230](https://github.com/coda/packs-sdk/blob/b2b4c9dba5ca748bdbb94481cc13b5ca3c328ef6/api_types.ts#L1230)

The base endpoint URL for the user's account, only if applicable. See [core.BaseAuthentication.requiresEndpointUrl](../BaseAuthentication/#requiresendpointurl).

If the API URLs are variable based on the user account, you will need this endpoint to construct URLs to use with the fetcher. Alternatively, you can use relative URLs (e.g. "/api/entity") and the platform will include the endpoint for you automatically.

______________________________________________________________________

### fetcher

> `readonly` **fetcher**: [`Fetcher`](../Fetcher/)

Defined in: [api_types.ts:1216](https://github.com/coda/packs-sdk/blob/b2b4c9dba5ca748bdbb94481cc13b5ca3c328ef6/api_types.ts#L1216)

The [core.Fetcher](../Fetcher/) used for making HTTP requests.

______________________________________________________________________

### invocationLocation

> `readonly` **invocationLocation**: [`InvocationLocation`](../InvocationLocation/)

Defined in: [api_types.ts:1235](https://github.com/coda/packs-sdk/blob/b2b4c9dba5ca748bdbb94481cc13b5ca3c328ef6/api_types.ts#L1235)

Information about the environment and doc this formula was invoked from. This is mostly for internal use and we do not recommend relying on it.

______________________________________________________________________

### invocationToken

> `readonly` **invocationToken**: `string`

Defined in: [api_types.ts:1246](https://github.com/coda/packs-sdk/blob/b2b4c9dba5ca748bdbb94481cc13b5ca3c328ef6/api_types.ts#L1246)

A random token scoped to only this request invocation. This is a unique identifier for the invocation, and in particular used with [core.AuthenticationType.Custom](../../enumerations/AuthenticationType/#custom) for naming template parameters that will be replaced by the fetcher in secure way.

______________________________________________________________________

### previousAttemptError?

> `readonly` `optional` **previousAttemptError**: [`InvocationError`](../../type-aliases/InvocationError/)

Defined in: [api_types.ts:1270](https://github.com/coda/packs-sdk/blob/b2b4c9dba5ca748bdbb94481cc13b5ca3c328ef6/api_types.ts#L1270)

If this invocation is a retry, this will be populated with information about what went wrong during the previous attempt. If an error occurs while indexing a sync table, it will retried again later. This field is only applicable for sync tables used within Superhuman Go agents.

______________________________________________________________________

### sync?

> `readonly` `optional` **sync**: [`Sync`](../../type-aliases/Sync/)\<`unknown`, `unknown`, `unknown`>

Defined in: [api_types.ts:1250](https://github.com/coda/packs-sdk/blob/b2b4c9dba5ca748bdbb94481cc13b5ca3c328ef6/api_types.ts#L1250)

Information about state of the current sync. Only populated if this is a sync table formula.

______________________________________________________________________

### temporaryBlobStorage

> `readonly` **temporaryBlobStorage**: [`TemporaryBlobStorage`](../TemporaryBlobStorage/)

Defined in: [api_types.ts:1221](https://github.com/coda/packs-sdk/blob/b2b4c9dba5ca748bdbb94481cc13b5ca3c328ef6/api_types.ts#L1221)

A utility to fetch and store files and images that either require the pack user's authentication or are too large to return inline. See [core.TemporaryBlobStorage](../TemporaryBlobStorage/).

______________________________________________________________________

### timezone

> `readonly` **timezone**: `string`

Defined in: [api_types.ts:1239](https://github.com/coda/packs-sdk/blob/b2b4c9dba5ca748bdbb94481cc13b5ca3c328ef6/api_types.ts#L1239)

The timezone of the doc from which this formula was invoked.
