We've launched a new documentation site. Visit docs.portal.io for the latest version.

People

The People service allows you to manage a dealer's contacts, which are used in proposals.

Search & Get Contact List

Returns a paged list of contacts for the current account. Supports search, contact type filtering, sorting, and pagination. Pagination defaults to PageNumber 1 and PageSize 10 when values are missing or less than or equal to 0.

Request
query Parameters
SearchText
string

Search text

ContactTypes
Array of strings

Contact Types.

Items Enum: "Person" "Company"
SortBy
string
Enum: "ModifiedDate" "CreatedDate" "FirstName" "LastName" "LastActive" "LastActiveByMe"
SortDirection
string
PageNumber
integer <int32>

Page number. Starting from 1

PageSize
integer <int32>

Page Size

header Parameters
Accept
required
string

Accept Header

Value: "application/json"
X-MSS-API-APPID
required
string

Application Id

X-MSS-CUSTOM-DATE
required
string

A date timestamp of the request

X-MSS-SIGNATURE
required
string

A signature for the request

X-MSS-API-USERKEY
required
string

User API Key

Responses
200

Success

Response Schema: application/json
required
Array of objects (PublicContactModel)

Contacts returned for the current page

peopleCount
required
integer <int32>

Total number of contacts matching the current filter set

401

Not Authorized to access this endpoint or your HMAC hash was incorrect.

402

This action requires an active subscription.

403

You do not have permission for this API call.

get/public/people
Request samples
Response samples
application/json
{
  • "people": [
    ],
  • "peopleCount": 0
}

Create a New Contact

Creates a contact in the current account. PartyType, ContactType, and FirstName are required. CompanyName is also required when PartyType is Company.

Request
header Parameters
Accept
required
string

Accept Header

Value: "application/json"
X-MSS-API-APPID
required
string

Application Id

X-MSS-CUSTOM-DATE
required
string

A date timestamp of the request

X-MSS-SIGNATURE
required
string

A signature for the request

X-MSS-API-USERKEY
required
string

User API Key

Request Body schema: application/x-www-form-urlencoded
required
PartyType
required
string
Enum: "Undefined" "Person" "Company"
ContactType
required
string
Enum: "Undefined" "Client" "Employee" "Contractor" "Other"
FirstName
required
string

First Name (Maximum character length is 100)

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
Responses
200

Success

Response Schema: application/json
notes
string

Free-text notes stored on the contact

lastModifiedDate
required
string <date-time>

UTC timestamp when the contact was last modified

object (PublicContactLocationModel)

Contact-location detail model

object (PublicContactLocationModel)

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

id
required
integer <int32>

Unique numeric identifier of the contact

partyType
required
string

Contact party type such as Person or Company

Enum: "Undefined" "Person" "Company"
contactType
required
string

Contact category type

Enum: "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

401

Not Authorized to access this endpoint or your HMAC hash was incorrect.

402

This action requires an active subscription.

403

You do not have permission for this API call.

post/public/people
Request samples
Response samples
application/json
{
  • "notes": "string",
  • "lastModifiedDate": "2019-08-24T14:15:22Z",
  • "primaryLocation": {
    },
  • "billingLocation": {
    },
  • "proposalCount": 0,
  • "paymentCount": 0,
  • "id": 0,
  • "partyType": "Undefined",
  • "contactType": "Undefined",
  • "firstName": "string",
  • "lastName": "string",
  • "companyName": "string",
  • "contactEmail": "string",
  • "contactEmailCC": "string",
  • "contactPhone": "string"
}

Get Contact Details

Returns the contact details for the specified person. PrimaryLocation and BillingLocation are included when available. When IncludeCounts is true, the response also includes proposal and payment counts for the contact.

Request
path Parameters
PersonId
required
integer <int32>

Person Id.

query Parameters
IncludeCounts
boolean
header Parameters
Accept
required
string

Accept Header

Value: "application/json"
X-MSS-API-APPID
required
string

Application Id

X-MSS-CUSTOM-DATE
required
string

A date timestamp of the request

X-MSS-SIGNATURE
required
string

A signature for the request

X-MSS-API-USERKEY
required
string

User API Key

Responses
200

Success

Response Schema: application/json
notes
string

Free-text notes stored on the contact

lastModifiedDate
required
string <date-time>

UTC timestamp when the contact was last modified

object (PublicContactLocationModel)

Contact-location detail model

object (PublicContactLocationModel)

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

id
required
integer <int32>

Unique numeric identifier of the contact

partyType
required
string

Contact party type such as Person or Company

Enum: "Undefined" "Person" "Company"
contactType
required
string

