Skip to main content
POST
Use this endpoint to add a new contact to your Portal.io dealer account. Contacts are used as the client on proposals. PartyType, ContactType, and FirstName are always required. When PartyType is Company, you must also supply CompanyName. Valid PartyType values: Person, Company. Valid ContactType values: Client, Employee, Contractor, Other.
The request body must be submitted as application/x-www-form-urlencoded. Encode special characters in field values before sending.

Authorizations

X-MSS-API-APPID
string
header
required

Portal application identifier used as part of HMAC-authenticated API requests.

X-MSS-API-USERKEY
string
header
required

Portal user API key used together with the HMAC signature headers.

X-MSS-CUSTOM-DATE
string
header
required

Timestamp header included in the signed request to prevent replay attacks.

X-MSS-SIGNATURE
string
header
required

HMAC-SHA256 signature for the request, calculated over the canonical string defined in the authentication docs.

Headers

Accept
enum<string>
required

Accept Header

Available options:
application/json

Body

application/json

People Services

firstName
string
required

First Name (Maximum character length is 100)

partyType
enum<string>
Available options:
Undefined,
Person,
Company
contactType
enum<string>
Available options:
Undefined,
Client,
Employee,
Contractor,
Other
lastName
string

Last Name (Maximum character length is 50)

companyName
string

Company Name (Maximum character length is 100)

contactEmail
string

Email (Maximum character length is 256)

contactEmailCC
string

Additioanl email(s) copied when a proposal is submitted

contactPhone
string

Contact Phone (Maximum character length is 30)

notes
string

Response

Success

Contact detail model

id
integer<int32>
required

Unique numeric identifier of the contact

lastModifiedDate
string<date-time>
required

UTC timestamp when the contact was last modified

partyType
enum<string>
Available options:
Undefined,
Person,
Company
contactType
enum<string>
Available options:
Undefined,
Client,
Employee,
Contractor,
Other
firstName
string

Contact first name

lastName
string

Contact last name

companyName
string

Company name when the contact represents a company

contactEmail
string

Primary contact email address

contactEmailCC
string

Additional email addresses copied when a proposal is submitted

contactPhone
string

Primary contact phone number

notes
string

Free-text notes stored on the contact

primaryLocation
PublicContactLocationModel · object

Contact-location detail model

billingLocation
PublicContactLocationModel · object

Contact-location detail model

proposalCount
integer<int32>

Number of proposals linked to the contact when counts are requested

paymentCount
integer<int32>

Number of payments linked to the contact when counts are requested