# encodePDPCapabilities

> **encodePDPCapabilities**(`pdpOffering`, `capabilities?`): \[`string`[], `` `0x${string}` ``[]\]

Defined in: [packages/synapse-core/src/utils/pdp-capabilities.ts:86](https://github.com/FilOzone/synapse-sdk/blob/7fdc04df4e3c52366a9f0cd55da4c05e20b2ed82/packages/synapse-core/src/utils/pdp-capabilities.ts#L86)

Encode PDP capabilities from a PDPOffering object and a capabilities object into a capability keys and values array.

## Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `pdpOffering` | [`PDPOffering`](/reference/filoz/synapse-core/sp-registry/interfaces/pdpoffering/) | The PDP offering to encode. |
| `capabilities?` | [`Record`](https://www.typescriptlang.org/docs/handbook/utility-types.html#recordkeys-type)\<`string`, `string`\> | The capabilities to encode. |

## Returns

\[`string`[], `` `0x${string}` ``[]\]

The encoded capability keys and values.

## Todo

add zod schema validation for the pdp offering and capabilities.