Skip to main content
GET
/
public
/
people
/
{PersonId}
curl -i -X GET \
  'https://api.portal.io/public/people/1042?IncludeCounts=true' \
  -H 'Accept: application/json' \
  -H 'X-MSS-API-APPID: YOUR_APP_ID' \
  -H 'X-MSS-API-USERKEY: YOUR_USER_KEY' \
  -H 'X-MSS-CUSTOM-DATE: Mon, 06 Apr 2026 00:22:19 GMT' \
  -H 'X-MSS-SIGNATURE: BASE64_SIGNATURE'
{
  "notes": "Preferred contact via email.",
  "lastModifiedDate": "2026-04-06T00:22:19Z",
  "primaryLocation": {
    "contactFirstName": "Jane",
    "contactLastName": "Smith",
    "contactPhoneNumber": "555-555-0100",
    "contactEmail": "jane.smith@example.com",
    "isPrimary": true,
    "isBilling": false,
    "id": 201,
    "street": "123 Main St",
    "suite": "",
    "city": "Austin",
    "postalCode": "78701",
    "state": "Texas",
    "stateAbbrev": "TX",
    "country": "United States",
    "phone": "555-555-0100"
  },
  "billingLocation": null,
  "proposalCount": 4,
  "paymentCount": 2,
  "id": 1042,
  "partyType": "Person",
  "contactType": "Client",
  "firstName": "Jane",
  "lastName": "Smith",
  "companyName": "",
  "contactEmail": "jane.smith@example.com",
  "contactEmailCC": "",
  "contactPhone": "555-555-0100"
}
Retrieve the full record for a single contact by their numeric ID. The response always includes primaryLocation and billingLocation when they exist. Pass IncludeCounts=true to also receive the number of proposals and payments associated with the contact — useful for dashboards and sync logic.
curl -i -X GET \
  'https://api.portal.io/public/people/1042?IncludeCounts=true' \
  -H 'Accept: application/json' \
  -H 'X-MSS-API-APPID: YOUR_APP_ID' \
  -H 'X-MSS-API-USERKEY: YOUR_USER_KEY' \
  -H 'X-MSS-CUSTOM-DATE: Mon, 06 Apr 2026 00:22:19 GMT' \
  -H 'X-MSS-SIGNATURE: BASE64_SIGNATURE'
{
  "notes": "Preferred contact via email.",
  "lastModifiedDate": "2026-04-06T00:22:19Z",
  "primaryLocation": {
    "contactFirstName": "Jane",
    "contactLastName": "Smith",
    "contactPhoneNumber": "555-555-0100",
    "contactEmail": "jane.smith@example.com",
    "isPrimary": true,
    "isBilling": false,
    "id": 201,
    "street": "123 Main St",
    "suite": "",
    "city": "Austin",
    "postalCode": "78701",
    "state": "Texas",
    "stateAbbrev": "TX",
    "country": "United States",
    "phone": "555-555-0100"
  },
  "billingLocation": null,
  "proposalCount": 4,
  "paymentCount": 2,
  "id": 1042,
  "partyType": "Person",
  "contactType": "Client",
  "firstName": "Jane",
  "lastName": "Smith",
  "companyName": "",
  "contactEmail": "jane.smith@example.com",
  "contactEmailCC": "",
  "contactPhone": "555-555-0100"
}

Headers

Accept
enum<string>
required

Accept Header

Available options:
application/json
X-MSS-API-APPID
string
required

Application Id

X-MSS-CUSTOM-DATE
string
required

A date timestamp of the request

X-MSS-SIGNATURE
string
required

A signature for the request

X-MSS-API-USERKEY
string
required

User API Key

Path Parameters

PersonId
integer<int32>
required

Person Id.

Query Parameters

IncludeCounts
boolean

Response

Success

Contact detail model

lastModifiedDate
string<date-time>
required

UTC timestamp when the contact was last modified

id
integer<int32>
required

Unique numeric identifier of the contact

partyType
enum<string>
required

Contact party type such as Person or Company

Available options:
Undefined,
Person,
Company
contactType
enum<string>
required

Contact category type

Available options:
Undefined,
Client,
Employee,
Contractor,
Other
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

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