Contact category type

Enum: "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

400

Person not found.

401

Not Authorized to access this endpoint or your HMAC hash was incorrect.

403

You do not have permission for this API call.

get/public/people/{PersonId}
Request samples
Response samples
application/json
{
  • "notes": "string",
  • "lastModifiedDate": "2019-08-24T14:15:22Z",
  • "primaryLocation": {
    },
  • "billingLocation": {
    },
  • "proposalCount": 0,
  • "paymentCount": 0,
  • "id": 0,
  • "partyType": "Undefined",
  • "contactType": "Undefined",
  • "firstName": "string",
  • "lastName": "string",
  • "companyName": "string",
  • "contactEmail": "string",
  • "contactEmailCC": "string",
  • "contactPhone": "string"
}

Get Contact Location List

Returns the contact's locations. Results are ordered with the primary location first, then the billing location, then the most recently modified locations. Pagination defaults to PageNumber 1 and PageSize 10. When PageNumber is less than or equal to 0, all matching locations are returned.

Request
path Parameters
ContactId
required
integer <int32>
query Parameters
PageNumber
integer <int32>
PageSize
integer <int32>
header Parameters
Accept
required
string

Accept Header

Value: "application/json"
X-MSS-API-APPID
required
string

Application Id

X-MSS-CUSTOM-DATE
required
string

A date timestamp of the request

X-MSS-SIGNATURE
required
string

A signature for the request

X-MSS-API-USERKEY
required
string

User API Key

Responses
200

Success

Response Schema: application/json
Array of objects (PublicContactLocationModel)

Locations returned for the requested contact

locationCount
required
integer <int32>

Total number of locations matching the current request

401

Not Authorized to access this endpoint or your HMAC hash was incorrect.

403

You do not have permission for this API call.

get/public/people/{ContactId}/location
Request samples
Response samples
application/json
{
  • "contactLocations": [
    ],
  • "locationCount": 0
}

Create New Contact Location

Adds a location to the specified contact. Street is required. When Country is provided, State is also required. Use IsPrimary to make the new location the primary location and IsBilling to make it the billing location.

Request
path Parameters
ContactId
required
integer <int32>
header Parameters
Accept
required
string

Accept Header

Value: "application/json"
X-MSS-API-APPID
required
string

Application Id

X-MSS-CUSTOM-DATE
required
string

A date timestamp of the request

X-MSS-SIGNATURE
required
string

A signature for the request

X-MSS-API-USERKEY
required
string

User API Key

Request Body schema: application/x-www-form-urlencoded
ContactFirstName
string

Contact First Name (Maximum character length is 50)

ContactLastName
string

Contact Last Name (Maximum character length is 50)

ContactPhoneNumber
string

Contact Phone Number (Maximum character length is 50)

ContactEmail
string

Contact Email (Maximum character length is 100)

Street
required
string

Street (Maximum character length is 100)

Suite
string

Suite (Maximum character length is 100)

City
string

City (Maximum character length is 50)

PostalCode
string

Postal Code (Maximum character length is 20)

State
string

State (Maximum character length is 256)

Country
string

Country (Maximum character length is 256)

IsPrimary
boolean
IsBilling
boolean
Responses
200

Success

Response Schema: application/json
contactFirstName
string

Location contact first name

contactLastName
string

Location contact last name

contactPhoneNumber
string

Location contact phone number

contactEmail
string

Location contact email address

isPrimary
required
boolean

Whether this location is the primary location for the contact

isBilling
required
boolean

Whether this location is the billing location for the contact

id
integer <int32>

Unique numeric identifier of the location, when available.

street
string

Primary street address line.

suite
string

Secondary address line, apartment, or suite.

city
string

City or locality.

postalCode
string

Postal or ZIP code.

state
string

State, province, or region name.

stateAbbrev
string

State or province abbreviation when available.

country
string

Country name.

phone
string

Location phone number when one is associated with this address.

401

Not Authorized to access this endpoint or your HMAC hash was incorrect.

402

This action requires an active subscription.

403

You do not have permission for this API call.

404

This person does not exists.

post/public/people/{ContactId}/location
Request samples
Response samples
application/json
{
  • "contactFirstName": "string",
  • "contactLastName": "string",
  • "contactPhoneNumber": "string",
  • "contactEmail": "string",
  • "isPrimary": true,
  • "isBilling": true,
  • "id": 0,
  • "street": "string",
  • "suite": "string",
  • "city": "string",
  • "postalCode": "string",
  • "state": "string",
  • "stateAbbrev": "string",
  • "country": "string",
  • "phone": "string"
}