> ## Documentation Index
> Fetch the complete documentation index at: https://docs.forterulesengine.io/llms.txt
> Use this file to discover all available pages before exploring further.

# getCallingFunctions

> v0.20.5

> **getCallingFunctions**(`config`, `rulesEngineComponentContract`, `policyId`, `blockParams`?): `Promise`\<[`CallingFunctionOnChain`](../../types/type-aliases/CallingFunctionOnChain)\[]>

Defined in: [src/modules/calling-functions.ts:266](https://github.com/Forte-Service-Company-Ltd/forte-rules-engine-sdk/blob/40cc8388cecd8ee445b00b9df2b681cff8552ece/src/modules/calling-functions.ts#L266)

retrieves calling functions for a policy from the rules engine component contract.

## Parameters

| Parameter                              | Type                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | Description                                                                         |
| -------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
| `config`                               | `Config`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | The configuration object containing network and wallet information.                 |
| `rulesEngineComponentContract`         | \{ `abi`: (\{ `anonymous`: `undefined`; `inputs`: (\{ `components`: `undefined`; `internalType`: `string`; `name`: `string`; `type`: `string`; } \| \{ `components`: `object`\[]; `internalType`: `string`; `name`: `string`; `type`: `string`; })\[]; `name`: `string`; `outputs`: `object`\[]; `stateMutability`: `string`; `type`: `string`; } \| \{ `anonymous`: `undefined`; `inputs`: `object`\[]; `name`: `string`; `outputs`: `object`\[]; `stateMutability`: `string`; `type`: `string`; } \| \{ `anonymous`: `boolean`; `inputs`: `object`\[]; `name`: `string`; `outputs`: `undefined`; `stateMutability`: `undefined`; `type`: `string`; })\[]; `address`: `` `0x${string}` ``; } | The contract instance containing the address and ABI                                |
| `rulesEngineComponentContract.abi`     | (\{ `anonymous`: `undefined`; `inputs`: (\{ `components`: `undefined`; `internalType`: `string`; `name`: `string`; `type`: `string`; } \| \{ `components`: `object`\[]; `internalType`: `string`; `name`: `string`; `type`: `string`; })\[]; `name`: `string`; `outputs`: `object`\[]; `stateMutability`: `string`; `type`: `string`; } \| \{ `anonymous`: `undefined`; `inputs`: `object`\[]; `name`: `string`; `outputs`: `object`\[]; `stateMutability`: `string`; `type`: `string`; } \| \{ `anonymous`: `boolean`; `inputs`: `object`\[]; `name`: `string`; `outputs`: `undefined`; `stateMutability`: `undefined`; `type`: `string`; })\[]                                              | -                                                                                   |
| `rulesEngineComponentContract.address` | `` `0x${string}` ``                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | -                                                                                   |
| `policyId`?                            | `number`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | The ID of the policy which the calling function belongs to.                         |
| `blockParams`?                         | [`ContractBlockParameters`](../../types/type-aliases/ContractBlockParameters)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | Optional parameters to specify block number or tag for the contract read operation. |

## Returns

`Promise`\<[`CallingFunctionOnChain`](../../types/type-aliases/CallingFunctionOnChain)\[]>

A promise that resolves to CallingFunctionHashMapping.
