# Portfolios

Handles all Portfolio related functionality on the Identity side

## Hierarchy

* Namespace‹[Identity](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/identity)›

  ↳ **Portfolios**

## Index

### Properties

* [context](#protected-context)
* [parent](#protected-parent)

### Methods

* [create](#create)
* [delete](#delete)
* [getCustodiedPortfolios](#getcustodiedportfolios)
* [getPortfolio](#getportfolio)
* [getPortfolios](#getportfolios)

## Properties

### `Protected` context

• **context**: [*Context*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/context)

*Inherited from void*

*Defined in* [*src/api/entities/Namespace.ts:11*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Namespace.ts#L11)

### `Protected` parent

• **parent**: [*Identity*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/identity)

*Inherited from void*

*Defined in* [*src/api/entities/Namespace.ts:9*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Namespace.ts#L9)

## Methods

### create

▸ **create**(`args`: object, `opts?`: [ProcedureOpts](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/interfaces/procedureopts)): *Promise‹*[*TransactionQueue*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/transactionqueue)*‹*[*NumberedPortfolio*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/numberedportfolio)*››*

*Defined in* [*src/api/entities/Identity/Portfolios.ts:166*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Identity/Portfolios.ts#L166)

Create a new Portfolio for the Identity

**`note`** this method is of type [ProcedureMethod](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/interfaces/proceduremethod), which means you can call `create.checkAuthorization` on it to see whether the Current Account has the required permissions to run it

**Parameters:**

▪ **args**: *object*

| Name   | Type   |
| ------ | ------ |
| `name` | string |

▪`Optional` **opts**: [*ProcedureOpts*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/interfaces/procedureopts)

**Returns:** *Promise‹*[*TransactionQueue*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/transactionqueue)*‹*[*NumberedPortfolio*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/numberedportfolio)*››*

### delete

▸ **delete**(`args`: object, `opts?`: [ProcedureOpts](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/interfaces/procedureopts)): *Promise‹*[*TransactionQueue*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/transactionqueue)*‹void››*

*Defined in* [*src/api/entities/Identity/Portfolios.ts:179*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Identity/Portfolios.ts#L179)

Delete a Portfolio by ID

**`note`** required role:

* Portfolio Custodian

**`note`** this method is of type [ProcedureMethod](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/interfaces/proceduremethod), which means you can call `delete.checkAuthorization` on it to see whether the Current Account has the required permissions to run it

**Parameters:**

▪ **args**: *object*

| Name        | Type                                                                                                                               |
| ----------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `portfolio` | BigNumber \| [NumberedPortfolio](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/numberedportfolio) |

▪`Optional` **opts**: [*ProcedureOpts*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/interfaces/procedureopts)

**Returns:** *Promise‹*[*TransactionQueue*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/transactionqueue)*‹void››*

### getCustodiedPortfolios

▸ **getCustodiedPortfolios**(`paginationOpts?`: [PaginationOptions](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/interfaces/paginationoptions)): *Promise‹*[*ResultSet*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/interfaces/resultset)*‹*[*DefaultPortfolio*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/defaultportfolio) *|* [*NumberedPortfolio*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/numberedportfolio)*››*

*Defined in* [*src/api/entities/Identity/Portfolios.ts:82*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Identity/Portfolios.ts#L82)

Retrieve all Portfolios custodied by this Identity. This only includes portfolios owned by a different Identity but custodied by this one. To fetch Portfolios owned by this Identity, use [getPortfolios](#getportfolios)

**`note`** supports pagination

**Parameters:**

| Name              | Type                                                                                                                     |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `paginationOpts?` | [PaginationOptions](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/interfaces/paginationoptions) |

**Returns:** *Promise‹*[*ResultSet*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/interfaces/resultset)*‹*[*DefaultPortfolio*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/defaultportfolio) *|* [*NumberedPortfolio*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/numberedportfolio)*››*

### getPortfolio

▸ **getPortfolio**(): *Promise‹*[*DefaultPortfolio*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/defaultportfolio)*›*

*Defined in* [*src/api/entities/Identity/Portfolios.ts:129*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Identity/Portfolios.ts#L129)

Retrieve a numbered Portfolio or the default Portfolio if Portfolio ID is not passed

**Returns:** *Promise‹*[*DefaultPortfolio*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/defaultportfolio)*›*

▸ **getPortfolio**(`args`: object): *Promise‹*[*NumberedPortfolio*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/numberedportfolio)*›*

*Defined in* [*src/api/entities/Identity/Portfolios.ts:130*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Identity/Portfolios.ts#L130)

**Parameters:**

▪ **args**: *object*

| Name          | Type      |
| ------------- | --------- |
| `portfolioId` | BigNumber |

**Returns:** *Promise‹*[*NumberedPortfolio*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/numberedportfolio)*›*

### getPortfolios

▸ **getPortfolios**(): *Promise‹\[]›*

*Defined in* [*src/api/entities/Identity/Portfolios.ts:51*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Identity/Portfolios.ts#L51)

Retrieve all the Portfolios owned by this Identity

**Returns:** *Promise‹\[]›*
