Add a representative | Moov Documentation
Add a representative
Moov accounts associated with businesses require information regarding individuals who represent the business. You can provide this information by creating a representative. Each account is allowed a maximum of 7 representatives. Read our business representatives guide to learn more.
To access this endpoint using an access token you'll need to specify the /accounts/{accountID}/representatives.write scope.
POST
/accounts/{accountID}/representatives
Ask
curl -X POST "https://api.moov.io/accounts/{accountID}/representatives" \
-H "Authorization: Bearer {token}" \
-H "X-Moov-Version: v2026.04.00" \
-d '{
"name": {
"firstName": "Jordan",
"lastName": "Lee"
}
}'
Ask
mc, _ := moov.NewClient()
var accountID string
mc.CreateRepresentative(ctx, accountID, moov.CreateRepresentative{
Address: &moov.Address{
AddressLine1: "12 Main Street",
City: "Cabot Cove",
StateOrProvince: "ME",
PostalCode: "04103",
Country: "US",
},
BirthDate: &moov.Date{
Day: 10,
Month: 11,
Year: 1985,
},
Email: "amanda@classbooker.dev",
GovernmentID: &moov.GovernmentID{
SSN: &moov.SSN{
Full: "111111111",
LastFour: "1111",
},
},
Name: moov.Name{
FirstName: "Amanda",
LastName: "Yang",
},
Phone: &moov.Phone{
Number: "8185551212",
CountryCode: "1",
},
Responsibilities: &moov.Responsibilities{
IsController: false,
IsOwner: true,
OwnershipPercentage: 38,
JobTitle: "CEO",
},
})
Ask
import { Moov } from "@moovio/sdk";
const moov = new Moov({
security: {
username: "",
password: "",
},
});
async function run() {
const result = await moov.representatives.create({
accountID: "5abfe3a5-7cd3-4f92-a8bd-19b64e3ccc10",
createRepresentative: {
name: {
firstName: "Jordan",
middleName: "Reese",
lastName: "Lee",
suffix: "Jr",
},
phone: {
number: "8185551212",
countryCode: "1",
},
email: "jordan.lee@classbooker.dev",
address: {
addressLine1: "123 Main Street",
addressLine2: "Apt 302",
city: "Boulder",
stateOrProvince: "CO",
postalCode: "80301",
country: "US",
},
birthDate: {
day: 9,
month: 11,
year: 1989,
},
responsibilities: {
ownershipPercentage: 38,
jobTitle: "CEO",
},
},
});
console.log(result);
}
run();
Ask
declare(strict_types=1);
require 'vendor/autoload.php';
use Moov\MoovPhp;
use Moov\MoovPhp\Models\Components;
$sdk = MoovPhp\Moov::builder()
->setSecurity(
new Components\Security(
username: '',
password: '',
)
)
->build();
$createRepresentative = new Components\CreateRepresentative(
name: new Components\IndividualName(
firstName: 'Jordan',
middleName: 'Reese',
lastName: 'Lee',
suffix: 'Jr',
),
phone: new Components\PhoneNumber(
number: '8185551212',
countryCode: '1',
),
email: 'jordan.lee@classbooker.dev',
address: new Components\Address(
addressLine1: '123 Main Street',
addressLine2: 'Apt 302',
city: 'Boulder',
stateOrProvince: 'CO',
postalCode: '80301',
country: 'US',
),
birthDate: new Components\BirthDate(
day: 9,
month: 11,
year: 1989,
),
responsibilities: new Components\RepresentativeResponsibilities(
ownershipPercentage: 38,
jobTitle: 'CEO',
),
);
$response = $sdk->representatives->create(
accountID: '5abfe3a5-7cd3-4f92-a8bd-19b64e3ccc10',
createRepresentative: $createRepresentative
);
if ($response->representative !== null) {
// handle response
}
Ask
package hello.world;
import io.moov.sdk.Moov;
import io.moov.sdk.models.components.*;
import io.moov.sdk.models.errors.GenericError;
import io.moov.sdk.models.errors.RepresentativeValidationError;
import io.moov.sdk.models.operations.CreateRepresentativeResponse;
import java.lang.Exception;
public class Application {
public static void main(String[] args) throws GenericError, RepresentativeValidationError, Exception {
Moov sdk = Moov.builder()
.security(Security.builder()
.username("")
.password("")
.build())
.build();
CreateRepresentativeResponse res = sdk.representatives().create()
.accountID("5abfe3a5-7cd3-4f92-a8bd-19b64e3ccc10")
.createRepresentative(CreateRepresentative.builder()
.name(IndividualName.builder()
.firstName("Jordan")
.lastName("Lee")
.middleName("Reese")
.suffix("Jr")
.build())
.phone(PhoneNumber.builder()
.number("8185551212")
.countryCode("1")
.build())
.email("jordan.lee@classbooker.dev")
.address(Address.builder()
.addressLine1("123 Main Street")
.city("Boulder")
.stateOrProvince("CO")
.postalCode("80301")
.country("US")
.addressLine2("Apt 302")
.build())
.birthDate(BirthDate.builder()
.day(9L)
.month(11L)
.year(1989L)
.build())
.responsibilities(RepresentativeResponsibilities.builder()
.ownershipPercentage(38L)
.jobTitle("CEO")
.build())
.build())
.call();
if (res.representative().isPresent()) {
System.out.println(res.representative().get());
}
}
}
Ask
from moovio_sdk import Moov
from moovio_sdk.models import components
with Moov(
security=components.Security(
username="",
password="",
),
) as moov:
res = moov.representatives.create(account_id="5abfe3a5-7cd3-4f92-a8bd-19b64e3ccc10", name={
"first_name": "Jordan",
"middle_name": "Reese",
"last_name": "Lee",
"suffix": "Jr",
}, phone={
"number": "8185551212",
"country_code": "1",
}, email="jordan.lee@classbooker.dev", address={
"address_line1": "123 Main Street",
"address_line2": "Apt 302",
"city": "Boulder",
"state_or_province": "CO",
"postal_code": "80301",
"country": "US",
}, birth_date={
"day": 9,
"month": 11,
"year": 1989,
}, responsibilities={
"ownership_percentage": 38,
"job_title": "CEO",
})
# Handle response
print(res)
Ask
require 'moov_ruby'
Models = ::Moov::Models
s = ::Moov::Client.new(
security: Models::Components::Security.new(
username: '',
password: ''
)
)
res = s.representatives.create(account_id: '5abfe3a5-7cd3-4f92-a8bd-19b64e3ccc10', create_representative: Models::Components::CreateRepresentative.new(
name: Models::Components::IndividualName.new(
first_name: 'Jordan',
middle_name: 'Reese',
last_name: 'Lee',
suffix: 'Jr'
),
phone: Models::Components::PhoneNumber.new(
number: '8185551212',
country_code: '1'
),
email: 'jordan.lee@classbooker.dev',
address: Models::Components::Address.new(
address_line1: '123 Main Street',
address_line2: 'Apt 302',
city: 'Boulder',
state_or_province: 'CO',
postal_code: '80301',
country: 'US'
),
birth_date: Models::Components::BirthDate.new(
day: 9,
month: 11,
year: 1989
),
responsibilities: Models::Components::RepresentativeResponsibilities.new(
ownership_percentage: 38,
job_title: 'CEO'
)
))
unless res.representative.nil?
# handle response
end
Ask
using Moov.Sdk;
using Moov.Sdk.Models.Components;
var sdk = new MoovClient(security: new Security() {
Username = "",
Password = "",
});
var res = await sdk.Representatives.CreateAsync(
accountID: "5abfe3a5-7cd3-4f92-a8bd-19b64e3ccc10",
body: new CreateRepresentative() {
Name = new IndividualName() {
FirstName = "Jordan",
MiddleName = "Reese",
LastName = "Lee",
Suffix = "Jr",
},
Phone = new PhoneNumber() {
Number = "8185551212",
CountryCode = "1",
},
Email = "jordan.lee@classbooker.dev",
Address = new Address() {
AddressLine1 = "123 Main Street",
AddressLine2 = "Apt 302",
City = "Boulder",
StateOrProvince = "CO",
PostalCode = "80301",
Country = "US",
},
BirthDate = new BirthDate() {
Day = 9,
Month = 11,
Year = 1989,
},
Responsibilities = new RepresentativeResponsibilities() {
OwnershipPercentage = 38,
JobTitle = "CEO",
},
}
);
// handle response