---
title: "Create a signatory"
method: POST
path: "/v1/companies/{company_uuid}/signatories"
tags: ["Signatories"]
---

# Create a signatory

`POST /v1/companies/{company_uuid}/signatories`

Creates a company signatory with complete information. The company must not already have a signatory.

A signatory can legally sign forms once the identity verification process is successful. The signatory should be an officer, owner, general partner or LLC member manager, plan administrator, fiduciary, or an authorized representative who is designated to sign agreements on the company's behalf. An officer is the president, vice president, treasurer, chief accounting officer, etc. There can only be a single primary signatory in a company.

### Webhooks
- `signatory.created`: Fires when a signatory is successfully created.

### Related guides
- [Signatory Events](https://docs.gusto.com/embedded-payroll/docs/signatory-events)

scope: `signatories:manage`

## Path parameters

- `company_uuid` string, required

## Headers

- `X-Gusto-API-Version` '2026-06-15'

## Request body

- SignatoryCreateRequest — Request body for creating a signatory with complete information. All listed required fields must be provided.
  - `first_name` string, required — The signatory's first name.
  - `middle_initial` string
  - `last_name` string, required — The signatory's last name.
  - `title` string, required — The signatory's title (e.g. CEO, President).
  - `phone` string, required — The signatory's phone number.
  - `birthday` string, date, required — The signatory's date of birth.
  - `email` string, email, required — The signatory's email address.
  - `ssn` string, required — The signatory's SSN.
  - `home_address` object, required — The signatory's home address.
    - `street_1` string, required
    - `street_2` string
    - `city` string, required
    - `state` string, required
    - `zip` string, required
    - `country` string

## Response `200`

Successful

- Signatory — The representation of a company's signatory
  - `uuid` string, required
  - `first_name` string, nullable
  - `last_name` string, nullable
  - `title` string, nullable
  - `phone` string, nullable
  - `email` string
  - `birthday` string, nullable
  - `is_admin` boolean — Whether or not the signatory is also the payroll admin of the company.
  - `has_ssn` boolean — Indicates whether the signatory has an SSN in Gusto.
  - `version` string — The current version of the signatory. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field.
  - `identity_verification_status` 'Pass' | 'Fail' | 'Skipped', nullable — | | | |---|---| |__Status__| __Description__ | | Pass | Signatory can sign all forms | | Fail | Signatory cannot sign forms | | Skipped | Signatory cannot sign Form 8655 until the form is manually uploaded as wet-signed | | null | Identity verification process has not been completed |
  - `home_address` object, nullable
    - `street_1` string
    - `street_2` string
    - `city` string
    - `state` string
    - `zip` string
    - `country` string

## Other responses

- `404` — Not Found The requested resource does not exist. Make sure the provided UUID is valid.
- `422` — Unprocessable Entity This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details.

---

[API](https://skmtc.net/gusto/apis/gusto-api.md) · [All operations](https://skmtc.net/gusto/apis/gusto-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/gusto/gusto-api/revisions/826dfa57fb3b/schema)
