## Create representative

Moov accounts associated with businesses require information regarding individuals who represent the business. You can provide this information by creating a representative.

To create a representative, you'll need to specify the `/accounts/{accountID}/representatives.write` scope when generating a token.

#### Parameters

| Name                | Type                             |
|---------------------|----------------------------------|
| `accountID`        | string                           |
| `representative`    | [Representative](https://docs.moov.io/api/moov-accounts/representatives/create/) |

Ask

```javascript
const accountID = "accountID";
const representative = {
    "name": {
        "firstName": "Amanda",
        "lastName": "Yang",
        "suffix": "Jr"
    },
    "phone": {
        "number": "8185551212",
        "countryCode": "1"
    },
    "email": "amanda@classbooker.dev",
    "address": {
        "addressLine1": "123 Main Street",
        "addressLine2": "Apt 302",
        "city": "Boulder",
        "stateOrProvince": "Colorado",
        "postalCode": "80301",
        "country": "US"
    },
    "birthDate": {
        "day": 10,
        "month": 11,
        "year": 1989
    },
    "governmentID": {
        "ssn": {
        "full": "111111111",
        "lastFour": "1111"
        },
        "itin": {
        "full": "111111111",
        "lastFour": "1111"
        }
    },
    "responsibilities": {
        "isController": false,
        "isOwner": true,
        "ownershipPercentage": 38,
        "jobTitle": "CEO"
    }
};
moov.accounts.representatives.create({accountID, representative});
```

## List representatives

A Moov account may have multiple representatives depending on the associated business's ownership and management structure. You can use this method to list all the representatives for a given Moov account. Note that Moov accounts associated with an individual do not have representatives.

To list representatives, you'll need to specify the `/accounts/{accountID}/representatives.read` scope when generating a token.

#### Parameters

| Name                | Type                             |
|---------------------|----------------------------------|
| `accountID`        | string                           |

Ask

```javascript
moov.accounts.representatives.list({accountID});
```

## Get representative

Retrieve a specific representative associated with a given Moov account.

To get representatives, you'll need to specify the `/accounts/{accountID}/representatives.read` scope when generating a token.

#### Parameters

| Name                | Type                             |
|---------------------|----------------------------------|
| `accountID`        | string                           |
| `representativeID` | string                           |

Ask

```javascript
moov.accounts.representatives.list({accountID, representativeID});
```

## Delete representative

Deletes a business representative associated with a Moov account.

To delete a representative, you'll need to specify the `/accounts/{accountID}/representatives.write` scope when generating a token.

#### Parameters

| Name                | Type                             |
|---------------------|----------------------------------|
| `accountID`        | string                           |
| `representativeID` | string                           |

Ask

```javascript
moov.accounts.representatives.delete({accountID, representativeID});
```

## Update representative

If a representative's information has changed and you need to update it, you can use this method to change any of the fields associated with that particular representative.

To update a representative, you'll need to specify the `/accounts/{accountID}/representatives.write` scope when generating a token.

#### Parameters

Ask
