InterAction+™ Cloud API

Welcome to InterAction+™ Cloud API

API Endpoints
# Production - US:
https://tm-prod-us.apps.interaction.com/public-api/graphql
# Production - EU:
https://tm-prod-eu.apps.interaction.com/public-api/graphql
# Production - AU:
https://tm-prod-au.apps.interaction.com/public-api/graphql
Version

1.1.0

Purpose

The InterAction+™ Cloud API will provide third parties, professional services, and customer projects access to InterAction+™ data.

API User

Authentication and Authorization for the API is currently targeting system to system scenarios. As a result, we require firms to pick a single user that will act as the consumer of the API.

Queries

activities

Description

Retrieves a list of activities.

Response

Returns an ActivityViewResults

Arguments
Name Description
skip - Int The starting index for pagination. Default = 0
limit - Int The maximum number of items to retrieve. Default = 100
sort - [ActivitySortInput] Specifies the sorting options for the activities.
filter - ActivityFilterInput Specifies the filter settings for the activities.

Example

Query
query activities(
  $skip: Int,
  $limit: Int,
  $sort: [ActivitySortInput],
  $filter: ActivityFilterInput
) {
  activities(
    skip: $skip,
    limit: $limit,
    sort: $sort,
    filter: $filter
  ) {
    totalModels
    models {
      id
      summary
      subject
      type
      typeId
      date
      linkedActivityContacts {
        ...ActivityContactFragment
      }
      originator {
        ...PersonFragment
      }
    }
  }
}
Variables
{
  "skip": 0,
  "limit": 100,
  "sort": [ActivitySortInput],
  "filter": ActivityFilterInput
}
Response
{
  "data": {
    "activities": {
      "totalModels": 123,
      "models": [ActivityView]
    }
  }
}

activity

Description

Retrieves an activity.

Response

Returns an Activity

Arguments
Name Description
id - ID! The ID of the activity to retrieve.

Example

Query
query activity($id: ID!) {
  activity(id: $id) {
    id
    type
    typeId
    activityClass
    typeGroup
    activityStartDate
    lastEditedDate
    subject
    summary
    location
    linkedActivityContacts {
      id
    }
    regarding
    originator {
      id
      displayName
      contactEntity
      notes {
        ...NotesFragment
      }
      visibility
      relationshipScore {
        ...ScoreFragment
      }
      isEmployee
      isPendingFirmContact
      title
      firstName
      middleName
      lastName
      fullName
      suffix
      goesBy
      currentJobTitle
      currentEmployer {
        ...CompanyFragment
      }
      assistantName
      contactTypes {
        ...ContactFolderContactTypeFragment
      }
      tags
      addresses {
        ...AddressFragment
      }
      emailAddresses {
        ...EmailAddressFragment
      }
      phoneNumbers {
        ...PhoneNumberFragment
      }
      activities {
        ...ActivityResultsFragment
      }
      lists {
        ...ContactListResultsFragment
      }
      notIncludedInTheLists {
        ...ContactListResultsFragment
      }
      additionalFieldValues {
        ...AdditionalFieldValueResultsFragment
      }
      contactAdditionalFieldValues {
        ...ContactAdditionalFieldValueResultsFragment
      }
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "activity": {
      "id": "4",
      "type": "abc123",
      "typeId": "4",
      "activityClass": "Activity",
      "typeGroup": "xyz789",
      "activityStartDate": "2007-12-03T10:15:30Z",
      "lastEditedDate": "2007-12-03",
      "subject": "abc123",
      "summary": "xyz789",
      "location": "abc123",
      "linkedActivityContacts": [ActivityContact],
      "regarding": "xyz789",
      "originator": Person
    }
  }
}

activityTypes

Description

Retrieves a list of activity types.

Response

Returns an ActivityTypeResults

Arguments
Name Description
onlyUserCreatable - Boolean Set to true to include only user-creatable activity types. Default = true
onlyUserSearchable - Boolean Set to true to include only user-searchable activity types. Default = false
appointmentTypesOnly - Boolean Set to true to include only appointment types. Default = false
skip - Int The starting index for pagination. Default = 0
limit - Int The maximum number of items to retrieve. Default = 100
watchable - Boolean Set to true to include user-watchable activity types. Default = false

Example

Query
query activityTypes(
  $onlyUserCreatable: Boolean,
  $onlyUserSearchable: Boolean,
  $appointmentTypesOnly: Boolean,
  $skip: Int,
  $limit: Int,
  $watchable: Boolean
) {
  activityTypes(
    onlyUserCreatable: $onlyUserCreatable,
    onlyUserSearchable: $onlyUserSearchable,
    appointmentTypesOnly: $appointmentTypesOnly,
    skip: $skip,
    limit: $limit,
    watchable: $watchable
  ) {
    totalModels
    models {
      id
      name
      groupId
      groupName
      isDefault
      isActive
    }
  }
}
Variables
{
  "onlyUserCreatable": true,
  "onlyUserSearchable": false,
  "appointmentTypesOnly": false,
  "skip": 0,
  "limit": 100,
  "watchable": false
}
Response
{
  "data": {
    "activityTypes": {
      "totalModels": 123,
      "models": [ActivityType]
    }
  }
}

company

Description

Retrieves a company contact.

Response

Returns a Company

Arguments
Name Description
id - ID! The ID of the company contact to retrieve.

Example

Query
query company($id: ID!) {
  company(id: $id) {
    id
    displayName
    contactEntity
    visibility
    notes {
      allNotes {
        ...NoteResultsFragment
      }
    }
    name
    alias
    relationshipScore {
      strength
      description
    }
    isPendingFirmContact
    addresses {
      id
      type
      usage
      label
      street
      city
      administrativeDivision
      additional
      country
      postalCode
      isGlobal
      isMailingAddress
      owningContactId
    }
    tags
    contactTypes {
      id
      name
    }
    emailAddresses {
      id
      type
      usage
      address
      label
      owningContactId
      isGlobal
    }
    phoneNumbers {
      id
      addressId
      number
      label
      type
      usage
      owningContactId
      isGlobal
    }
    activities {
      totalModels
      models {
        ...ActivityFragment
      }
    }
    lists {
      skip
      limit
      totalModels
      models {
        ...ContactListFragment
      }
    }
    notIncludedInTheLists {
      skip
      limit
      totalModels
      models {
        ...ContactListFragment
      }
    }
    additionalFieldValues {
      totalModels
      models {
        ...AdditionalFieldValueFragment
      }
    }
    contactAdditionalFieldValues {
      totalModels
      models {
        ...ContactAdditionalFieldValueFragment
      }
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "company": {
      "id": "4",
      "displayName": "xyz789",
      "contactEntity": "Any",
      "visibility": "unknown",
      "notes": Notes,
      "name": "abc123",
      "alias": "abc123",
      "relationshipScore": Score,
      "isPendingFirmContact": true,
      "addresses": [Address],
      "tags": ["xyz789"],
      "contactTypes": [ContactFolderContactType],
      "emailAddresses": [EmailAddress],
      "phoneNumbers": [PhoneNumber],
      "activities": ActivityResults,
      "lists": ContactListResults,
      "notIncludedInTheLists": ContactListResults,
      "additionalFieldValues": AdditionalFieldValueResults,
      "contactAdditionalFieldValues": ContactAdditionalFieldValueResults
    }
  }
}

contact

Description

Retrieves a contact.

Response

Returns a Contact

Arguments
Name Description
id - ID! The ID of the contact to retrieve.

Example

Query
query contact($id: ID!) {
  contact(id: $id) {
    id
    displayName
    contactEntity
    visibility
    relationshipScore {
      strength
      description
    }
    tags
    contactTypes {
      id
      name
    }
    addresses {
      id
      type
      usage
      label
      street
      city
      administrativeDivision
      additional
      country
      postalCode
      isGlobal
      isMailingAddress
      owningContactId
    }
    emailAddresses {
      id
      type
      usage
      address
      label
      owningContactId
      isGlobal
    }
    phoneNumbers {
      id
      addressId
      number
      label
      type
      usage
      owningContactId
      isGlobal
    }
    activities {
      totalModels
      models {
        ...ActivityFragment
      }
    }
    notes {
      allNotes {
        ...NoteResultsFragment
      }
    }
    lists {
      skip
      limit
      totalModels
      models {
        ...ContactListFragment
      }
    }
    notIncludedInTheLists {
      skip
      limit
      totalModels
      models {
        ...ContactListFragment
      }
    }
    additionalFieldValues {
      totalModels
      models {
        ...AdditionalFieldValueFragment
      }
    }
    contactAdditionalFieldValues {
      totalModels
      models {
        ...ContactAdditionalFieldValueFragment
      }
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "contact": {
      "id": "4",
      "displayName": "xyz789",
      "contactEntity": "Any",
      "visibility": "unknown",
      "relationshipScore": Score,
      "tags": ["xyz789"],
      "contactTypes": [ContactFolderContactType],
      "addresses": [Address],
      "emailAddresses": [EmailAddress],
      "phoneNumbers": [PhoneNumber],
      "activities": ActivityResults,
      "notes": Notes,
      "lists": ContactListResults,
      "notIncludedInTheLists": ContactListResults,
      "additionalFieldValues": AdditionalFieldValueResults,
      "contactAdditionalFieldValues": ContactAdditionalFieldValueResults
    }
  }
}

contactTypes

Description

Retrieves contact types based on specified criteria.

Response

Returns a ContactTypeResults

Arguments
Name Description
input - GetContactTypeInput The filter criteria for the contact types.
skip - Int The starting index for pagination. Default = 0
limit - Int The maximum number of items to retrieve. Default = 100

Example

Query
query contactTypes(
  $input: GetContactTypeInput,
  $skip: Int,
  $limit: Int
) {
  contactTypes(
    input: $input,
    skip: $skip,
    limit: $limit
  ) {
    totalModels
    models {
      id
      name
      pluralName
      folderId
      folderType
      allowedContactEntity
    }
  }
}
Variables
{"input": GetContactTypeInput, "skip": 0, "limit": 100}
Response
{
  "data": {
    "contactTypes": {
      "totalModels": 123,
      "models": [ContactType]
    }
  }
}

countries

Description

Retrieve a list of countries.

Response

Returns a CountryResults

Arguments
Name Description
filter - CountryFilter Specifies the filter settings for the countries.

Example

Query
query countries($filter: CountryFilter) {
  countries(filter: $filter) {
    totalModels
    models {
      id
      name
      isoCode
      statusIndicator
      administrativeDivisions {
        ...AdministrativeDivisionsFragment
      }
    }
  }
}
Variables
{"filter": CountryFilter}
Response
{
  "data": {
    "countries": {"totalModels": 987, "models": [Country]}
  }
}

country

Description

Retrieves a country.

Response

Returns a Country

Arguments
Name Description
id - ID! The ID of the country to retrieve.

Example

Query
query country($id: ID!) {
  country(id: $id) {
    id
    name
    isoCode
    statusIndicator
    administrativeDivisions {
      states {
        ...StateFragment
      }
      useStates
      stateLabel
      postalCodeLabel
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "country": {
      "id": 4,
      "name": "abc123",
      "isoCode": "xyz789",
      "statusIndicator": 123,
      "administrativeDivisions": AdministrativeDivisions
    }
  }
}

firm

Description

Retrieve the firm settings.

Response

Returns a Firm

Example

Query
query firm {
  firm {
    settings {
      minimumRequiredFields
      titles
      suffixes
      languageSettings {
        ...LanguageSettingsFragment
      }
      genderSettings {
        ...GenderSettingsFragment
      }
      defaultNewActivityTypeId
    }
  }
}
Response
{"data": {"firm": {"settings": FirmSettings}}}

folderTypes

Description

Retrieves active list types for the user.

Response

Returns a FolderTypeResults

Arguments
Name Description
listClass - [ListClass] Specify the list class to filter by. If not provided, all list classes will be returned. You must only specify one list class at a time.

Example

Query
query folderTypes($listClass: [ListClass]) {
  folderTypes(listClass: $listClass) {
    totalModels
    models {
      id
      name
      listClass
      directoryClassName
      isActive
    }
  }
}
Variables
{"listClass": ["contactTypes"]}
Response
{
  "data": {
    "folderTypes": {
      "totalModels": 987,
      "models": [FolderType]
    }
  }
}

list

Description

Retrieves a list.

Response

Returns a List

Arguments
Name Description
id - ID! The ID of the list to retrieve.

Example

Query
query list($id: ID!) {
  list(id: $id) {
    id
    name
    description
    listType {
      id
      name
      listClass
      directoryClassName
      isActive
    }
    allowedLinkInto
    allowedRemoveFrom
    addAllowed
    deleteAllowed
    addActivityAllowed
    addNoteAllowed
    ownerName
    creatorName
    allowedContactEntity
    isAdministrator
    contacts {
      totalModels
      models {
        ...ListContactFragment
      }
    }
    additionalFieldDefinitions {
      totalModels
      models {
        ...AdditionalFieldDefinitionFragment
      }
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "list": {
      "id": "4",
      "name": "abc123",
      "description": "xyz789",
      "listType": FolderType,
      "allowedLinkInto": false,
      "allowedRemoveFrom": true,
      "addAllowed": false,
      "deleteAllowed": true,
      "addActivityAllowed": true,
      "addNoteAllowed": false,
      "ownerName": "xyz789",
      "creatorName": "xyz789",
      "allowedContactEntity": "Any",
      "isAdministrator": false,
      "contacts": ListContactResults,
      "additionalFieldDefinitions": AdditionalFieldDefinitionResults
    }
  }
}

lists

Description

Retrieve lists based on specified criteria.

Response

Returns a ListResults

Arguments
Name Description
listClass - [ListClass] Filter by list class types.
listType - ListType Filter options for list type (All, MyFrequentlyUsed). Default = all
skip - Int The starting index for pagination. Default = 0
limit - Int The maximum number of items to retrieve. Default = 100
sort - SortInput Sorting options for results.
filter - [ListFilterInput]

Additional filter settings for lists. Supports the following options:

  • name: String search that matches list names containing the value (use 'value' parameter)
  • highlyManagedOnly: Set to 'true' to show only highly managed lists (use 'value' parameter)
  • listContactType: Set to 'person' or 'company' to filter by allowed entity types for a list (use 'value' parameter)
  • listTypeIds: Filter by specific list type IDs (must use 'values' parameter, not 'value')

Note: For all filters except listTypeIds, use the 'value' parameter. For listTypeIds, use only the 'values' parameter.

Example

Query
query lists(
  $listClass: [ListClass],
  $listType: ListType,
  $skip: Int,
  $limit: Int,
  $sort: SortInput,
  $filter: [ListFilterInput]
) {
  lists(
    listClass: $listClass,
    listType: $listType,
    skip: $skip,
    limit: $limit,
    sort: $sort,
    filter: $filter
  ) {
    skip
    limit
    totalModels
    models {
      id
      name
      description
      listType {
        ...FolderTypeFragment
      }
      allowedLinkInto
      allowedRemoveFrom
      addAllowed
      deleteAllowed
      addActivityAllowed
      addNoteAllowed
      ownerName
      creatorName
      allowedContactEntity
      isAdministrator
      contacts {
        ...ListContactResultsFragment
      }
      additionalFieldDefinitions {
        ...AdditionalFieldDefinitionResultsFragment
      }
    }
  }
}
Variables
{
  "listClass": ["contactTypes"],
  "listType": "all",
  "skip": 0,
  "limit": 100,
  "sort": SortInput,
  "filter": [ListFilterInput]
}
Response
{
  "data": {
    "lists": {
      "skip": 123,
      "limit": 987,
      "totalModels": 987,
      "models": [List]
    }
  }
}

people

Description

Retrieves a list of person contacts.

Response

Returns [Person]

Arguments
Name Description
ids - [ID!]! The list of person contact IDs to retrieve.

Example

Query
query people($ids: [ID!]!) {
  people(ids: $ids) {
    id
    displayName
    contactEntity
    notes {
      allNotes {
        ...NoteResultsFragment
      }
    }
    visibility
    relationshipScore {
      strength
      description
    }
    isEmployee
    isPendingFirmContact
    title
    firstName
    middleName
    lastName
    fullName
    suffix
    goesBy
    currentJobTitle
    currentEmployer {
      id
      displayName
      contactEntity
      visibility
      notes {
        ...NotesFragment
      }
      name
      alias
      relationshipScore {
        ...ScoreFragment
      }
      isPendingFirmContact
      addresses {
        ...AddressFragment
      }
      tags
      contactTypes {
        ...ContactFolderContactTypeFragment
      }
      emailAddresses {
        ...EmailAddressFragment
      }
      phoneNumbers {
        ...PhoneNumberFragment
      }
      activities {
        ...ActivityResultsFragment
      }
      lists {
        ...ContactListResultsFragment
      }
      notIncludedInTheLists {
        ...ContactListResultsFragment
      }
      additionalFieldValues {
        ...AdditionalFieldValueResultsFragment
      }
      contactAdditionalFieldValues {
        ...ContactAdditionalFieldValueResultsFragment
      }
    }
    assistantName
    contactTypes {
      id
      name
    }
    tags
    addresses {
      id
      type
      usage
      label
      street
      city
      administrativeDivision
      additional
      country
      postalCode
      isGlobal
      isMailingAddress
      owningContactId
    }
    emailAddresses {
      id
      type
      usage
      address
      label
      owningContactId
      isGlobal
    }
    phoneNumbers {
      id
      addressId
      number
      label
      type
      usage
      owningContactId
      isGlobal
    }
    activities {
      totalModels
      models {
        ...ActivityFragment
      }
    }
    lists {
      skip
      limit
      totalModels
      models {
        ...ContactListFragment
      }
    }
    notIncludedInTheLists {
      skip
      limit
      totalModels
      models {
        ...ContactListFragment
      }
    }
    additionalFieldValues {
      totalModels
      models {
        ...AdditionalFieldValueFragment
      }
    }
    contactAdditionalFieldValues {
      totalModels
      models {
        ...ContactAdditionalFieldValueFragment
      }
    }
  }
}
Variables
{"ids": ["4"]}
Response
{
  "data": {
    "people": [
      {
        "id": "4",
        "displayName": "xyz789",
        "contactEntity": "Any",
        "notes": Notes,
        "visibility": "unknown",
        "relationshipScore": Score,
        "isEmployee": true,
        "isPendingFirmContact": true,
        "title": "xyz789",
        "firstName": "xyz789",
        "middleName": "abc123",
        "lastName": "abc123",
        "fullName": "xyz789",
        "suffix": "xyz789",
        "goesBy": "xyz789",
        "currentJobTitle": "abc123",
        "currentEmployer": Company,
        "assistantName": "abc123",
        "contactTypes": [ContactFolderContactType],
        "tags": ["abc123"],
        "addresses": [Address],
        "emailAddresses": [EmailAddress],
        "phoneNumbers": [PhoneNumber],
        "activities": ActivityResults,
        "lists": ContactListResults,
        "notIncludedInTheLists": ContactListResults,
        "additionalFieldValues": AdditionalFieldValueResults,
        "contactAdditionalFieldValues": ContactAdditionalFieldValueResults
      }
    ]
  }
}

person

Description

Retrieves a person contact.

Response

Returns a Person

Arguments
Name Description
id - ID! The ID of the person contact to retrieve.

Example

Query
query person($id: ID!) {
  person(id: $id) {
    id
    displayName
    contactEntity
    notes {
      allNotes {
        ...NoteResultsFragment
      }
    }
    visibility
    relationshipScore {
      strength
      description
    }
    isEmployee
    isPendingFirmContact
    title
    firstName
    middleName
    lastName
    fullName
    suffix
    goesBy
    currentJobTitle
    currentEmployer {
      id
      displayName
      contactEntity
      visibility
      notes {
        ...NotesFragment
      }
      name
      alias
      relationshipScore {
        ...ScoreFragment
      }
      isPendingFirmContact
      addresses {
        ...AddressFragment
      }
      tags
      contactTypes {
        ...ContactFolderContactTypeFragment
      }
      emailAddresses {
        ...EmailAddressFragment
      }
      phoneNumbers {
        ...PhoneNumberFragment
      }
      activities {
        ...ActivityResultsFragment
      }
      lists {
        ...ContactListResultsFragment
      }
      notIncludedInTheLists {
        ...ContactListResultsFragment
      }
      additionalFieldValues {
        ...AdditionalFieldValueResultsFragment
      }
      contactAdditionalFieldValues {
        ...ContactAdditionalFieldValueResultsFragment
      }
    }
    assistantName
    contactTypes {
      id
      name
    }
    tags
    addresses {
      id
      type
      usage
      label
      street
      city
      administrativeDivision
      additional
      country
      postalCode
      isGlobal
      isMailingAddress
      owningContactId
    }
    emailAddresses {
      id
      type
      usage
      address
      label
      owningContactId
      isGlobal
    }
    phoneNumbers {
      id
      addressId
      number
      label
      type
      usage
      owningContactId
      isGlobal
    }
    activities {
      totalModels
      models {
        ...ActivityFragment
      }
    }
    lists {
      skip
      limit
      totalModels
      models {
        ...ContactListFragment
      }
    }
    notIncludedInTheLists {
      skip
      limit
      totalModels
      models {
        ...ContactListFragment
      }
    }
    additionalFieldValues {
      totalModels
      models {
        ...AdditionalFieldValueFragment
      }
    }
    contactAdditionalFieldValues {
      totalModels
      models {
        ...ContactAdditionalFieldValueFragment
      }
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "person": {
      "id": 4,
      "displayName": "xyz789",
      "contactEntity": "Any",
      "notes": Notes,
      "visibility": "unknown",
      "relationshipScore": Score,
      "isEmployee": true,
      "isPendingFirmContact": true,
      "title": "xyz789",
      "firstName": "abc123",
      "middleName": "xyz789",
      "lastName": "xyz789",
      "fullName": "abc123",
      "suffix": "xyz789",
      "goesBy": "xyz789",
      "currentJobTitle": "xyz789",
      "currentEmployer": Company,
      "assistantName": "abc123",
      "contactTypes": [ContactFolderContactType],
      "tags": ["xyz789"],
      "addresses": [Address],
      "emailAddresses": [EmailAddress],
      "phoneNumbers": [PhoneNumber],
      "activities": ActivityResults,
      "lists": ContactListResults,
      "notIncludedInTheLists": ContactListResults,
      "additionalFieldValues": AdditionalFieldValueResults,
      "contactAdditionalFieldValues": ContactAdditionalFieldValueResults
    }
  }
}

profile

Description

Retrieves a contact's profile information.

Response

Returns a ProfileResults

Arguments
Name Description
contactId - ID! The ID of the contact whose profile you want to retrieve.

Example

Query
query profile($contactId: ID!) {
  profile(contactId: $contactId) {
    totalModels
    models {
      profileId
      name
      displayOrder
      listingType
      userCriterionIds
      groupCriterionIds
      contactTypeIds
      profileItems {
        ...ProfileItemFragment
      }
    }
  }
}
Variables
{"contactId": "4"}
Response
{
  "data": {
    "profile": {"totalModels": 123, "models": [Profile]}
  }
}

regionalSettings

Description

Retrieve regional settings for the current user.

Response

Returns a RegionalSettings

Example

Query
query regionalSettings {
  regionalSettings {
    language {
      id
      code
      name
    }
    country {
      id
      code
      name
    }
    locale {
      id
      code
      name
    }
    languages {
      id
      name
      localName
      isoCode
    }
  }
}
Response
{
  "data": {
    "regionalSettings": {
      "language": RegionalSetting,
      "country": RegionalSetting,
      "locale": RegionalSetting,
      "languages": [RegionalLanguage]
    }
  }
}

searchFirmContacts

Description

Retrieve firm contacts based on specified criteria.

Response

Returns a ContactResults

Arguments
Name Description
skip - Int The starting index for pagination. Default = 0
limit - Int The maximum number of items to retrieve. Default = 100
sort - SortInput Sorting options for results.
filter - [ContactFilterInput]

Specifies the filter settings for the firm contacts.

For ids, industryIds and contactTypeIds ContactFilterField options set the 'values' field. For remaining ContactFilterField options set the 'value' field.

Special filter options:

  • contactType: Set value to either 'company' or 'person' to filter by entity type
  • contactClassType: Set value to 'IAL' for Firm Contacts or 'IAC' for My Contacts
  • lastNameSoundsLike: Set value to 'true' for sounds like searches on 'lastName' field
  • companySoundsLike: Set value to 'true' for sounds like searches on 'companyName' field
  • mailingAddressesOnly: Set value to 'true' to include only contacts with mailing addresses
  • includeListSpecific: Set value to 'true' to include list-specific contacts

Example

Query
query searchFirmContacts(
  $skip: Int,
  $limit: Int,
  $sort: SortInput,
  $filter: [ContactFilterInput]
) {
  searchFirmContacts(
    skip: $skip,
    limit: $limit,
    sort: $sort,
    filter: $filter
  ) {
    searchTerms {
      term
      firstName
      lastName
      company
      emailAddress
    }
    resultsFrom
    totalModels
    models {
      id
      displayName
      contactEntity
      visibility
      relationshipScore {
        ...ScoreFragment
      }
      tags
      contactTypes {
        ...ContactFolderContactTypeFragment
      }
      addresses {
        ...AddressFragment
      }
      emailAddresses {
        ...EmailAddressFragment
      }
      phoneNumbers {
        ...PhoneNumberFragment
      }
      activities {
        ...ActivityResultsFragment
      }
      notes {
        ...NotesFragment
      }
      lists {
        ...ContactListResultsFragment
      }
      notIncludedInTheLists {
        ...ContactListResultsFragment
      }
      additionalFieldValues {
        ...AdditionalFieldValueResultsFragment
      }
      contactAdditionalFieldValues {
        ...ContactAdditionalFieldValueResultsFragment
      }
    }
  }
}
Variables
{
  "skip": 0,
  "limit": 100,
  "sort": SortInput,
  "filter": [ContactFilterInput]
}
Response
{
  "data": {
    "searchFirmContacts": {
      "searchTerms": SearchTerms,
      "resultsFrom": "Term",
      "totalModels": 123,
      "models": [Contact]
    }
  }
}

Mutations

addActivity

Description

Add an activity.

Response

Returns an Activity

Arguments
Name Description
input - AddActivityInput! Input for creating a new activity.

Example

Query
mutation addActivity($input: AddActivityInput!) {
  addActivity(input: $input) {
    id
    type
    typeId
    activityClass
    typeGroup
    activityStartDate
    lastEditedDate
    subject
    summary
    location
    linkedActivityContacts {
      id
    }
    regarding
    originator {
      id
      displayName
      contactEntity
      notes {
        ...NotesFragment
      }
      visibility
      relationshipScore {
        ...ScoreFragment
      }
      isEmployee
      isPendingFirmContact
      title
      firstName
      middleName
      lastName
      fullName
      suffix
      goesBy
      currentJobTitle
      currentEmployer {
        ...CompanyFragment
      }
      assistantName
      contactTypes {
        ...ContactFolderContactTypeFragment
      }
      tags
      addresses {
        ...AddressFragment
      }
      emailAddresses {
        ...EmailAddressFragment
      }
      phoneNumbers {
        ...PhoneNumberFragment
      }
      activities {
        ...ActivityResultsFragment
      }
      lists {
        ...ContactListResultsFragment
      }
      notIncludedInTheLists {
        ...ContactListResultsFragment
      }
      additionalFieldValues {
        ...AdditionalFieldValueResultsFragment
      }
      contactAdditionalFieldValues {
        ...ContactAdditionalFieldValueResultsFragment
      }
    }
  }
}
Variables
{"input": AddActivityInput}
Response
{
  "data": {
    "addActivity": {
      "id": "4",
      "type": "xyz789",
      "typeId": 4,
      "activityClass": "Activity",
      "typeGroup": "xyz789",
      "activityStartDate": "2007-12-03T10:15:30Z",
      "lastEditedDate": "2007-12-03",
      "subject": "abc123",
      "summary": "xyz789",
      "location": "xyz789",
      "linkedActivityContacts": [ActivityContact],
      "regarding": "abc123",
      "originator": Person
    }
  }
}

addAdditionalFieldDefinition

Description

Create a new additional field definition on a list.

Arguments
Name Description
input - AddAdditionalFieldDefinitionInput! Input for creating a new additional field definition.

Example

Query
mutation addAdditionalFieldDefinition($input: AddAdditionalFieldDefinitionInput!) {
  addAdditionalFieldDefinition(input: $input) {
    success
    additionalFieldDefinition {
      id
      name
      description
      dataTypeDisplayName
      fieldDataType
      listDataType {
        ...AdditionalFieldListDataTypeFragment
      }
      allowsSecondaryField
      secondaryFieldName
      allowsMultipleValues
      booleanDataTypeTrueValue
      booleanDataTypeFalseValue
      numericDataTypeMaxValue
      numericDataTypeMinValue
      decimalDataTypePrecision
      stringDataTypeMaxLength
      stringDataTypeMultiLine
      userDataTypeUserProfessional
      userDataTypeUserActive
    }
  }
}
Variables
{"input": AddAdditionalFieldDefinitionInput}
Response
{
  "data": {
    "addAdditionalFieldDefinition": {
      "success": true,
      "additionalFieldDefinition": AdditionalFieldDefinition
    }
  }
}

addCompany

Description

Add a company contact.

Response

Returns a MutateCompanyResults

Arguments
Name Description
input - AddCompanyInput! Input for creating a new company.

Example

Query
mutation addCompany($input: AddCompanyInput!) {
  addCompany(input: $input) {
    validationErrors {
      propertyName
      message
    }
    item {
      id
      displayName
      contactEntity
      visibility
      notes {
        ...NotesFragment
      }
      name
      alias
      relationshipScore {
        ...ScoreFragment
      }
      isPendingFirmContact
      addresses {
        ...AddressFragment
      }
      tags
      contactTypes {
        ...ContactFolderContactTypeFragment
      }
      emailAddresses {
        ...EmailAddressFragment
      }
      phoneNumbers {
        ...PhoneNumberFragment
      }
      activities {
        ...ActivityResultsFragment
      }
      lists {
        ...ContactListResultsFragment
      }
      notIncludedInTheLists {
        ...ContactListResultsFragment
      }
      additionalFieldValues {
        ...AdditionalFieldValueResultsFragment
      }
      contactAdditionalFieldValues {
        ...ContactAdditionalFieldValueResultsFragment
      }
    }
  }
}
Variables
{"input": AddCompanyInput}
Response
{
  "data": {
    "addCompany": {
      "validationErrors": [ValidationErrors],
      "item": Company
    }
  }
}

addContactsToLists

Description

Adds contacts to lists.

Response

Returns an AddContactsToListResults

Arguments
Name Description
listIds - [ID!]! The list of list IDs to which the contacts will be added.
contactIds - [ID!]! The list of contact IDs to be added to the lists.

Example

Query
mutation addContactsToLists(
  $listIds: [ID!]!,
  $contactIds: [ID!]!
) {
  addContactsToLists(
    listIds: $listIds,
    contactIds: $contactIds
  ) {
    totalCount
    successCount
    resultText
    skippedCount
    skippedContactIds
  }
}
Variables
{"listIds": ["4"], "contactIds": [4]}
Response
{
  "data": {
    "addContactsToLists": {
      "totalCount": 987,
      "successCount": 123,
      "resultText": "xyz789",
      "skippedCount": 123,
      "skippedContactIds": ["abc123"]
    }
  }
}

addList

Description

Create a new marketing list.

Response

Returns an AddListResult

Arguments
Name Description
input - AddListInput! Input for creating a new marketing list.

Example

Query
mutation addList($input: AddListInput!) {
  addList(input: $input) {
    item {
      id
      name
      description
      listType {
        ...FolderTypeFragment
      }
      allowedLinkInto
      allowedRemoveFrom
      addAllowed
      deleteAllowed
      addActivityAllowed
      addNoteAllowed
      ownerName
      creatorName
      allowedContactEntity
      isAdministrator
      contacts {
        ...ListContactResultsFragment
      }
      additionalFieldDefinitions {
        ...AdditionalFieldDefinitionResultsFragment
      }
    }
    validationErrors {
      propertyName
      message
    }
  }
}
Variables
{"input": AddListInput}
Response
{
  "data": {
    "addList": {
      "item": List,
      "validationErrors": [ValidationErrors]
    }
  }
}

addPerson

Description

Add a person contact.

Response

Returns an AddPersonResults

Arguments
Name Description
input - AddPersonInput! Input for adding a new person.

Example

Query
mutation addPerson($input: AddPersonInput!) {
  addPerson(input: $input) {
    status
    validationErrors {
      propertyName
      message
    }
    item {
      id
      displayName
      contactEntity
      notes {
        ...NotesFragment
      }
      visibility
      relationshipScore {
        ...ScoreFragment
      }
      isEmployee
      isPendingFirmContact
      title
      firstName
      middleName
      lastName
      fullName
      suffix
      goesBy
      currentJobTitle
      currentEmployer {
        ...CompanyFragment
      }
      assistantName
      contactTypes {
        ...ContactFolderContactTypeFragment
      }
      tags
      addresses {
        ...AddressFragment
      }
      emailAddresses {
        ...EmailAddressFragment
      }
      phoneNumbers {
        ...PhoneNumberFragment
      }
      activities {
        ...ActivityResultsFragment
      }
      lists {
        ...ContactListResultsFragment
      }
      notIncludedInTheLists {
        ...ContactListResultsFragment
      }
      additionalFieldValues {
        ...AdditionalFieldValueResultsFragment
      }
      contactAdditionalFieldValues {
        ...ContactAdditionalFieldValueResultsFragment
      }
    }
  }
}
Variables
{"input": AddPersonInput}
Response
{
  "data": {
    "addPerson": {
      "status": "NoChange",
      "validationErrors": [ValidationErrors],
      "item": Person
    }
  }
}

addPublicLocation

Description

Add a new location to a contact.

Response

Returns a MutateLocationResults

Arguments
Name Description
input - AddLocationInput! Input for creating a new contact location.

Example

Query
mutation addPublicLocation($input: AddLocationInput!) {
  addPublicLocation(input: $input) {
    status
    validationErrors {
      propertyName
      message
    }
    item {
      id
      displayName
      contactEntity
      visibility
      relationshipScore {
        ...ScoreFragment
      }
      tags
      contactTypes {
        ...ContactFolderContactTypeFragment
      }
      addresses {
        ...AddressFragment
      }
      emailAddresses {
        ...EmailAddressFragment
      }
      phoneNumbers {
        ...PhoneNumberFragment
      }
      activities {
        ...ActivityResultsFragment
      }
      notes {
        ...NotesFragment
      }
      lists {
        ...ContactListResultsFragment
      }
      notIncludedInTheLists {
        ...ContactListResultsFragment
      }
      additionalFieldValues {
        ...AdditionalFieldValueResultsFragment
      }
      contactAdditionalFieldValues {
        ...ContactAdditionalFieldValueResultsFragment
      }
    }
  }
}
Variables
{"input": AddLocationInput}
Response
{
  "data": {
    "addPublicLocation": {
      "status": "NoChange",
      "validationErrors": [ValidationErrors],
      "item": Contact
    }
  }
}

addWorkingList

Description

Create a new working list.

Response

Returns an AddWorkingListResult

Arguments
Name Description
input - AddListInput! Input for creating a new working list.

Example

Query
mutation addWorkingList($input: AddListInput!) {
  addWorkingList(input: $input) {
    success
    errorText
    item {
      id
      name
      description
      listType {
        ...FolderTypeFragment
      }
      allowedLinkInto
      allowedRemoveFrom
      addAllowed
      deleteAllowed
      addActivityAllowed
      addNoteAllowed
      ownerName
      creatorName
      allowedContactEntity
      isAdministrator
      contacts {
        ...ListContactResultsFragment
      }
      additionalFieldDefinitions {
        ...AdditionalFieldDefinitionResultsFragment
      }
    }
  }
}
Variables
{"input": AddListInput}
Response
{
  "data": {
    "addWorkingList": {
      "success": false,
      "errorText": "abc123",
      "item": List
    }
  }
}

changePublicContactLocation

Description

Update the location for a firm contact.

Response

Returns a MutateLocationResults

Arguments
Name Description
input - LocationChangeInput! Input for updating a contact's location.

Example

Query
mutation changePublicContactLocation($input: LocationChangeInput!) {
  changePublicContactLocation(input: $input) {
    status
    validationErrors {
      propertyName
      message
    }
    item {
      id
      displayName
      contactEntity
      visibility
      relationshipScore {
        ...ScoreFragment
      }
      tags
      contactTypes {
        ...ContactFolderContactTypeFragment
      }
      addresses {
        ...AddressFragment
      }
      emailAddresses {
        ...EmailAddressFragment
      }
      phoneNumbers {
        ...PhoneNumberFragment
      }
      activities {
        ...ActivityResultsFragment
      }
      notes {
        ...NotesFragment
      }
      lists {
        ...ContactListResultsFragment
      }
      notIncludedInTheLists {
        ...ContactListResultsFragment
      }
      additionalFieldValues {
        ...AdditionalFieldValueResultsFragment
      }
      contactAdditionalFieldValues {
        ...ContactAdditionalFieldValueResultsFragment
      }
    }
  }
}
Variables
{"input": LocationChangeInput}
Response
{
  "data": {
    "changePublicContactLocation": {
      "status": "NoChange",
      "validationErrors": [ValidationErrors],
      "item": Contact
    }
  }
}

editAdditionalFieldDefinition

Description

Update an existing additional field definition.

Arguments
Name Description
input - EditAdditionalFieldDefinitionInput! Input for updating an existing additional field definition.

Example

Query
mutation editAdditionalFieldDefinition($input: EditAdditionalFieldDefinitionInput!) {
  editAdditionalFieldDefinition(input: $input) {
    success
    resultText
    additionalFieldDefinition {
      id
      name
      description
      dataTypeDisplayName
      fieldDataType
      listDataType {
        ...AdditionalFieldListDataTypeFragment
      }
      allowsSecondaryField
      secondaryFieldName
      allowsMultipleValues
      booleanDataTypeTrueValue
      booleanDataTypeFalseValue
      numericDataTypeMaxValue
      numericDataTypeMinValue
      decimalDataTypePrecision
      stringDataTypeMaxLength
      stringDataTypeMultiLine
      userDataTypeUserProfessional
      userDataTypeUserActive
    }
  }
}
Variables
{"input": EditAdditionalFieldDefinitionInput}
Response
{
  "data": {
    "editAdditionalFieldDefinition": {
      "success": false,
      "resultText": "xyz789",
      "additionalFieldDefinition": AdditionalFieldDefinition
    }
  }
}

editListDetails

Description

Update the details of an existing marketing list.

Response

Returns an EditListDetailsResult

Arguments
Name Description
input - EditListDetailsInput! Input for updating the details of a marketing list.

Example

Query
mutation editListDetails($input: EditListDetailsInput!) {
  editListDetails(input: $input) {
    item {
      id
      name
      description
      listType {
        ...FolderTypeFragment
      }
      allowedLinkInto
      allowedRemoveFrom
      addAllowed
      deleteAllowed
      addActivityAllowed
      addNoteAllowed
      ownerName
      creatorName
      allowedContactEntity
      isAdministrator
      contacts {
        ...ListContactResultsFragment
      }
      additionalFieldDefinitions {
        ...AdditionalFieldDefinitionResultsFragment
      }
    }
    validationErrors {
      propertyName
      message
    }
  }
}
Variables
{"input": EditListDetailsInput}
Response
{
  "data": {
    "editListDetails": {
      "item": List,
      "validationErrors": [ValidationErrors]
    }
  }
}

editPersonEmploymentInformation

Description

Update the employment information of a person.

Response

Returns a MutatePersonResults

Arguments
Name Description
input - EditPersonEmploymentInformationInput! Input for updating a person's employment information.

Example

Query
mutation editPersonEmploymentInformation($input: EditPersonEmploymentInformationInput!) {
  editPersonEmploymentInformation(input: $input) {
    status
    validationErrors {
      propertyName
      message
    }
    item {
      id
      displayName
      contactEntity
      notes {
        ...NotesFragment
      }
      visibility
      relationshipScore {
        ...ScoreFragment
      }
      isEmployee
      isPendingFirmContact
      title
      firstName
      middleName
      lastName
      fullName
      suffix
      goesBy
      currentJobTitle
      currentEmployer {
        ...CompanyFragment
      }
      assistantName
      contactTypes {
        ...ContactFolderContactTypeFragment
      }
      tags
      addresses {
        ...AddressFragment
      }
      emailAddresses {
        ...EmailAddressFragment
      }
      phoneNumbers {
        ...PhoneNumberFragment
      }
      activities {
        ...ActivityResultsFragment
      }
      lists {
        ...ContactListResultsFragment
      }
      notIncludedInTheLists {
        ...ContactListResultsFragment
      }
      additionalFieldValues {
        ...AdditionalFieldValueResultsFragment
      }
      contactAdditionalFieldValues {
        ...ContactAdditionalFieldValueResultsFragment
      }
    }
  }
}
Variables
{"input": EditPersonEmploymentInformationInput}
Response
{
  "data": {
    "editPersonEmploymentInformation": {
      "status": "NoChange",
      "validationErrors": [ValidationErrors],
      "item": Person
    }
  }
}

editWorkingListDetails

Description

Update the details of an existing working list.

Response

Returns an EditWorkingListDetailsResult

Arguments
Name Description
input - EditWorkingListDetailsInput! Input for updating the details of a working list.

Example

Query
mutation editWorkingListDetails($input: EditWorkingListDetailsInput!) {
  editWorkingListDetails(input: $input) {
    success
    errorText
    item {
      id
      name
      description
      listType {
        ...FolderTypeFragment
      }
      allowedLinkInto
      allowedRemoveFrom
      addAllowed
      deleteAllowed
      addActivityAllowed
      addNoteAllowed
      ownerName
      creatorName
      allowedContactEntity
      isAdministrator
      contacts {
        ...ListContactResultsFragment
      }
      additionalFieldDefinitions {
        ...AdditionalFieldDefinitionResultsFragment
      }
    }
  }
}
Variables
{"input": EditWorkingListDetailsInput}
Response
{
  "data": {
    "editWorkingListDetails": {
      "success": true,
      "errorText": "abc123",
      "item": List
    }
  }
}

removeActivity

Description

Remove an activity.

Response

Returns a Boolean

Arguments
Name Description
id - ID! ID of the activity to be removed.

Example

Query
mutation removeActivity($id: ID!) {
  removeActivity(id: $id)
}
Variables
{"id": "4"}
Response
{"data": {"removeActivity": false}}

removeAdditionalFieldDefinition

Description

Remove an additional field definition.

Response

Returns a Boolean

Arguments
Name Description
id - ID! ID of the additional field definition to remove.

Example

Query
mutation removeAdditionalFieldDefinition($id: ID!) {
  removeAdditionalFieldDefinition(id: $id)
}
Variables
{"id": 4}
Response
{"data": {"removeAdditionalFieldDefinition": true}}

removeContactFromLists

Description

Removes a contact from multiple lists.

Arguments
Name Description
input - RemoveContactFromListsInput! Input for removing a contact from lists.

Example

Query
mutation removeContactFromLists($input: RemoveContactFromListsInput!) {
  removeContactFromLists(input: $input) {
    item {
      successIds
      failedIds
      pendingIds
      resultText
    }
    validationErrors {
      propertyName
      message
    }
  }
}
Variables
{"input": RemoveContactFromListsInput}
Response
{
  "data": {
    "removeContactFromLists": {
      "item": RemoveContactFromListsResults,
      "validationErrors": [ValidationErrors]
    }
  }
}

removeContactsFromList

Description

Removes multiple contacts from a list.

Response

Returns a MutateListResults

Arguments
Name Description
listId - ID! The ID of the list to remove contacts from.
contactIds - [ID!]! This list of contact IDs to remove from the list.

Example

Query
mutation removeContactsFromList(
  $listId: ID!,
  $contactIds: [ID!]!
) {
  removeContactsFromList(
    listId: $listId,
    contactIds: $contactIds
  ) {
    contactsEffected
    pendingContactsEffected
    resultText
  }
}
Variables
{
  "listId": "4",
  "contactIds": ["4"]
}
Response
{
  "data": {
    "removeContactsFromList": {
      "contactsEffected": 987,
      "pendingContactsEffected": 987,
      "resultText": "xyz789"
    }
  }
}

removeWorkingList

Description

Remove a working list.

Response

Returns a Boolean

Arguments
Name Description
listId - ID! The ID of the working list to remove.

Example

Query
mutation removeWorkingList($listId: ID!) {
  removeWorkingList(listId: $listId)
}
Variables
{"listId": "4"}
Response
{"data": {"removeWorkingList": false}}

updateActivity

Description

Update an activity.

Response

Returns an UpdateActivityResult

Arguments
Name Description
input - UpdateActivityInput! Input for updating an existing activity.

Example

Query
mutation updateActivity($input: UpdateActivityInput!) {
  updateActivity(input: $input) {
    validationErrors {
      propertyName
      message
    }
    item {
      id
      type
      typeId
      activityClass
      typeGroup
      activityStartDate
      lastEditedDate
      subject
      summary
      location
      linkedActivityContacts {
        ...ActivityContactFragment
      }
      regarding
      originator {
        ...PersonFragment
      }
    }
  }
}
Variables
{"input": UpdateActivityInput}
Response
{
  "data": {
    "updateActivity": {
      "validationErrors": [ValidationErrors],
      "item": Activity
    }
  }
}

updateContactAdditionalFields

Description

Updates language and gender settings for a person contact. You must have language-specific information enabled in firm settings.

Response

Returns a MutatePersonResults

Arguments
Name Description
input - UpdateContactAdditionalFieldsInput! Input for updating a person's language and gender settings.

Example

Query
mutation updateContactAdditionalFields($input: UpdateContactAdditionalFieldsInput!) {
  updateContactAdditionalFields(input: $input) {
    status
    validationErrors {
      propertyName
      message
    }
    item {
      id
      displayName
      contactEntity
      notes {
        ...NotesFragment
      }
      visibility
      relationshipScore {
        ...ScoreFragment
      }
      isEmployee
      isPendingFirmContact
      title
      firstName
      middleName
      lastName
      fullName
      suffix
      goesBy
      currentJobTitle
      currentEmployer {
        ...CompanyFragment
      }
      assistantName
      contactTypes {
        ...ContactFolderContactTypeFragment
      }
      tags
      addresses {
        ...AddressFragment
      }
      emailAddresses {
        ...EmailAddressFragment
      }
      phoneNumbers {
        ...PhoneNumberFragment
      }
      activities {
        ...ActivityResultsFragment
      }
      lists {
        ...ContactListResultsFragment
      }
      notIncludedInTheLists {
        ...ContactListResultsFragment
      }
      additionalFieldValues {
        ...AdditionalFieldValueResultsFragment
      }
      contactAdditionalFieldValues {
        ...ContactAdditionalFieldValueResultsFragment
      }
    }
  }
}
Variables
{"input": UpdateContactAdditionalFieldsInput}
Response
{
  "data": {
    "updateContactAdditionalFields": {
      "status": "NoChange",
      "validationErrors": [ValidationErrors],
      "item": Person
    }
  }
}

updateListContactAdditionalFields

Description

Update list-specific additional fields for a contact.

Response

Returns a MutateAdditionalFieldResults

Arguments
Name Description
input - UpdateListContactAdditionalFieldInput! Input for updating a list contact's additional fields.

Example

Query
mutation updateListContactAdditionalFields($input: UpdateListContactAdditionalFieldInput!) {
  updateListContactAdditionalFields(input: $input) {
    models {
      fieldId
      valueId
      isSuccessful
      failureReason
    }
  }
}
Variables
{"input": UpdateListContactAdditionalFieldInput}
Response
{
  "data": {
    "updateListContactAdditionalFields": {
      "models": [UpdateListContactAdditionalFieldResults]
    }
  }
}

updatePublicCompany

Description

Update a firm company contact.

Response

Returns a MutateCompanyResults

Arguments
Name Description
input - UpdatePublicCompanyInput! Input for updating an existing firm company.

Example

Query
mutation updatePublicCompany($input: UpdatePublicCompanyInput!) {
  updatePublicCompany(input: $input) {
    validationErrors {
      propertyName
      message
    }
    item {
      id
      displayName
      contactEntity
      visibility
      notes {
        ...NotesFragment
      }
      name
      alias
      relationshipScore {
        ...ScoreFragment
      }
      isPendingFirmContact
      addresses {
        ...AddressFragment
      }
      tags
      contactTypes {
        ...ContactFolderContactTypeFragment
      }
      emailAddresses {
        ...EmailAddressFragment
      }
      phoneNumbers {
        ...PhoneNumberFragment
      }
      activities {
        ...ActivityResultsFragment
      }
      lists {
        ...ContactListResultsFragment
      }
      notIncludedInTheLists {
        ...ContactListResultsFragment
      }
      additionalFieldValues {
        ...AdditionalFieldValueResultsFragment
      }
      contactAdditionalFieldValues {
        ...ContactAdditionalFieldValueResultsFragment
      }
    }
  }
}
Variables
{"input": UpdatePublicCompanyInput}
Response
{
  "data": {
    "updatePublicCompany": {
      "validationErrors": [ValidationErrors],
      "item": Company
    }
  }
}

updatePublicPerson

Description

Update an existing firm person.

Response

Returns a MutatePersonResults

Arguments
Name Description
input - UpdatePublicPersonInput! Input for updating an existing firm person.

Example

Query
mutation updatePublicPerson($input: UpdatePublicPersonInput!) {
  updatePublicPerson(input: $input) {
    status
    validationErrors {
      propertyName
      message
    }
    item {
      id
      displayName
      contactEntity
      notes {
        ...NotesFragment
      }
      visibility
      relationshipScore {
        ...ScoreFragment
      }
      isEmployee
      isPendingFirmContact
      title
      firstName
      middleName
      lastName
      fullName
      suffix
      goesBy
      currentJobTitle
      currentEmployer {
        ...CompanyFragment
      }
      assistantName
      contactTypes {
        ...ContactFolderContactTypeFragment
      }
      tags
      addresses {
        ...AddressFragment
      }
      emailAddresses {
        ...EmailAddressFragment
      }
      phoneNumbers {
        ...PhoneNumberFragment
      }
      activities {
        ...ActivityResultsFragment
      }
      lists {
        ...ContactListResultsFragment
      }
      notIncludedInTheLists {
        ...ContactListResultsFragment
      }
      additionalFieldValues {
        ...AdditionalFieldValueResultsFragment
      }
      contactAdditionalFieldValues {
        ...ContactAdditionalFieldValueResultsFragment
      }
    }
  }
}
Variables
{"input": UpdatePublicPersonInput}
Response
{
  "data": {
    "updatePublicPerson": {
      "status": "NoChange",
      "validationErrors": [ValidationErrors],
      "item": Person
    }
  }
}

Types

Activity

Description

Represents an activity.

Fields
Field Name Description
id - ID The ID of the activity.
type - String The type of the activity.
typeId - ID The ID of the activity type.
activityClass - ActivityClass The class of the activity.
typeGroup - String The group of the activity type.
activityStartDate - DateTime The start date and time of the activity.
lastEditedDate - Date The date when the activity was last edited.
subject - String The subject of the activity.
summary - String The summary of the activity.
location - String The location of the activity.
linkedActivityContacts - [ActivityContact] Retrieves the contacts linked to the activity, filtered by the specified contact type.
Arguments
contactType - ActivityContactType

Specifies the type of contacts to include in the results (Person, Company, or Unknown).

regarding - String The module or context to which this activity relates (Contacts Only, Lists, etc.).
originator - Person The person who initiated the activity.
Example
{
  "id": 4,
  "type": "xyz789",
  "typeId": 4,
  "activityClass": "Activity",
  "typeGroup": "abc123",
  "activityStartDate": "2007-12-03T10:15:30Z",
  "lastEditedDate": "2007-12-03",
  "subject": "xyz789",
  "summary": "abc123",
  "location": "abc123",
  "linkedActivityContacts": [ActivityContact],
  "regarding": "xyz789",
  "originator": Person
}

ActivityClass

Description

Type of activity.

Values
Enum Value Description

Activity

A standard activity.

Appointment

An appointment synchronized from Outlook.
Example
"Activity"

ActivityCompany

Description

Represents a company associated with an activity.

Fields
Field Name Description
id - ID The ID of the company linked to the activity.
name - String The name of the company linked to the activity.
Example
{"id": 4, "name": "xyz789"}

ActivityContact

Description

Represents a contact associated with an activity.

Fields
Field Name Description
id - ID The ID of the contact.
Possible Types
ActivityContact Types

ActivityCompany

ActivityPerson

ActivityUnknown

Example
{"id": "4"}

ActivityContactType

Description

Types of contacts that can be associated with activities.

Values
Enum Value Description

Person

Indicates a person associated with an activity.

Company

Indicates a company associated with an activity.

Unknown

Indicates an unknown type of contact associated with an activity.
Example
"Person"

ActivityFilterInput

Description

Specifies filter criteria for activities.

Fields
Input Field Description
subject - String Filters activities based on their subject.
type - String Filters activities based on their type.
typeId - [ID] Filters activities based on their type ID.
contactIds - [ID] Filters activities based on the associated contact IDs.
date - DateFilterInput Filters activities based on their date.
originatorIds - [ID] Filters activities based on the originator IDs.
Example
{
  "subject": "xyz789",
  "type": "xyz789",
  "typeId": ["4"],
  "contactIds": ["4"],
  "date": DateFilterInput,
  "originatorIds": [4]
}

ActivityPerson

Description

Represents a person associated with an activity.

Fields
Field Name Description
id - ID The ID of the person linked to the activity.
fullName - String The full name of the person linked to the activity.
primaryEmail - String The primary email address of the person linked to the activity.
company - ActivityCompany The company where the person is employed.
Example
{
  "id": 4,
  "fullName": "abc123",
  "primaryEmail": "abc123",
  "company": ActivityCompany
}

ActivityResults

Fields
Field Name Description
totalModels - Int! The total number of items found.
models - [Activity] The list of activities.
Example
{"totalModels": 123, "models": [Activity]}

ActivitySortField

Description

Represents the fields that can be used for sorting activities.

Values
Enum Value Description

Date

Sorts activities by their date.
Example
"Date"

ActivitySortInput

Description

Specifies sorting options for activities, allowing customization of sorting behavior based on the chosen field and direction.

Fields
Input Field Description
field - ActivitySortField Specifies the field to use for sorting activities.
direction - SortDirection Specifies the sort direction (Ascending or Descending). Default = Ascending
Example
{"field": "Date", "direction": "Ascending"}

ActivityType

Description

Represents an activity type.

Fields
Field Name Description
id - ID The ID of the activity type.
name - String The name of the activity type.
groupId - ID The ID of the group that this activity type belongs to.
groupName - String The name of the group that this activity type belongs to.
isDefault - Boolean Indicates whether this activity type is the firm's default.
isActive - Boolean Indicates whether this activity type is active.
Example
{
  "id": "4",
  "name": "abc123",
  "groupId": 4,
  "groupName": "abc123",
  "isDefault": false,
  "isActive": false
}

ActivityTypeResults

Description

The return type when querying activity types.

Fields
Field Name Description
totalModels - Int! The total number of items found.
models - [ActivityType] The list of activity types.
Example
{"totalModels": 123, "models": [ActivityType]}

ActivityUnknown

Description

Represents an unknown type of contact associated with an activity.

Fields
Field Name Description
id - ID The ID of an unknown contact for an activity.
displayName - String The display name of the unknown contact.
Example
{
  "id": "4",
  "displayName": "xyz789"
}

ActivityView

Description

Represents an activity.

Fields
Field Name Description
id - ID The ID of the activity.
summary - String The summary of the activity.
subject - String The subject of the activity.
type - String The type of the activity.
typeId - ID The ID of the activity type.
date - Date The date of the activity.
linkedActivityContacts - [ActivityContact] Retrieves the contacts linked to the activity, filtered by the specified contact type.
Arguments
contactType - ActivityContactType

Specifies the type of contacts to include in the results.

originator - Person The person who initiated the activity.
Example
{
  "id": 4,
  "summary": "xyz789",
  "subject": "abc123",
  "type": "abc123",
  "typeId": 4,
  "date": "2007-12-03",
  "linkedActivityContacts": [ActivityContact],
  "originator": Person
}

ActivityViewResults

Fields
Field Name Description
totalModels - Int! The total number of items found.
models - [ActivityView] The list of activities.
Example
{"totalModels": 123, "models": [ActivityView]}

AddActivityInput

Description

Input for creating a new activity.

Fields
Input Field Description
typeId - ID! The ID of the ActivityType to assign to the new activity.
activityDate - String! The date and time for the activity in YYYY-MM-DD HH:mm:ss format.
subject - String! The subject for the activity.
summary - String The summary for the activity.
linkedEntityIds - [ID] A list of entity IDs to link to the activity.
Example
{
  "typeId": "4",
  "activityDate": "abc123",
  "subject": "xyz789",
  "summary": "xyz789",
  "linkedEntityIds": ["4"]
}

AddAdditionalFieldDefinitionInput

Description

Input for creating a new additional field definition.

Fields
Input Field Description
listId - ID! The list ID where this additional field definition will be added.
name - String! The name for the additional field definition.
type - AdditionalFieldDefinitionInputType! The type for the additional field definition (text, date, decimal, integer, list, boolean, user).
description - String The description for the additional field definition.
allowMultipleValues - Boolean Indicates whether multiple values are allowed.
allowSecondaryField - Boolean Indicates whether a secondary field is allowed.
secondaryFieldName - String The name for the secondary field.
stringInput - AdditionalFieldDefinitionStringInput Input for creating a text type additional field definition. Only applicable when the type is text.
decimalInput - AdditionalFieldDefinitionDecimalInput Input for creating a decimal type additional field definition. Only applicable when type is decimal.
integerInput - AdditionalFieldDefinitionIntegerInput Input for creating an integer type additional field definition. Only applicable when type is integer.
listInput - [String] Input for creating a list type additional field definition. Only applicable when type is list.
booleanInput - AdditionalFieldDefinitionBooleanInput Input for creating a boolean type additional field definition. Only applicable when type is boolean.
userInput - AdditionalFieldDefinitionUserInput Input for creating a user type additional field definition. Only applicable when type is user.
Example
{
  "listId": 4,
  "name": "abc123",
  "type": "text",
  "description": "abc123",
  "allowMultipleValues": false,
  "allowSecondaryField": false,
  "secondaryFieldName": "abc123",
  "stringInput": AdditionalFieldDefinitionStringInput,
  "decimalInput": AdditionalFieldDefinitionDecimalInput,
  "integerInput": AdditionalFieldDefinitionIntegerInput,
  "listInput": ["abc123"],
  "booleanInput": AdditionalFieldDefinitionBooleanInput,
  "userInput": AdditionalFieldDefinitionUserInput
}

AddAdditionalFieldDefinitionResult

Fields
Field Name Description
success - Boolean Indicates whether the additional field definition was successfully created.
additionalFieldDefinition - AdditionalFieldDefinition The newly created additional field definition.
Example
{
  "success": false,
  "additionalFieldDefinition": AdditionalFieldDefinition
}

AddCompanyInput

Description

Input for creating a new company contact.

Fields
Input Field Description
companyName - String The name for the company.
alias - String The common name or alias for the company.
primaryPhone - String The primary phone number for the company.
secondaryPhone - String The secondary phone number for the company.
faxNumber - String The fax number for the company.
mobilePhone - String The mobile phone number for the company.
pagerNumber - String The pager number for the company.
emailAddress - String The email address for the company.
website - String The website URL for the company.
folderContactTypes - [ID] A list of ContactType IDs to associate to the company.
businessAddress - AddContactWithLabelAdditionalFieldAddressInput The business address for the company.
otherAddress - AddContactAddressInput An alternative address for the company.
mailingAddress - MailingAddressType Determines which address should be used as the mailing address for the company.
Example
{
  "companyName": "xyz789",
  "alias": "xyz789",
  "primaryPhone": "xyz789",
  "secondaryPhone": "abc123",
  "faxNumber": "xyz789",
  "mobilePhone": "abc123",
  "pagerNumber": "abc123",
  "emailAddress": "xyz789",
  "website": "xyz789",
  "folderContactTypes": ["4"],
  "businessAddress": AddContactWithLabelAdditionalFieldAddressInput,
  "otherAddress": AddContactAddressInput,
  "mailingAddress": "None"
}

AddContactAddressInput

Description

Input for adding a new address to a contact.

Fields
Input Field Description
street - String The street for the address.
city - String The city for the address (city, town, village, etc.).
administrativeDivision - String The administrative division for the address. This represents a state, province, governorate, department, or similar regional division depending on the country. This field may not be applicable for all countries.
country - String The country for the address.
postalCode - String The ZIP or postal code for the address. This field may not be applicable for all countries.
Example
{
  "street": "xyz789",
  "city": "xyz789",
  "administrativeDivision": "abc123",
  "country": "xyz789",
  "postalCode": "xyz789"
}

AddContactWithLabelAdditionalFieldAddressInput

Description

Input for adding a new business address to a contact.

Fields
Input Field Description
label - String The label for the address. Only applicable for business addresses.
street - String The street for the address.
city - String The city for the address (city, town, village, etc.).
administrativeDivision - String The administrative division for the address. This represents a state, province, governorate, department, or similar regional division depending on the country. This field may not be applicable for all countries.
country - String The country for the address.
postalCode - String The ZIP or postal code for the address. This field may not be applicable for all countries.
additionalField - String Additional information for the address. Only applicable for business addresses.
Example
{
  "label": "abc123",
  "street": "xyz789",
  "city": "abc123",
  "administrativeDivision": "abc123",
  "country": "xyz789",
  "postalCode": "xyz789",
  "additionalField": "abc123"
}

AddContactsToListResults

Fields
Field Name Description
totalCount - Int A count of the total number of contacts processed.
successCount - Int A count of the number of contacts that were successfully added to the list.
resultText - String Message summarizing the result of the operation.
skippedCount - Int A count of the number of contacts that were skipped during the operation.
skippedContactIds - [String] A list of IDs of contacts that were skipped during the operation.
Example
{
  "totalCount": 123,
  "successCount": 987,
  "resultText": "abc123",
  "skippedCount": 987,
  "skippedContactIds": ["xyz789"]
}

AddListInput

Description

Input for creating a new list.

Fields
Input Field Description
name - String! The name for the list.
description - String The description for the list.
folderTypeId - ID! The ID of the folder type for the list.
showFlags - Boolean Set to true to enable flagging for the list.
newContactFlag - ContactFlag The initial flag setting for new contacts. Default = none
folderFlags - [FolderFlagInput] The folder flag descriptions for the list. Default values will be set if missing or empty.
Example
{
  "name": "xyz789",
  "description": "xyz789",
  "folderTypeId": 4,
  "showFlags": false,
  "newContactFlag": "none",
  "folderFlags": [FolderFlagInput]
}

AddListResult

Fields
Field Name Description
item - List The newly created list.
validationErrors - [ValidationErrors] A collection of validation errors that occurred during the operation.
Example
{
  "item": List,
  "validationErrors": [ValidationErrors]
}

AddLocationInput

Description

Input for creating a new contact location.

Fields
Input Field Description
contactId - ID! The ID of the contact to associate with the location.
relationshipType - UsageTypes The relationship type for the location (AlternateBusiness, AlternateHome, etc.).
description - String The description for the location.
addressType - AddressTypes The address type for the location.
street - String The street for the location.
city - String The city for the location (city, town, village, etc.).
administrativeDivision - String The administrative division for the location. This represents a state, province, governorate, department, or similar regional division depending on the country. This field may not be applicable for all countries.
postalCode - String The ZIP or postal code for the location. This field may not be applicable for all countries.
country - String The country for the location.
phoneNumber - String The phone number for the location.
faxNumber - String The fax number for the location.
Example
{
  "contactId": 4,
  "relationshipType": "AlternateBusiness",
  "description": "abc123",
  "addressType": "Street",
  "street": "xyz789",
  "city": "xyz789",
  "administrativeDivision": "abc123",
  "postalCode": "xyz789",
  "country": "xyz789",
  "phoneNumber": "abc123",
  "faxNumber": "abc123"
}

AddPersonInput

Description

Input for creating a new person contact.

Fields
Input Field Description
firstName - String The first name for the person.
lastName - String The last name for the person.
title - String The salutational title for the person (Mr., Mrs., Dr., etc.).
suffix - String The suffix for the person (Jr., M.D., etc.).
middleName - String The middle name for the person.
goesBy - String The preferred name or nickname for the person.
primaryPhone - String The primary phone number for the person.
companyPhone - String The company phone number for the person.
faxNumber - String The fax number for the person.
mobilePhone - String The mobile phone number for the person.
otherPhone - String An additional phone number for the person.
pagerNumber - String The pager number for the person.
emailAddress - String The email address for the person.
website - String The website URL for the person.
assistantName - String The name of the person's assistant.
assistantPhone - String The phone number of the person's assistant.
companyName - String The name of the company where the person is employed.
companyId - ID The ID of the company where the person is employed.
homePhone - String The home phone number for the person.
homeFax - String The home fax number for the person.
homeEmailAddress - String The home email address for the person.
otherEmailAddress - String An additional email address for the person.
jobTitle - String The job title for the person.
folderContactTypes - [ID] A list of contact type IDs to associate to the person.
businessAddress - AddContactWithLabelAdditionalFieldAddressInput The business address for the person.
otherAddress - AddContactAddressInput An alternative address for the person.
homeAddress - AddContactAddressInput The home address for the person.
contactAdditionalFields - [AdditionalField] The language and gender settings for the person. You must have language-specific information enabled in firm settings.
mailingAddress - MailingAddressType Specifies which address should be used as the mailing address for the person.
Example
{
  "firstName": "abc123",
  "lastName": "abc123",
  "title": "abc123",
  "suffix": "abc123",
  "middleName": "xyz789",
  "goesBy": "xyz789",
  "primaryPhone": "xyz789",
  "companyPhone": "abc123",
  "faxNumber": "abc123",
  "mobilePhone": "xyz789",
  "otherPhone": "abc123",
  "pagerNumber": "xyz789",
  "emailAddress": "abc123",
  "website": "xyz789",
  "assistantName": "xyz789",
  "assistantPhone": "abc123",
  "companyName": "abc123",
  "companyId": "4",
  "homePhone": "xyz789",
  "homeFax": "xyz789",
  "homeEmailAddress": "abc123",
  "otherEmailAddress": "abc123",
  "jobTitle": "abc123",
  "folderContactTypes": ["4"],
  "businessAddress": AddContactWithLabelAdditionalFieldAddressInput,
  "otherAddress": AddContactAddressInput,
  "homeAddress": AddContactAddressInput,
  "contactAdditionalFields": [AdditionalField],
  "mailingAddress": "None"
}

AddPersonResults

Fields
Field Name Description
status - ResultCode Status of the person creation.
validationErrors - [ValidationErrors] A collection of validation errors that occurred during the operation.
item - Person The newly added person contact.
Example
{
  "status": "NoChange",
  "validationErrors": [ValidationErrors],
  "item": Person
}

AddWorkingListResult

Fields
Field Name Description
success - Boolean Indicates if the operation was successful.
errorText - String Message summarizing any errors that occurred during the operation.
item - List The newly created working list.
Example
{
  "success": false,
  "errorText": "xyz789",
  "item": List
}

AdditionalField

Description

Input for creating or updating an additional field value.

Fields
Input Field Description
fieldId - ID! The ID of the additional field definition.
valueId - ID The ID of the additional field value to update. Can be null for new values.
lastEditDate - DateTime The date and time when the field value was last edited in ISO 8601 format (e.g., 2024-11-07T14:01:32.247). For updating existing values, this must match the current lastEditDate value of the field. Can be null when creating new values.
value - String!

The value must adhere to the following requirements by fieldDataType:

  • 'date': String in 'YYYY-MM-DD' format
  • 'list': Exact text of one of the allowed list options (e.g., 'Vegetarian' from ['Vegetarian', 'Vegan', 'Gluten Free'])
  • 'user': User's ID as a string (e.g., '00000001-0000-0000-0000-000000000000')
  • 'integer': Whole number as a string (e.g., '150') that respects any minimum/maximum constraints
  • 'decimal': Number with decimal places as a string (e.g., '150.00') that respects min/max values and required precision
  • 'boolean': Must match the true/false string values as configured in the field definition (e.g., 'Yes'/'No', 'True'/'False')
  • 'text': Any string value that complies with length and formatting constraints
qualification - String The qualification or secondary value for the field.
fieldDataType - String! The data type for the field. Options include: 'date', 'list', 'user', 'integer', 'decimal', 'boolean' or 'text'.
Example
{
  "fieldId": 4,
  "valueId": 4,
  "lastEditDate": "2007-12-03T10:15:30Z",
  "value": "abc123",
  "qualification": "abc123",
  "fieldDataType": "abc123"
}

AdditionalFieldDataType

Values
Enum Value Description

integer

decimal

date

text

list

boolean

user

unknown

Example
"integer"

AdditionalFieldDefinition

Description

Represents an additional field definition.

Fields
Field Name Description
id - ID The ID of the additional field definition.
name - String The display name of the additional field definition.
description - String The description of the additional field definition.
dataTypeDisplayName - String The display name of the data type the additional field definition supports (List, Decimal, Text, etc.).
fieldDataType - AdditionalFieldDataType The data type the additional field definition supports.
listDataType - AdditionalFieldListDataType The options for a list type additional field.
allowsSecondaryField - Boolean Indicates whether a secondary field is allowed.
secondaryFieldName - String The name of the secondary field.
allowsMultipleValues - Boolean Indicates whether multiple values are allowed.
booleanDataTypeTrueValue - String The string representation of a true value for a boolean type additional field (Yes, True, Attending, etc.).
booleanDataTypeFalseValue - String The string representation of a false value for a boolean type additional field (No, False, Not Attending, etc.).
numericDataTypeMaxValue - Float The maximum value allowed for a integer or decimal type additional field.
numericDataTypeMinValue - Float The minimum value allowed for a integer or decimal type additional field.
decimalDataTypePrecision - Int The number of decimal places allowed for the decimal type additional field.
stringDataTypeMaxLength - Int The maximum character length allowed for the string type additional field.
stringDataTypeMultiLine - Boolean Indicates whether multiple lines are allowed for the string type additional field.
userDataTypeUserProfessional - AdditionalFieldUserDataTypeUserType The professional status of the user for the user type additional field.
userDataTypeUserActive - AdditionalFieldUserDataTypeUserActiveType The active status of the user for the user type additional field.
Example
{
  "id": 4,
  "name": "abc123",
  "description": "xyz789",
  "dataTypeDisplayName": "xyz789",
  "fieldDataType": "integer",
  "listDataType": AdditionalFieldListDataType,
  "allowsSecondaryField": false,
  "secondaryFieldName": "abc123",
  "allowsMultipleValues": true,
  "booleanDataTypeTrueValue": "xyz789",
  "booleanDataTypeFalseValue": "abc123",
  "numericDataTypeMaxValue": 123.45,
  "numericDataTypeMinValue": 123.45,
  "decimalDataTypePrecision": 987,
  "stringDataTypeMaxLength": 123,
  "stringDataTypeMultiLine": true,
  "userDataTypeUserProfessional": "Any",
  "userDataTypeUserActive": "Active"
}

AdditionalFieldDefinitionBooleanInput

Description

Input for creating or updating a boolean type additional field definition.

Fields
Input Field Description
trueValue - String! The string value for a true value.
falseValue - String! The string value for a false value.
Example
{
  "trueValue": "abc123",
  "falseValue": "abc123"
}

AdditionalFieldDefinitionDecimalInput

Description

Input for creating or updating a decimal type additional field definition.

Fields
Input Field Description
minimumValue - Float The minimum allowed decimal value.
maximumValue - Float The maximum allowed decimal value.
precision - Int! The number of allowed decimal places.
Example
{"minimumValue": 987.65, "maximumValue": 123.45, "precision": 987}

AdditionalFieldDefinitionInputType

Values
Enum Value Description

text

date

decimal

integer

list

boolean

user

Example
"text"

AdditionalFieldDefinitionIntegerInput

Description

Input for creating or updating an integer type additional field definition.

Fields
Input Field Description
minimumValue - Int The minimum allowed integer value.
maximumValue - Int The maximum allowed integer value.
Example
{"minimumValue": 987, "maximumValue": 123}

AdditionalFieldDefinitionListInput

Description

Input for creating or updating a list type additional field definition.

Fields
Input Field Description
id - ID The ID of the list option to update. Can be null for new values.
name - String! The value for the list option.
Example
{
  "id": "4",
  "name": "abc123"
}

AdditionalFieldDefinitionResults

Fields
Field Name Description
totalModels - Int! The total number of items found.
models - [AdditionalFieldDefinition] The list of additional field definitions.
Example
{
  "totalModels": 123,
  "models": [AdditionalFieldDefinition]
}

AdditionalFieldDefinitionStringInput

Description

Input for creating or updating a text type additional field definition.

Fields
Input Field Description
multiLine - Boolean! Indicates whether multiple lines are allowed.
maxLength - Int The maximum character length allowed for the text.
Example
{"multiLine": false, "maxLength": 987}

AdditionalFieldDefinitionUserInput

Description

Input for creating or updating a user type additional field definition.

Fields
Input Field Description
isActive - Boolean Indicates whether the user is active.
isProfessional - Boolean Indicates whether the user account is a professional account.
Example
{"isActive": false, "isProfessional": true}

AdditionalFieldListDataType

Description

Represents a list of options for the list type additional field.

Fields
Field Name Description
options - [AdditionalFieldListDataTypeOption] The list of options for a list type field definition.
Example
{"options": [AdditionalFieldListDataTypeOption]}

AdditionalFieldListDataTypeOption

Description

Represents an option for the list type additional field definition.

Fields
Field Name Description
id - ID The ID of the list option.
name - String The value of the list option.
Example
{"id": 4, "name": "abc123"}

AdditionalFieldUserDataTypeUserActiveType

Description

The active status of the additional field user data.

Values
Enum Value Description

Active

Active user.

Inactive

Inactive user.

NotSet

Not set.

Unknown

Unknown user.
Example
"Active"

AdditionalFieldUserDataTypeUserType

Description

The user type of the additional field user data.

Values
Enum Value Description

Any

Any user type.

Professional

Professional user type.

NonProfessional

Non-professional user type.

NotSet

Not set.

Unknown

Unknown user type.
Example
"Any"

AdditionalFieldValue

Description

Represents a value for an additional field definition.

Fields
Field Name Description
id - ID The ID of the field value.
fieldId - ID The ID of the field definition this value is associated with.
listId - ID The ID of the list the field definition is associated with.
contactId - ID The ID of the contact this field value is associated with.
fieldDisplayName - String The display name of the field.
valueItems - [AdditionalFieldValueItem] A list of additional field value items associated with this additional field definition for a contact.
dataType - AdditionalFieldDataType The data type of the field value.
separator - String The separator used in the field value.
format - String The format of the field value.
Example
{
  "id": "4",
  "fieldId": 4,
  "listId": 4,
  "contactId": "4",
  "fieldDisplayName": "abc123",
  "valueItems": [AdditionalFieldValueItem],
  "dataType": "integer",
  "separator": "xyz789",
  "format": "abc123"
}

AdditionalFieldValueFilterInput

Description

Input for filtering additional field values.

Fields
Input Field Description
definitionIds - [ID!] The list of definition IDs to filter by.
Example
{"definitionIds": [4]}

AdditionalFieldValueItem

Description

Represents a single value for an additional field.

Fields
Field Name Description
valueId - ID The ID of the field value.
lastEditDate - DateTime The date and time when the additional field was last updated.
value - String The value of the additional field.
qualification - String The qualification or secondary value for the additional field.
Example
{
  "valueId": "4",
  "lastEditDate": "2007-12-03T10:15:30Z",
  "value": "xyz789",
  "qualification": "xyz789"
}

AdditionalFieldValueResults

Description

Represents the results of a query for additional field values.

Fields
Field Name Description
totalModels - Int! The total number of items found.
models - [AdditionalFieldValue] The list of AdditionalFieldValue objects.
Example
{"totalModels": 123, "models": [AdditionalFieldValue]}

AdditionalFieldsFilter

Description

Input for filtering by additional field values.

Fields
Input Field Description
fieldId - ID The ID of the additional field definition you want to search against. This must be a valid ID of an additional field definition.
contains - String The text to search for within the additional field value (partial match).
equal - String The field value to match in the additional field (exact match). This will be ignored if contains has been specified.
Example
{
  "fieldId": "4",
  "contains": "abc123",
  "equal": "xyz789"
}

Address

Description

Represents an address.

Fields
Field Name Description
id - ID The ID of the address.
type - AddressTypes The type of the address (Street, POBox, LockBox).
usage - UsageTypes The usage type of the address (AlternateBusiness, AlternateHome, etc.).
label - String The label of the address.
street - String The street name of the address.
city - String The city of the address (city, town, village, etc.).
administrativeDivision - String The administrative division of the address. This represents a state, province, governorate, department, or similar regional division depending on the country. This field may not be applicable for all countries.
additional - String Additional address information (not applicable to 'my' contact addresses).
country - String The country of the address.
postalCode - String The ZIP or postal code of the address. This field may not be applicable for all countries.
isGlobal - Boolean Indicates whether this is a global address.
isMailingAddress - Boolean Indicates whether this is a mailing address.
owningContactId - ID The ID of the contact that owns this address.
Example
{
  "id": 4,
  "type": "Street",
  "usage": "AlternateBusiness",
  "label": "abc123",
  "street": "abc123",
  "city": "abc123",
  "administrativeDivision": "abc123",
  "additional": "xyz789",
  "country": "xyz789",
  "postalCode": "abc123",
  "isGlobal": false,
  "isMailingAddress": true,
  "owningContactId": "4"
}

AddressInput

Description

Input for creating or updating an address.

Fields
Input Field Description
addressId - ID The ID of the address to update. Can be null for new values.
owningContactId - ID The ID of the contact that owns this address.
isMailingAddress - Boolean Indicates whether this is a mailing address.
label - String The label for this address.
street - String The street for this address.
city - String The city for this address (city, town, village, etc.).
administrativeDivision - String The administrative division for this address. This represents a state, province, governorate, department, or similar regional division depending on the country. This field may not be applicable for all countries.
country - String The country for this address.
postalCode - String The ZIP or postal code for this address. This field may not be applicable for all countries.
additionalField - String The additional information for this address.
usage - UsageTypes The usage type for this address.
Example
{
  "addressId": 4,
  "owningContactId": 4,
  "isMailingAddress": true,
  "label": "abc123",
  "street": "xyz789",
  "city": "xyz789",
  "administrativeDivision": "abc123",
  "country": "xyz789",
  "postalCode": "xyz789",
  "additionalField": "abc123",
  "usage": "AlternateBusiness"
}

AddressTypes

Description

The available address types.

Values
Enum Value Description

Street

Indicates that the address type is a street address.

POBox

Indicates that the address type is a post office box.

LockBox

Indicates that the address type is a lock box.

Other

Indicates that the address type is other than the predefined types.
Example
"Street"

AdministrativeDivisions

Description

Represents a state, province, governorate, department, or similar regional division depending on the country.

Fields
Field Name Description
states - [State] The list of states in the country.
useStates - Boolean Indicates whether states are used for this country.
stateLabel - String The label used for states in this country.
postalCodeLabel - String The label used for postal codes in this country.
Example
{
  "states": [State],
  "useStates": false,
  "stateLabel": "abc123",
  "postalCodeLabel": "abc123"
}

Boolean

Company

Description

Represents a company contact.

Fields
Field Name Description
id - ID The ID of the company.
displayName - String The display name of the company.
contactEntity - ContactEntity The entity type of the contact (Company).
visibility - ContactVisibility The visibility settings of the company.
notes - Notes The firm notes and 'my' notes about the company.
name - String The name of the company.
alias - String The common name or alias of the company.
relationshipScore - Score The relationship score between the current user and the specified company contact.
isPendingFirmContact - Boolean! Indicates whether this company is pending to be linked as My Contact and Firm Contact.
addresses - [Address] Retrieves the addresses associated to the company.
Arguments
type - AddressTypes

The type of address to retrieve.

usage - UsageTypes

The usage type of the address to retrieve.

tags - [String] The tags of the company.
contactTypes - [ContactFolderContactType] The contact types of the company.
emailAddresses - [EmailAddress] Retrieves the email addresses associated to the company.
Arguments
type - EmailAddressTypes

The type of email address to retrieve.

usage - UsageTypes

The usage type of the email address to retrieve.

phoneNumbers - [PhoneNumber] Retrieves the phone numbers associated to the company.
Arguments
type - PhoneNumberTypes

The type of phone number to retrieve.

usage - UsageTypes

The usage type of the phone number to retrieve.

activities - ActivityResults Retrieves the activities that the company is involved in.
Arguments
activityTypeIds - [ID]

The IDs of activity types to filter by.

startDateRange - Date

The start date of the date range to filter by in "YYYY-MM-DD" format.

endDateRange - Date

The end date of the date range to filter by in "YYYY-MM-DD" format.

skip - Int

The starting index for pagination.

limit - Int

The maximum number of items to retrieve.

sort - ActivitySortInput

The sorting options for the activities.

lists - ContactListResults Retrieves the lists that the company is a member of.
Arguments
listClass - [ListClass]

The types of lists to retrieve (contactTypes, marketingList, etc.).

skip - Int

The starting index for pagination.

limit - Int

The maximum number of items to retrieve.

sort - SortInput

The sorting options for the lists.

listIds - [ID]

The IDs of lists to filter by.

notIncludedInTheLists - ContactListResults Retrieves the lists that the company is not a member of.
Arguments
listClass - [ListClass]

The types of lists to retrieve (contactTypes, marketingList, etc.).

listType - ListType

The type of lists to retrieve (all or myFrequentlyUsed).

skip - Int

The starting index for pagination.

limit - Int

The maximum number of items to retrieve.

sort - SortInput

The sorting options for the lists.

additionalFieldValues - AdditionalFieldValueResults Retrieves the list-specific additional field values for the company.
Arguments
listId - ID!

The ID of the list to retrieve additional field values.

contactAdditionalFieldValues - ContactAdditionalFieldValueResults Retrieves the additional field values associated with the company.
Arguments
filter - AdditionalFieldValueFilterInput

The filter criteria for the additional field values.

Example
{
  "id": "4",
  "displayName": "abc123",
  "contactEntity": "Any",
  "visibility": "unknown",
  "notes": Notes,
  "name": "xyz789",
  "alias": "xyz789",
  "relationshipScore": Score,
  "isPendingFirmContact": true,
  "addresses": [Address],
  "tags": ["abc123"],
  "contactTypes": [ContactFolderContactType],
  "emailAddresses": [EmailAddress],
  "phoneNumbers": [PhoneNumber],
  "activities": ActivityResults,
  "lists": ContactListResults,
  "notIncludedInTheLists": ContactListResults,
  "additionalFieldValues": AdditionalFieldValueResults,
  "contactAdditionalFieldValues": ContactAdditionalFieldValueResults
}

Contact

Description

Represents a contact.

Fields
Field Name Description
id - ID The ID of the contact.
displayName - String The display name of the contact.
contactEntity - ContactEntity The entity type of the contact.
visibility - ContactVisibility The visibility settings of the contact.
relationshipScore - Score The relationship score between the current user and the contact.
tags - [String] The tags associated with the contact.
contactTypes - [ContactFolderContactType] The contact types associated with the contact.
addresses - [Address] Retrieves the addresses associated with the contact.
Arguments
type - AddressTypes

The type of address to retrieve (Street, POBox, LockBox).

usage - UsageTypes

The usage type of the address to retrieve (AlternateBusiness, AlternateHome, etc.).

emailAddresses - [EmailAddress] Retrieves the email addresses associated with the contact.
Arguments
type - EmailAddressTypes

The type of email address to retrieve (Email, FTPSite, Website).

usage - UsageTypes

The usage type of the email address to retrieve (AlternateBusiness, AlternateHome, etc.).

phoneNumbers - [PhoneNumber] Retrieves the phone numbers associated with the contact.
Arguments
type - PhoneNumberTypes

The type of phone number to retrieve (Mobile, Phone, Pager, etc.).

usage - UsageTypes

The usage type of the phone number to retrieve (AlternateBusiness, AlternateHome, etc.).

activities - ActivityResults Retrieves the activities that the contact is involved in.
Arguments
activityTypeIds - [ID]

The IDs of activity types to filter by.

startDateRange - Date

The start date of the date range to filter by in "YYYY-MM-DD" format.

endDateRange - Date

The end date of the date range to filter by in "YYYY-MM-DD" format.

skip - Int

The starting index for pagination.

limit - Int

The maximum number of items to retrieve.

sort - ActivitySortInput

The sorting options for the activities.

notes - Notes The firm notes and 'my' notes about the contact.
lists - ContactListResults Retrieves the lists that the contact is a member of.
Arguments
listClass - [ListClass]

The types of lists to retrieve.

skip - Int

The starting index for pagination.

limit - Int

The maximum number of items to retrieve.

sort - SortInput

The sorting options for the lists.

listIds - [ID]

The IDs of lists to filter by.

notIncludedInTheLists - ContactListResults Retrieves the lists that the contact is not a member of.
Arguments
listClass - [ListClass]

The types of lists to retrieve.

listType - ListType

The type of lists to retrieve (all or myFrequentlyUsed).

skip - Int

The starting index for pagination.

limit - Int

The maximum number of items to retrieve.

sort - SortInput

The sorting options for the lists.

additionalFieldValues - AdditionalFieldValueResults Retrieves the list-specific additional field values for the contact.
Arguments
listId - ID!

The ID of the list to retrieve additional field values for.

contactAdditionalFieldValues - ContactAdditionalFieldValueResults Retrieves the additional field values associated with the contact.
Arguments
filter - AdditionalFieldValueFilterInput

The filter criteria for the additional field values.

Possible Types
Contact Types

Person

Company

Unknown

Example
{
  "id": 4,
  "displayName": "abc123",
  "contactEntity": "Any",
  "visibility": "unknown",
  "relationshipScore": Score,
  "tags": ["abc123"],
  "contactTypes": [ContactFolderContactType],
  "addresses": [Address],
  "emailAddresses": [EmailAddress],
  "phoneNumbers": [PhoneNumber],
  "activities": ActivityResults,
  "notes": Notes,
  "lists": ContactListResults,
  "notIncludedInTheLists": ContactListResults,
  "additionalFieldValues": AdditionalFieldValueResults,
  "contactAdditionalFieldValues": ContactAdditionalFieldValueResults
}

ContactAdditionalFieldValue

Description

Represents an additional field for a contact.

Fields
Field Name Description
id - ID The ID of the additional field value.
values - [ContactCustomFieldValue] The list of additional field values.
Example
{"id": 4, "values": [ContactCustomFieldValue]}

ContactAdditionalFieldValueResults

Fields
Field Name Description
totalModels - Int! The total number of items found.
models - [ContactAdditionalFieldValue] The list of additional field values.
Example
{
  "totalModels": 123,
  "models": [ContactAdditionalFieldValue]
}

ContactClassTypes

Description

The available contact class types.

Values
Enum Value Description

Any

Indicates that the contact class can be either Firm Contact or My Contact.

FirmContactOnly

Indicates that the contact class is a Firm Contact only.

MyContactOnly

Indicates that the contact class is a My Contact only.
Example
"Any"

ContactCustomFieldValue

Fields
Field Name Description
editAllowed - Boolean Indicates whether editing is allowed for this additional field value.
value - String The value of the additional field.
valueId - ID The ID of the additional field value.
lastEditDate - DateTime The date and time when this field was last updated.
qualificationDescription - String The qualification or secondary value for the additional field.
Example
{
  "editAllowed": true,
  "value": "abc123",
  "valueId": "4",
  "lastEditDate": "2007-12-03T10:15:30Z",
  "qualificationDescription": "xyz789"
}

ContactEntity

Description

The available contact entity types.

Values
Enum Value Description

Any

Indicates that the contact entity can be either Person or Company.

None

Indicates that the contact entity is not specified.

Person

Indicates that the contact entity is a person.

Company

Indicates that the contact entity is a company.
Example
"Any"

ContactFilterField

Values
Enum Value Description

companyName

jobTitle

phoneNumber

firstName

lastName

hasAssociatedUser

country

city

state

postalCode

email

contactTypeIds

contactType

lastNameSoundsLike

companySoundsLike

term

contactClassType

mailingAddressesOnly

includeListSpecific

Example
"companyName"

ContactFilterInput

Fields
Input Field Description
field - ContactFilterField Specifies the field type to filter contacts (ID, Company Name, Job Title, etc.).
value - String Specifies the value to filter contacts by the selected field.
values - [String] Specifies multiple values to filter contacts by the selected field.
Example
{
  "field": "companyName",
  "value": "abc123",
  "values": ["abc123"]
}

ContactFlag

Values
Enum Value Description

none

red

orange

yellow

green

aqua

blue

darkBlue

purple

black

grey

Example
"none"

ContactFolderContactType

Description

Represents a contact type associated to a contact.

Fields
Field Name Description
id - ID The ID of the contact type.
name - String The name of the contact type.
Example
{"id": 4, "name": "abc123"}

ContactList

Description

Represents a list.

Fields
Field Name Description
id - ID The ID of the list.
name - String The name of the list.
description - String The description of the list.
type - String The type of the list.
listClass - ListClass The class of the list.
allowedLinkInto - Boolean Indicates whether the user can link contacts into the list.
allowedRemoveFrom - Boolean Indicates whether the user can remove contacts from the list.
ownerName - String The name of the owner of the list.
owner - Person The person who owns the list.
creatorName - String The name of the creator of the list.
creatorId - ID The ID of the creator of the list.
userIsSponsor - Boolean Indicates whether the user is a sponsor of the list.
sponsors - [Sponsor] The list of sponsors associated with the list.
note - FolderNote The note associated with the list.
Example
{
  "id": 4,
  "name": "xyz789",
  "description": "xyz789",
  "type": "abc123",
  "listClass": "contactTypes",
  "allowedLinkInto": false,
  "allowedRemoveFrom": false,
  "ownerName": "abc123",
  "owner": Person,
  "creatorName": "abc123",
  "creatorId": "4",
  "userIsSponsor": true,
  "sponsors": [Sponsor],
  "note": FolderNote
}

ContactListResults

Fields
Field Name Description
skip - Int The starting index for pagination.
limit - Int The number of items retrieved.
totalModels - Int! The total number of items found.
models - [ContactList] The list of lists.
Example
{
  "skip": 987,
  "limit": 123,
  "totalModels": 987,
  "models": [ContactList]
}

ContactResults

Fields
Field Name Description
searchTerms - SearchTerms The contact search query term.
resultsFrom - SearchResultsFrom The contact results found based on the search criterion (Term, Email Address, Full Name).
totalModels - Int! The total number of items found.
models - [Contact] The list of contacts.
Example
{
  "searchTerms": SearchTerms,
  "resultsFrom": "Term",
  "totalModels": 987,
  "models": [Contact]
}

ContactType

Description

Represents a contact type.

Fields
Field Name Description
id - ID The ID of the contact type.
name - String The display name of the contact type.
pluralName - String The plural form of the contact type name.
folderId - ID The ID of the contact type folder.
folderType - String The type of folder (Client, Organizations, etc.).
allowedContactEntity - ContactEntity The allowed contact entity type (Person, Company or Any).
Example
{
  "id": 4,
  "name": "abc123",
  "pluralName": "abc123",
  "folderId": 4,
  "folderType": "abc123",
  "allowedContactEntity": "Any"
}

ContactTypeResults

Fields
Field Name Description
totalModels - Int! The total number of items found.
models - [ContactType] The list of contact types.
Example
{"totalModels": 123, "models": [ContactType]}

ContactVisibility

Values
Enum Value Description

unknown

private

personal

shared

public

listSpecific

Example
"unknown"

Country

Description

Represents a country.

Fields
Field Name Description
id - ID The ID of the country.
name - String The name of the country.
isoCode - String The ISO code of the country.
statusIndicator - Int The state indicator of the country. Controls the behavior of the state/province field: 0: The state/province field is not used for this country. 1: The state/province field is optional for this country. 2: The state/province field is required for this country.
administrativeDivisions - AdministrativeDivisions The administrative divisions of the country.
Example
{
  "id": "4",
  "name": "abc123",
  "isoCode": "xyz789",
  "statusIndicator": 987,
  "administrativeDivisions": AdministrativeDivisions
}

CountryFilter

Fields
Input Field Description
name - String Filters countries based on their name.
Example
{"name": "xyz789"}

CountryResults

Fields
Field Name Description
totalModels - Int! The total number of items found.
models - [Country] The list of countries.
Example
{"totalModels": 123, "models": [Country]}

Date

Description

The Date scalar type represents a year, month and day in accordance with the ISO-8601 standard.

Example
"2007-12-03"

DateFilterInput

Fields
Input Field Description
start - Date Specifies the start date of the date range.
end - Date Specifies the end date of the date range.
Example
{
  "start": "2007-12-03",
  "end": "2007-12-03"
}

DateTime

Description

The DateTime scalar type represents a date and time. DateTime expects timestamps to be formatted in accordance with the ISO-8601 standard.

Example
"2007-12-03T10:15:30Z"

EditAdditionalFieldDefinitionInput

Description

Input for updating an existing additional field definition.

Fields
Input Field Description
definitionId - ID! The ID of the additional field definition to be updated.
name - String! The name for the additional field definition.
description - String The description for the additional field definition.
allowMultipleValues - Boolean! Indicates whether multiple values are allowed.
allowSecondaryField - Boolean Indicates whether a secondary field is allowed.
secondaryFieldName - String The name of the secondary field.
stringInput - AdditionalFieldDefinitionStringInput Input for updating a text type additional field definition.
decimalInput - AdditionalFieldDefinitionDecimalInput Input for updating a decimal type additional field definition.
integerInput - AdditionalFieldDefinitionIntegerInput Input for updating an integer type additional field definition.
listInput - [AdditionalFieldDefinitionListInput] Input for updating a list type additional field definition.
booleanInput - AdditionalFieldDefinitionBooleanInput Input for updating a boolean type additional field definition.
userInput - AdditionalFieldDefinitionUserInput Input for updating a user type additional field definition.
Example
{
  "definitionId": "4",
  "name": "abc123",
  "description": "abc123",
  "allowMultipleValues": false,
  "allowSecondaryField": false,
  "secondaryFieldName": "abc123",
  "stringInput": AdditionalFieldDefinitionStringInput,
  "decimalInput": AdditionalFieldDefinitionDecimalInput,
  "integerInput": AdditionalFieldDefinitionIntegerInput,
  "listInput": [AdditionalFieldDefinitionListInput],
  "booleanInput": AdditionalFieldDefinitionBooleanInput,
  "userInput": AdditionalFieldDefinitionUserInput
}

EditAdditionalFieldDefinitionResult

Fields
Field Name Description
success - Boolean Indicates whether the additional field definition was successfully edited.
resultText - String The result message received after updating the additional field definition.
additionalFieldDefinition - AdditionalFieldDefinition The updated additional field definition.
Example
{
  "success": false,
  "resultText": "xyz789",
  "additionalFieldDefinition": AdditionalFieldDefinition
}

EditListDetailsInput

Description

Input for updating the details of a marketing list.

Fields
Input Field Description
listId - ID! The ID of the list to update.
name - String! The name for the list.
description - String The description for the list.
folderTypeId - ID! The ID of the folder type for the list.
showFlags - Boolean Set to true to enable flagging on the list.
newContactFlag - ContactFlag The initial flag setting for new contacts.
folderFlags - [FolderFlagInput] The folder flag descriptions for the list.
Example
{
  "listId": 4,
  "name": "xyz789",
  "description": "abc123",
  "folderTypeId": "4",
  "showFlags": true,
  "newContactFlag": "none",
  "folderFlags": [FolderFlagInput]
}

EditListDetailsResult

Fields
Field Name Description
item - List The updated list.
validationErrors - [ValidationErrors] A collection of validation errors that occurred during the operation.
Example
{
  "item": List,
  "validationErrors": [ValidationErrors]
}

EditPersonEmploymentInformationInput

Description

Input for updating a person's employment information.

Fields
Input Field Description
id - ID! The ID of the person.
companyId - ID The ID of the company to associate with the person.
companyName - String The name of the company to associate with the person.
employmentInfoChange - EmploymentInfoChange! The status type for the employment change for the person.
jobTitle - String The job title for the person.
department - String The department for the person.
businessAddress - EmploymentChangeAddressInput The business address information.
businessPhoneNumber - EmploymentChangePhoneInput The primary business phone number.
business2PhoneNumber - EmploymentChangePhoneInput The secondary business phone number.
mobilePhoneNumber - EmploymentChangePhoneInput The mobile phone number.
businessFaxNumber - EmploymentChangePhoneInput The business fax number.
pagerNumber - EmploymentChangePhoneInput The pager number.
businessElectronicAddress - EmploymentChangeElectronicAddressInput The business email address.
businessWebsite - EmploymentChangeElectronicAddressInput The business website.
assistantName - String The name of the person's assistant.
assistantPhoneNumber - EmploymentChangePhoneInput The phone number of the person's assistant.
formerEmploymentDetails - String The details about the person's former employment.
Example
{
  "id": "4",
  "companyId": 4,
  "companyName": "xyz789",
  "employmentInfoChange": "EmployerNotKnown",
  "jobTitle": "abc123",
  "department": "abc123",
  "businessAddress": EmploymentChangeAddressInput,
  "businessPhoneNumber": EmploymentChangePhoneInput,
  "business2PhoneNumber": EmploymentChangePhoneInput,
  "mobilePhoneNumber": EmploymentChangePhoneInput,
  "businessFaxNumber": EmploymentChangePhoneInput,
  "pagerNumber": EmploymentChangePhoneInput,
  "businessElectronicAddress": EmploymentChangeElectronicAddressInput,
  "businessWebsite": EmploymentChangeElectronicAddressInput,
  "assistantName": "xyz789",
  "assistantPhoneNumber": EmploymentChangePhoneInput,
  "formerEmploymentDetails": "xyz789"
}

EditWorkingListDetailsInput

Description

Input for updating the details of a working list.

Fields
Input Field Description
listId - ID! The ID of the working list to update.
name - String! The name for the working list.
description - String The description for the working list.
folderTypeId - ID! The ID of the folder type for the working list.
showFlags - Boolean Set to true to enable flagging for the working list.
newContactFlag - ContactFlag The initial flag setting for new contacts.
folderFlags - [FolderFlagInput] The folder flag descriptions for the list.
Example
{
  "listId": 4,
  "name": "xyz789",
  "description": "abc123",
  "folderTypeId": 4,
  "showFlags": false,
  "newContactFlag": "none",
  "folderFlags": [FolderFlagInput]
}

EditWorkingListDetailsResult

Fields
Field Name Description
success - Boolean Indicates if the operation was successful.
errorText - String Message summarizing any errors that occurred during the operation.
item - List The updated working list.
Example
{
  "success": false,
  "errorText": "abc123",
  "item": List
}

ElectronicAddressInput

Description

Input for creating or updating an electronic address (email, website, etc.).

Fields
Input Field Description
id - ID The ID of the electronic address to update. Can be null for new values.
owningContactId - ID The ID of the contact that owns this electronic address.
electronicAddress - String The electronic address.
usage - UsageTypes The usage type for this electronic address.
electronicAddressType - EmailAddressTypes The type for this electronic address.
Example
{
  "id": 4,
  "owningContactId": 4,
  "electronicAddress": "xyz789",
  "usage": "AlternateBusiness",
  "electronicAddressType": "Email"
}

EmailAddress

Description

Represents an email address associated with a contact.

Fields
Field Name Description
id - ID The ID of the email address.
type - EmailAddressTypes The type of the email address (Email, FTPSite, Website).
usage - UsageTypes The usage type of the email address (AlternateBusiness, AlternateHome, etc.).
address - String The email address.
label - String The label of the email address.
owningContactId - ID The ID of the contact that owns this email address.
isGlobal - Boolean Indicates whether this is a global email address.
Example
{
  "id": "4",
  "type": "Email",
  "usage": "AlternateBusiness",
  "address": "abc123",
  "label": "xyz789",
  "owningContactId": 4,
  "isGlobal": false
}

EmailAddressTypes

Description

The available email address types.

Values
Enum Value Description

Email

Indicates that the email address type is a standard email.

FTPSite

Indicates that the email address type is an FTP site.

WebSite

Indicates that the email address type is a website.

Other

Indicates that the email address type is other than the predefined types.

LinkedIn

Indicates that the email address type is a LinkedIn profile URL. Use enumeration WebSite instead.

Instagram

Indicates that the email address type is an Instagram profile URL. Use enumeration WebSite instead.

Facebook

Indicates that the email address type is a Facebook profile URL. Use enumeration WebSite instead.

X

Indicates that the email address type is a X (formerly Twitter) profile URL. Use enumeration WebSite instead.
Example
"Email"

EmploymentChangeAddressInput

Description

Input for updating an address as part of an employment change.

Fields
Input Field Description
addressId - ID The ID of the address.
label - String The label for the address.
street - String The street for the address.
city - String The city for the address (city, town, village, etc.).
administrativeDivision - String The administrative division for the address. This represents a state, province, governorate, department, or similar regional division depending on the country. This field may not be applicable for all countries.
country - String The country for the address.
postalCode - String The ZIP or postal code for the address. This field may not be applicable for all countries.
additionalField - String Additional information for the address. Only applicable for business addresses.
isGlobalMailingAddress - Boolean Indicates whether this address is considered a global mailing address.
owningContactId - ID The ID of the contact that owns this address.
Example
{
  "addressId": 4,
  "label": "xyz789",
  "street": "xyz789",
  "city": "xyz789",
  "administrativeDivision": "xyz789",
  "country": "xyz789",
  "postalCode": "abc123",
  "additionalField": "xyz789",
  "isGlobalMailingAddress": false,
  "owningContactId": 4
}

EmploymentChangeElectronicAddressInput

Description

Input for updating an electronic address as part of an employment change.

Fields
Input Field Description
owningContactId - ID The ID of the contact that owns this electronic address.
electronicAddress - String The electronic address.
Example
{
  "owningContactId": "4",
  "electronicAddress": "abc123"
}

EmploymentChangePhoneInput

Description

Input for updating a phone number as part of an employment change.

Fields
Input Field Description
owningContactId - ID The ID of the contact that owns this phone number.
number - String The phone number.
Example
{
  "owningContactId": "4",
  "number": "xyz789"
}

EmploymentInfoChange

Description

Specifies how to update a person's employment association:

  • EmployerNotKnown: Removes any company association (both companyId and companyName should be null)
  • NewCompany: Associates with a new company not yet in the system (provide companyName, leave companyId null)
  • ExistingCompany: Associates with a company already in the system (provide both companyId and companyName)
Values
Enum Value Description

EmployerNotKnown

Removes any company association for this person.

NewCompany

Associates this person with a new company.

ExistingCompany

Associates this person with an existing company.
Example
"EmployerNotKnown"

FieldType

Description

Represents a field type for a profile.

Values
Enum Value Description

Heading

Represents a section heading.

Text

Represents a static label.

CustomField

Represents a custom field.

Link

Represents a clickable URL.

Separator

Represents a section separator.

Notes

Represents a long text field.
Example
"Heading"

Firm

Fields
Field Name Description
settings - FirmSettings The settings for the firm.
Example
{"settings": FirmSettings}

FirmNote

Description

Represents a firm note about a contact.

Fields
Field Name Description
notes - String The content of the firm note.
changeDate - String The date when the firm note was last changed.
noteId - ID The ID of the firm note.
folderId - ID The ID of the list containing the note.
Example
{
  "notes": "xyz789",
  "changeDate": "xyz789",
  "noteId": 4,
  "folderId": 4
}

FirmSettings

Description

Represents the settings for the firm.

Fields
Field Name Description
minimumRequiredFields - [MinimumRequiredFieldType] The list of minimum required fields for new contacts.
titles - [String] The list of available titles.
suffixes - [String] The list of available suffixes.
languageSettings - LanguageSettings The language settings for the firm.
genderSettings - GenderSettings The gender settings for the firm.
defaultNewActivityTypeId - ID The default type ID for new activities.
Example
{
  "minimumRequiredFields": ["none"],
  "titles": ["xyz789"],
  "suffixes": ["xyz789"],
  "languageSettings": LanguageSettings,
  "genderSettings": GenderSettings,
  "defaultNewActivityTypeId": "4"
}

Float

Example
123.45

FolderFlagInput

Description

Input for configuring flags on a list.

Fields
Input Field Description
flag - ContactFlag! The contact flag to configure.
flagDescription - String The description of the contact flag.
Example
{
  "flag": "none",
  "flagDescription": "xyz789"
}

FolderNote

Description

Represents a note about a contact in a specific list.

Fields
Field Name Description
notes - String The content of the note.
changeDate - String The date when the note was last changed.
noteId - ID The ID of the note.
folderId - ID The ID of the list containing the note.
editAllowed - Boolean Indicates whether editing is allowed for this note.
Example
{
  "notes": "xyz789",
  "changeDate": "xyz789",
  "noteId": 4,
  "folderId": "4",
  "editAllowed": false
}

FolderType

Description

Represents a folder or list type.

Fields
Field Name Description
id - ID! The ID of the folder type.
name - String! The name of the folder type.
listClass - ListClass! The class of list associated with this folder type.
directoryClassName - String The class name of the directory for this folder type.
isActive - Boolean! Indicates whether the folder type is active.
Example
{
  "id": 4,
  "name": "xyz789",
  "listClass": "contactTypes",
  "directoryClassName": "xyz789",
  "isActive": false
}

FolderTypeResults

Fields
Field Name Description
totalModels - Int! The total number of items found.
models - [FolderType] The list of folder types.
Example
{"totalModels": 987, "models": [FolderType]}

GenderSettings

Description

Represents the gender settings for the firm.

Fields
Field Name Description
genderAdditionalFieldId - ID The additional field ID of the gender field.
genders - AdditionalFieldDefinition The gender values available to the firm.
Example
{
  "genderAdditionalFieldId": 4,
  "genders": AdditionalFieldDefinition
}

GetContactTypeInput

Description

Input for retrieving contact types.

Fields
Input Field Description
contactEntity - ContactEntity The entity type of contact to retrieve (Person, Company).
frequentOnly - Boolean Set to true to retrieve only frequently used contact types.
sourceFolderId - String The ID of the source folder for the contact type.
sortOrder - String

Specify the sort field for the contact types. Sort order will always be ascending. Set one of the following values:

  • 'name': Sort by name
  • 'pluralName': Sort by plural form of the name
  • 'allowedContactEntity': Sort by allowed contact entity type
Example
{
  "contactEntity": "Any",
  "frequentOnly": false,
  "sourceFolderId": "xyz789",
  "sortOrder": "abc123"
}

ID

Example
"4"

Int

Example
123

Language

Description

Represents a language for the firm.

Fields
Field Name Description
label - String The label of the language.
enumId - String The enumeration ID of the language.
value - String The value of the language.
isActive - Boolean Indicates whether the language is active.
description - String The description of the language.
Example
{
  "label": "abc123",
  "enumId": "abc123",
  "value": "xyz789",
  "isActive": false,
  "description": "xyz789"
}

LanguageResults

Fields
Field Name Description
id - ID The ID of the language.
languages - [Language] The list of languages.
Example
{
  "id": "4",
  "languages": [Language]
}

LanguageSettings

Description

Represents the language settings for the firm.

Fields
Field Name Description
languageSpecificInfoEnabled - Boolean Indicates whether language-specific contact information fields are enabled.
languageAdditionalFieldId - ID The additional field ID of the language field.
languages - LanguageResults The list of available languages.
Example
{
  "languageSpecificInfoEnabled": true,
  "languageAdditionalFieldId": 4,
  "languages": LanguageResults
}

List

Description

Represents a list.

Fields
Field Name Description
id - ID! The ID of the list.
name - String! The name of the list.
description - String The description of the list.
listType - FolderType The type of the list.
allowedLinkInto - Boolean Indicates whether entries can be linked into this list.
allowedRemoveFrom - Boolean Indicates whether linked entries can be removed from this list.
addAllowed - Boolean Indicates whether entries can be added to this list.
deleteAllowed - Boolean Indicates whether entries can be deleted from this list.
addActivityAllowed - Boolean Indicates whether activities can be added.
addNoteAllowed - Boolean Indicates whether notes can be added.
ownerName - String The name of the owner of this list.
creatorName - String The name of the creator of this list.
allowedContactEntity - ContactEntity The allowed contact entity types for this list.
isAdministrator - Boolean Indicates whether the current user is an administrator of this list.
contacts - ListContactResults Retrieves the contacts for the list.
Arguments
contactFilter - ContactClassTypes

The filter to fetch contacts based on type.

skip - Int

The starting index for pagination.

limit - Int

The maximum number of items to retrieve.

sort - SortInput

The sorting options for the contacts.

filter - ListContactFilterInput

The filter criteria for the list contacts.

additionalFieldDefinitions - AdditionalFieldDefinitionResults The additional field definitions for this list.
Example
{
  "id": "4",
  "name": "xyz789",
  "description": "xyz789",
  "listType": FolderType,
  "allowedLinkInto": true,
  "allowedRemoveFrom": true,
  "addAllowed": false,
  "deleteAllowed": true,
  "addActivityAllowed": true,
  "addNoteAllowed": true,
  "ownerName": "abc123",
  "creatorName": "xyz789",
  "allowedContactEntity": "Any",
  "isAdministrator": false,
  "contacts": ListContactResults,
  "additionalFieldDefinitions": AdditionalFieldDefinitionResults
}

ListClass

Values
Enum Value Description

contactTypes

marketingList

administrativeFolder

marketingListWithSponsorship

workingList

unknown

Example
"contactTypes"

ListContact

Description

Represents a contact in a list.

Fields
Field Name Description
id - ID The ID of the contact.
displayName - String The display name of the contact.
firmContactId - ID The Firm ID of the associated contact in the relationship.
contactEntity - ContactEntity The contact entity information.
title - String The title of the person.
companyName - String The name of the company.
companyId - ID The ID of the company.
phoneNumber - String The phone number of the contact.
emailAddress - String The email address of the contact.
sponsors - Sponsor The sponsors associated with this contact.
additionalFieldValues - AdditionalFieldValueResults The additional field values for the contact.
lastEngagementDate - DateTime The last day the user interacted with the contact on this list.
Example
{
  "id": 4,
  "displayName": "abc123",
  "firmContactId": "4",
  "contactEntity": "Any",
  "title": "abc123",
  "companyName": "abc123",
  "companyId": "4",
  "phoneNumber": "xyz789",
  "emailAddress": "xyz789",
  "sponsors": Sponsor,
  "additionalFieldValues": AdditionalFieldValueResults,
  "lastEngagementDate": "2007-12-03T10:15:30Z"
}

ListContactFilterInput

Description

Input for filtering list contacts.

Fields
Input Field Description
displayName - String The name to filter contacts by.
jobTitle - String The job title to filter contacts by.
companyName - String The company name to filter contacts by.
businessPhoneNumber - String The business phone number to filter contacts by.
businessEmailAddress - String The business email address to filter contacts by.
primarySponsorUserName - String The primary sponsor username to filter contacts by.
contactType - ListContactType The type of contact to filter by.
checkForStrictPrimarySponsor - Boolean Set to true to require exact sponsor name matches.
lastEngagementDate - DateFilterInput The last engagement date range to filter contacts by in "YYYY-MM-DD" format.
additionalFields - [AdditionalFieldsFilter] The additional fields to filter contacts by.
Example
{
  "displayName": "abc123",
  "jobTitle": "abc123",
  "companyName": "abc123",
  "businessPhoneNumber": "abc123",
  "businessEmailAddress": "abc123",
  "primarySponsorUserName": "abc123",
  "contactType": "Any",
  "checkForStrictPrimarySponsor": false,
  "lastEngagementDate": DateFilterInput,
  "additionalFields": [AdditionalFieldsFilter]
}

ListContactResults

Fields
Field Name Description
totalModels - Int! The total number of items found.
models - [ListContact] The list of contacts.
Example
{"totalModels": 123, "models": [ListContact]}

ListContactType

Description

The available contact type options for list contacts.

Values
Enum Value Description

Any

Indicates that the contact can be any type.

Person

Indicates that the contact is a person.

Company

Indicates that the contact is a company.
Example
"Any"

ListFilterField

Values
Enum Value Description

name

listTypeIds

highlyManagedOnly

listContactType

Example
"name"

ListFilterInput

Fields
Input Field Description
field - ListFilterField Specifies the field type to filter the list.
value - String Specifies the value to filter the list by the selected field.
values - [String] Specifies multiple values to filter the list by the selected field.
Example
{
  "field": "name",
  "value": "abc123",
  "values": ["xyz789"]
}

ListResults

Fields
Field Name Description
skip - Int The starting index for pagination.
limit - Int The number of items retrieved.
totalModels - Int! The total number of items found.
models - [List] The list of lists.
Example
{
  "skip": 987,
  "limit": 987,
  "totalModels": 987,
  "models": [List]
}

ListType

Values
Enum Value Description

all

myFrequentlyUsed

Example
"all"

LocationChangeAddressInput

Description

Input for updating a location's address.

Fields
Input Field Description
addressId - ID The ID of the address.
label - String The label for this address.
street - String The street for this address.
city - String The city for this address (city, town, village, etc.).
administrativeDivision - String The administrative division for this address. This represents a state, province, governorate, department, or similar regional division depending on the country. This field may not be applicable for all countries.
country - String The country for this address.
postalCode - String The ZIP or postal code for this address. This field may not be applicable for all countries.
additionalField - String The additional information for this address.
owningContactId - ID The ID of the contact that owns this address.
isMailingAddress - Boolean Indicates whether this is a mailing address.
Example
{
  "addressId": 4,
  "label": "abc123",
  "street": "xyz789",
  "city": "abc123",
  "administrativeDivision": "abc123",
  "country": "abc123",
  "postalCode": "xyz789",
  "additionalField": "xyz789",
  "owningContactId": 4,
  "isMailingAddress": false
}

LocationChangeElectronicAddressInput

Description

Input for updating a location's electronic address.

Fields
Input Field Description
owningContactId - ID The ID of the contact that owns this electronic address.
electronicAddress - String The electronic address.
Example
{
  "owningContactId": 4,
  "electronicAddress": "xyz789"
}

LocationChangeInput

Description

Input for updating a contact's location.

Fields
Input Field Description
id - ID! The ID of the contact associated with this location.
jobTitle - String The job title for the contact at this location.
assistantName - String The name of the assistant for the contact at this location.
businessAddress - LocationChangeAddressInput The business address for this contact's location.
businessPhoneNumber - LocationChangePhoneInput The primary business phone number for this contact's location.
business2PhoneNumber - LocationChangePhoneInput The secondary business phone number for this contact's location.
mobilePhoneNumber - LocationChangePhoneInput The mobile phone number for this contact's location.
businessFaxNumber - LocationChangePhoneInput The business fax number for this contact's location.
pagerNumber - LocationChangePhoneInput The pager number for this contact's location.
businessElectronicAddress - LocationChangeElectronicAddressInput The business email address for this contact's location.
businessWebsite - LocationChangeElectronicAddressInput The business website address for this contact's location.
assistantPhoneNumber - LocationChangePhoneInput The phone number of the assistant for the contact at this location.
Example
{
  "id": 4,
  "jobTitle": "abc123",
  "assistantName": "abc123",
  "businessAddress": LocationChangeAddressInput,
  "businessPhoneNumber": LocationChangePhoneInput,
  "business2PhoneNumber": LocationChangePhoneInput,
  "mobilePhoneNumber": LocationChangePhoneInput,
  "businessFaxNumber": LocationChangePhoneInput,
  "pagerNumber": LocationChangePhoneInput,
  "businessElectronicAddress": LocationChangeElectronicAddressInput,
  "businessWebsite": LocationChangeElectronicAddressInput,
  "assistantPhoneNumber": LocationChangePhoneInput
}

LocationChangePhoneInput

Description

Input for updating a location's phone number.

Fields
Input Field Description
owningContactId - ID The ID of the contact that owns this phone number.
number - String The phone number.
Example
{
  "owningContactId": "4",
  "number": "xyz789"
}

Long

Example
{}

MailingAddressType

Description

The available mailing address types.

Values
Enum Value Description

None

Indicates that the mailing address type is not specified.

Home

Indicates that the mailing address type is a home address.

Business

Indicates that the mailing address type is a business address.

Other

Indicates that the mailing address type is other than home or business.
Example
"None"

MinimumRequiredFieldType

Values
Enum Value Description

none

email

lastName

phone

companyName

Example
"none"

MutateAdditionalFieldResults

Fields
Field Name Description
models - [UpdateListContactAdditionalFieldResults] The list of updated additional fields.
Example
{"models": [UpdateListContactAdditionalFieldResults]}

MutateCompanyResults

Fields
Field Name Description
validationErrors - [ValidationErrors] A collection of validation errors that occurred during the operation.
item - Company The updated company.
Example
{
  "validationErrors": [ValidationErrors],
  "item": Company
}

MutateListResults

Fields
Field Name Description
contactsEffected - Int The number of contacts successfully removed from the list.
pendingContactsEffected - Int The number of contacts with pending tickets for this operation.
resultText - String Summary of how many contacts were removed and the list name.
Example
{
  "contactsEffected": 123,
  "pendingContactsEffected": 123,
  "resultText": "xyz789"
}

MutateLocationResults

Fields
Field Name Description
status - ResultCode Status of the changes to the location.
validationErrors - [ValidationErrors] A collection of validation errors that occurred during the operation.
item - Contact The updated contact.
Example
{
  "status": "NoChange",
  "validationErrors": [ValidationErrors],
  "item": Contact
}

MutatePersonResults

Fields
Field Name Description
status - ResultCode Status of the changes to the person.
validationErrors - [ValidationErrors] A collection of validation errors that occurred during the operation.
item - Person The updated person.
Example
{
  "status": "NoChange",
  "validationErrors": [ValidationErrors],
  "item": Person
}

NoteResults

Fields
Field Name Description
totalModels - Int! The total number of items found.
models - [FirmNote] The list of notes.
Example
{"totalModels": 123, "models": [FirmNote]}

Notes

Description

Represents the notes associated with a contact.

Fields
Field Name Description
allNotes - NoteResults All notes about the contact (firm notes and 'my' notes).
Example
{"allNotes": NoteResults}

Person

Description

Represents a person contact.

Fields
Field Name Description
id - ID The ID of the person.
displayName - String The display name of the person.
contactEntity - ContactEntity The entity type of the contact (Person).
notes - Notes The firm notes and 'my' notes about the person.
visibility - ContactVisibility The visibility settings of the person.
relationshipScore - Score The relationship score of the person.
isEmployee - Boolean Indicates whether the person is an employee of the firm.
isPendingFirmContact - Boolean! Indicates whether this person is pending to be linked as My Contact and Firm Contact.
title - String The title of the person.
firstName - String The first name of the person.
middleName - String The middle name of the person.
lastName - String The last name of the person.
fullName - String The full name of the person.
suffix - String The suffix of the person.
goesBy - String The preferred name or nickname of the person.
currentJobTitle - String The current job title of the person.
currentEmployer - Company The current employer of the person.
assistantName - String The name of the person's assistant.
contactTypes - [ContactFolderContactType] The list of contact types associated with the person.
tags - [String] The list of tags associated with the person.
addresses - [Address] Retrieves the addresses associated to the person.
Arguments
type - AddressTypes

The type of address to retrieve.

usage - UsageTypes

The usage type of the address to retrieve.

emailAddresses - [EmailAddress] Retrieves the email addresses associated to the person.
Arguments
type - EmailAddressTypes

The type of email address to retrieve.

usage - UsageTypes

The usage type of the email address to retrieve.

phoneNumbers - [PhoneNumber] Retrieves the phone numbers associated to the person.
Arguments
type - PhoneNumberTypes

The type of phone number to retrieve.

usage - UsageTypes

The usage type of the phone number to retrieve.

activities - ActivityResults Retrieves the activities that the person is involved in.
Arguments
activityTypeIds - [ID]

The IDs of activity types to filter by.

startDateRange - Date

The start date of the date range to filter by in "YYYY-MM-DD" format.

endDateRange - Date

The end date of the date range to filter by in "YYYY-MM-DD" format.

skip - Int

The starting index for pagination.

limit - Int

The maximum number of items to retrieve.

sort - ActivitySortInput

The sorting options for the activities.

lists - ContactListResults Retrieves the lists that the person is a member of.
Arguments
listClass - [ListClass]

The types of lists to retrieve.

skip - Int

The starting index for pagination.

limit - Int

The maximum number of items to retrieve.

sort - SortInput

The sorting options for the lists.

listIds - [ID]

The IDs of lists to filter by.

notIncludedInTheLists - ContactListResults Retrieves the lists that the person is not a member of.
Arguments
listClass - [ListClass]

The types of lists to retrieve.

listType - ListType

The type of lists to retrieve (all or frequently used).

skip - Int

The starting index for pagination.

limit - Int

The maximum number of items to retrieve.

sort - SortInput

The sorting options for the lists.

additionalFieldValues - AdditionalFieldValueResults Retrieves the list-specific additional field values for the person.
Arguments
listId - ID!

The ID of the list to retrieve additional field values for.

contactAdditionalFieldValues - ContactAdditionalFieldValueResults Retrieves the additional field values associated with the person.
Arguments
filter - AdditionalFieldValueFilterInput

The filter criteria for the additional field values.

Example
{
  "id": 4,
  "displayName": "abc123",
  "contactEntity": "Any",
  "notes": Notes,
  "visibility": "unknown",
  "relationshipScore": Score,
  "isEmployee": true,
  "isPendingFirmContact": true,
  "title": "abc123",
  "firstName": "xyz789",
  "middleName": "xyz789",
  "lastName": "xyz789",
  "fullName": "xyz789",
  "suffix": "xyz789",
  "goesBy": "xyz789",
  "currentJobTitle": "xyz789",
  "currentEmployer": Company,
  "assistantName": "abc123",
  "contactTypes": [ContactFolderContactType],
  "tags": ["xyz789"],
  "addresses": [Address],
  "emailAddresses": [EmailAddress],
  "phoneNumbers": [PhoneNumber],
  "activities": ActivityResults,
  "lists": ContactListResults,
  "notIncludedInTheLists": ContactListResults,
  "additionalFieldValues": AdditionalFieldValueResults,
  "contactAdditionalFieldValues": ContactAdditionalFieldValueResults
}

PhoneInput

Description

Input for creating or updating a phone number.

Fields
Input Field Description
id - ID The ID of the phone to update. Can be null for new values.
owningContactId - ID The ID of the contact that owns this phone.
number - String The phone number.
usage - UsageTypes The usage type for this phone.
phoneType - PhoneNumberTypes The type for this phone.
Example
{
  "id": 4,
  "owningContactId": 4,
  "number": "abc123",
  "usage": "AlternateBusiness",
  "phoneType": "Mobile"
}

PhoneNumber

Description

Represents a phone number associated with a contact.

Fields
Field Name Description
id - ID The ID of the phone number.
addressId - ID The ID of the address associated with this phone number.
number - String The phone number.
label - String The label of the phone number.
type - PhoneNumberTypes The type of the phone number (Mobile, Phone, Pager, etc.).
usage - UsageTypes The usage type of the phone number (AlternateBusiness, AlternateHome, etc.).
owningContactId - ID The ID of the contact that owns this phone number.
isGlobal - Boolean Indicates whether this is a global phone number.
Example
{
  "id": "4",
  "addressId": 4,
  "number": "xyz789",
  "label": "abc123",
  "type": "Mobile",
  "usage": "AlternateBusiness",
  "owningContactId": "4",
  "isGlobal": true
}

PhoneNumberTypes

Description

The available phone number types.

Values
Enum Value Description

Mobile

Indicates that the phone number type is a mobile or cell phone.

Phone

Indicates that the phone number type is a standard phone.

Pager

Indicates that the phone number type is a pager.

Fax

Indicates that the phone number type is a fax machine.

Computer

Indicates that the phone number type is a computer.

Assistant

Indicates that the phone number type is an assistant's phone.

Other

Indicates that the phone number type is other than the predefined types.
Example
"Mobile"

Profile

Fields
Field Name Description
profileId - ID The ID of the profile.
name - String The name of the profile.
displayOrder - Int The display rank of this profile. Profiles are ordered by displayOrder value from lowest to highest.
listingType - String The type of listing: Company, Person, or Both.
userCriterionIds - [ID] The list of user IDs who have access to view the profile.
groupCriterionIds - [ID] Group IDs with access to this profile. Users belonging to any of these groups can view this profile.
contactTypeIds - [ID] The contact type IDs of the profile.
profileItems - [ProfileItem] The list of items contained in the profile.
Example
{
  "profileId": "4",
  "name": "xyz789",
  "displayOrder": 123,
  "listingType": "xyz789",
  "userCriterionIds": [4],
  "groupCriterionIds": [4],
  "contactTypeIds": [4],
  "profileItems": [ProfileItem]
}

ProfileDataType

Description

Represents a profile field data type.

Fields
Field Name Description
dataType - AdditionalFieldDataType The data type of this profile field.
displayDataType - String The label for this data type to be displayed in this field.
trueValue - String The label for the true value when the dataType is 'Boolean'.
falseValue - String The label for the false value when the dataType is 'Boolean'.
contactTypesAllowed - String Allowed contact types for this profile field: Person, Company, or Both.
Example
{
  "dataType": "integer",
  "displayDataType": "xyz789",
  "trueValue": "abc123",
  "falseValue": "abc123",
  "contactTypesAllowed": "xyz789"
}

ProfileItem

Description

Represents a profile field.

Fields
Field Name Description
type - FieldType The type of this profile field.
customFieldId - Long! The custom field ID of this profile field.
label - String The label of this profile field.
associatedCompanyValue - Boolean Indicates whether this profile field is associated with a company.
hideIfEmpty - Boolean Indicates whether this profile field will be hidden if empty.
summary - Boolean Indicates whether this field should appear in the summary of the profile.
href - String The URL of the link, if this field is a Link type.
displayMask - String An edit/display mask for values in this field.
dataType - ProfileDataType Additional constraints for data stored by this profile field.
note - FirmNote The note associated with this profile field.
Example
{
  "type": "Heading",
  "customFieldId": {},
  "label": "xyz789",
  "associatedCompanyValue": true,
  "hideIfEmpty": true,
  "summary": false,
  "href": "abc123",
  "displayMask": "abc123",
  "dataType": ProfileDataType,
  "note": FirmNote
}

ProfileResults

Fields
Field Name Description
totalModels - Int! The total number of items found.
models - [Profile] The list of profiles.
Example
{"totalModels": 987, "models": [Profile]}

RegionalLanguage

Description

Represents a regional language.

Fields
Field Name Description
id - ID The ID of the regional language.
name - String The name of the regional language.
localName - String The local name of the regional language.
isoCode - String The ISO code of the regional language.
Example
{
  "id": "4",
  "name": "xyz789",
  "localName": "abc123",
  "isoCode": "xyz789"
}

RegionalSetting

Description

Represents a regional setting.

Fields
Field Name Description
id - ID The ID of the regional setting.
code - String The code value of the regional setting.
name - String The name of the regional setting.
Example
{
  "id": "4",
  "code": "xyz789",
  "name": "xyz789"
}

RegionalSettings

Description

Represents the regional settings.

Fields
Field Name Description
language - RegionalSetting The language settings of current user.
country - RegionalSetting The country settings of the current user.
locale - RegionalSetting The locale settings of the current user.
languages - [RegionalLanguage] The list of all regional languages.
Example
{
  "language": RegionalSetting,
  "country": RegionalSetting,
  "locale": RegionalSetting,
  "languages": [RegionalLanguage]
}

RemoveContactFromListsInput

Description

Input for removing a contact from lists.

Fields
Input Field Description
listIds - [ID!] The IDs of the lists to remove a contact from.
contactId - ID! The ID of the contact to remove.
Example
{
  "listIds": ["4"],
  "contactId": "4"
}

RemoveContactFromListsResults

Fields
Field Name Description
successIds - [String] List IDs where the contact was successfully removed.
failedIds - [String] List IDs where contact removal failed.
pendingIds - [String] List IDs where contact removal is pending approval.
resultText - String Summary of the removal operation.
Example
{
  "successIds": ["abc123"],
  "failedIds": ["xyz789"],
  "pendingIds": ["xyz789"],
  "resultText": "abc123"
}

RemoveContactFromListsValidationResults

Fields
Field Name Description
item - RemoveContactFromListsResults Result of removeContactFromLists operation.
validationErrors - [ValidationErrors] A collection of validation errors that occurred during the operation.
Example
{
  "item": RemoveContactFromListsResults,
  "validationErrors": [ValidationErrors]
}

ResultCode

Values
Enum Value Description

NoChange

Indicates that no change has taken place.

ChangeAccepted

Indicates that the change has been accepted.

ChangeInReview

Indicates that the change is under review.

ChangeSubmittedForApproval

Indicates that the change has been submitted for approval.
Example
"NoChange"

Score

Description

Represents a relationship score.

Fields
Field Name Description
strength - Int! The raw score value.
description - String The description of the score.
Example
{"strength": 123, "description": "abc123"}

SearchResultsFrom

Values
Enum Value Description

Term

Results derived from search term.

EmailAddress

Results derived from email address.

FullName

Results derived from full name.
Example
"Term"

SearchTerms

Fields
Field Name Description
term - String The search term used in the query.
firstName - String The first name used in the search.
lastName - String The last name used in the search.
company - String The company name used in the search.
emailAddress - String The email address used in the search.
Example
{
  "term": "abc123",
  "firstName": "xyz789",
  "lastName": "abc123",
  "company": "abc123",
  "emailAddress": "xyz789"
}

SortDirection

Values
Enum Value Description

Ascending

Sorts in ascending order.

Descending

Sorts in descending order.
Example
"Ascending"

SortInput

Fields
Input Field Description
field - String Specifies the field to use for sorting the search results.
direction - String Specifies the sort direction for the search results (Ascending or Descending).
Example
{
  "field": "abc123",
  "direction": "xyz789"
}

Sponsor

Description

Represents a sponsor of a contact on a list.

Fields
Field Name Description
id - ID The ID of the contact.
isPrimary - Boolean Indicates whether this is the primary sponsor.
fullName - String The full name of the sponsor.
displayName - String The display name of the sponsor.
Example
{
  "id": 4,
  "isPrimary": true,
  "fullName": "abc123",
  "displayName": "abc123"
}

State

Description

Represents a state object. Examples include territories, provinces, or states.

Fields
Field Name Description
id - ID The ID of the state.
name - String The name of the state.
abbreviation - String The abbreviation of the state.
Example
{
  "id": 4,
  "name": "abc123",
  "abbreviation": "abc123"
}

String

Example
"xyz789"

Unknown

Description

Represents an unknown type of contact.

Fields
Field Name Description
id - ID The ID of the contact.
displayName - String The display name of the contact.
contactEntity - ContactEntity The entity type of the contact (Person, Company, Any or None).
notes - Notes The firm notes and 'my' notes about the contact.
visibility - ContactVisibility The visibility settings of the contact.
relationshipScore - Score The relationship score of the contact.
title - String The salutational title of the person (Mr., Mrs., Dr., etc.).
firstName - String The first name of the person.
middleName - String The middle name of the person.
lastName - String The last name of the person.
fullName - String The full name of the person.
suffix - String The suffix of the person (Jr., M.D., etc.).
goesBy - String The preferred name or nickname of the person.
currentJobTitle - String The current job title of the person.
currentEmployer - Company The current employer of the person.
assistantName - String The name of the person's assistant.
contactTypes - [ContactFolderContactType] The contact types associated with the contact.
tags - [String] The tags associated with the contact.
addresses - [Address] Retrieves the addresses associated to the contact.
Arguments
type - AddressTypes

The type of address to retrieve.

usage - UsageTypes

The usage type of the address to retrieve.

emailAddresses - [EmailAddress] Retrieves the email addresses associated to the contact.
Arguments
type - EmailAddressTypes

The type of email address to retrieve.

usage - UsageTypes

The usage type of the email address to retrieve.

phoneNumbers - [PhoneNumber] Retrieves the phone numbers associated to the contact.
Arguments
type - PhoneNumberTypes

The type of phone number to retrieve.

usage - UsageTypes

The usage type of the phone number to retrieve.

activities - ActivityResults Retrieves the activities that the contact is involved in.
Arguments
activityTypeIds - [ID]

The IDs of activity types to filter by.

startDateRange - Date

The start date of the date range to filter by in "YYYY-MM-DD" format.

endDateRange - Date

The end date of the date range to filter by in "YYYY-MM-DD" format.

skip - Int

The starting index for pagination.

limit - Int

The maximum number of items to retrieve.

sort - ActivitySortInput

The sorting options for the activities.

lists - ContactListResults Retrieves the lists that the contact is a member of.
Arguments
listClass - [ListClass]

The types of lists to retrieve (contactTypes, marketingList, etc.).

listType - ListType

The type of lists to retrieve (all or myFrequentlyUsed).

skip - Int

The starting index for pagination.

limit - Int

The maximum number of items to retrieve.

sort - SortInput

The sorting options for the lists.

listIds - [ID]

The IDs of lists to filter by.

notIncludedInTheLists - ContactListResults Retrieves the lists that the contact is not a member of.
Arguments
listClass - [ListClass]

The types of lists to retrieve (contactTypes, marketingList, etc.).

listType - ListType

The type of lists to retrieve (all or myFrequentlyUsed).

skip - Int

The starting index for pagination.

limit - Int

The maximum number of items to retrieve.

sort - SortInput

The sorting options for the lists.

additionalFieldValues - AdditionalFieldValueResults Retrieves the list-specific additional field values for the contact.
Arguments
listId - ID!

The ID of the list to retrieve specific additional field values.

contactAdditionalFieldValues - ContactAdditionalFieldValueResults Retrieves the additional field values associated with the contact.
Arguments
filter - AdditionalFieldValueFilterInput

The filter criteria for the additional field values.

Example
{
  "id": 4,
  "displayName": "xyz789",
  "contactEntity": "Any",
  "notes": Notes,
  "visibility": "unknown",
  "relationshipScore": Score,
  "title": "abc123",
  "firstName": "abc123",
  "middleName": "abc123",
  "lastName": "abc123",
  "fullName": "xyz789",
  "suffix": "xyz789",
  "goesBy": "xyz789",
  "currentJobTitle": "xyz789",
  "currentEmployer": Company,
  "assistantName": "abc123",
  "contactTypes": [ContactFolderContactType],
  "tags": ["xyz789"],
  "addresses": [Address],
  "emailAddresses": [EmailAddress],
  "phoneNumbers": [PhoneNumber],
  "activities": ActivityResults,
  "lists": ContactListResults,
  "notIncludedInTheLists": ContactListResults,
  "additionalFieldValues": AdditionalFieldValueResults,
  "contactAdditionalFieldValues": ContactAdditionalFieldValueResults
}

UpdateActivityInput

Description

Input for updating an existing activity.

Fields
Input Field Description
activityId - ID! The ID of the activity to update.
typeId - ID! The ID of the ActivityType to assign to the activity.
activityDate - String The date and time for the activity in YYYY-MM-DD HH:mm:ss format.
subject - String The subject for the activity.
summary - String The summary for the activity.
linkedEntityIds - [ID!] A list of entity IDs to link to the activity.
Example
{
  "activityId": 4,
  "typeId": 4,
  "activityDate": "abc123",
  "subject": "xyz789",
  "summary": "abc123",
  "linkedEntityIds": [4]
}

UpdateActivityResult

Fields
Field Name Description
validationErrors - [ValidationErrors] A collection of validation errors that occurred during the operation.
item - Activity The updated activity.
Example
{
  "validationErrors": [ValidationErrors],
  "item": Activity
}

UpdateContactAdditionalFieldsInput

Description

Input for updating additional fields of a contact.

Fields
Input Field Description
id - ID! The ID of the contact to update.
contactAdditionalFields - [AdditionalField] The additional fields to update.
Example
{"id": 4, "contactAdditionalFields": [AdditionalField]}

UpdateListContactAdditionalFieldInput

Description

Input for updating a list contact's additional fields.

Fields
Input Field Description
contactId - ID! The ID of the contact to update.
additionalFields - [AdditionalField]! The additional fields to update.
Example
{
  "contactId": "4",
  "additionalFields": [AdditionalField]
}

UpdateListContactAdditionalFieldResults

Fields
Field Name Description
fieldId - ID The ID of the field definition.
valueId - ID The ID for the value of the field definition.
isSuccessful - Boolean Indicates whether the update was successful.
failureReason - String The reason for failure if the update was unsuccessful.
Example
{
  "fieldId": 4,
  "valueId": "4",
  "isSuccessful": false,
  "failureReason": "abc123"
}

UpdatePublicCompanyInput

Description

Input for updating an existing company firm contact.

Fields
Input Field Description
companyId - ID! The ID of the company to update.
companyName - String The name for the company.
alias - String The common name or alias for the company.
entityId - String The ID for the matching entity.
entityEmail - String The email address for the matching entity.
entityCountry - String The country for the matching entity.
entityCity - String The city for the matching entity.
entityState - String The state for the matching entity.
entityWebsite - String The website for the matching entity.
matchingStrength - Float The match strength of the matching entity.
folderContactTypes - [ID] A list of ContactType IDs to associate to the company.
businessAddress - AddressInput The business address for the company.
primaryPhone - PhoneInput The primary phone number for the company.
secondaryPhone - PhoneInput The secondary phone number for the company.
mobilePhone - PhoneInput The mobile phone number for the company.
faxNumber - PhoneInput The fax number for the company.
pagerNumber - PhoneInput The pager number for the company.
businessEmail - ElectronicAddressInput The business email address for the company.
website - ElectronicAddressInput The website for the company.
canAutoUpdate - Boolean Indicates whether the company can automatically update.
Example
{
  "companyId": "4",
  "companyName": "xyz789",
  "alias": "xyz789",
  "entityId": "abc123",
  "entityEmail": "abc123",
  "entityCountry": "abc123",
  "entityCity": "xyz789",
  "entityState": "xyz789",
  "entityWebsite": "abc123",
  "matchingStrength": 987.65,
  "folderContactTypes": [4],
  "businessAddress": AddressInput,
  "primaryPhone": PhoneInput,
  "secondaryPhone": PhoneInput,
  "mobilePhone": PhoneInput,
  "faxNumber": PhoneInput,
  "pagerNumber": PhoneInput,
  "businessEmail": ElectronicAddressInput,
  "website": ElectronicAddressInput,
  "canAutoUpdate": true
}

UpdatePublicPersonInput

Description

Input for updating an existing person firm contact.

Fields
Input Field Description
id - ID! The ID of the person to update.
firstName - String The first name for the person.
lastName - String The last name for the person.
title - String The salutational title for the person (Mr., Mrs., Dr., etc.).
suffix - String The suffix for the person (Jr., M.D., etc.).
middleName - String The middle name for the person.
goesBy - String The preferred name or nickname for the person.
primaryPhone - PhoneInput The primary phone number for the person.
companyPhone - PhoneInput The company phone number for the person.
faxNumber - PhoneInput The fax number for the person.
mobilePhone - PhoneInput The mobile phone number for the person.
pagerNumber - PhoneInput The pager number for the person.
email - ElectronicAddressInput The email address for the person.
website - ElectronicAddressInput The website for the person.
assistantName - String The name of the person's assistant.
assistantPhone - PhoneInput The phone number of the person's assistant.
companyName - String The name of the company where the person is employed.
companyId - ID The ID of the company where the person is employed.
jobTitle - String The job title for the person.
address - AddressInput The address for the person.
folderContactTypes - [ID] A list of ContactType IDs to associate to the person.
contactAdditionalFields - [AdditionalField] The language and gender settings for the person. You must have language-specific information enabled in firm settings.
canAutoUpdate - Boolean Indicates whether updates should be applied automatically at the person level.
Example
{
  "id": "4",
  "firstName": "abc123",
  "lastName": "xyz789",
  "title": "abc123",
  "suffix": "abc123",
  "middleName": "abc123",
  "goesBy": "xyz789",
  "primaryPhone": PhoneInput,
  "companyPhone": PhoneInput,
  "faxNumber": PhoneInput,
  "mobilePhone": PhoneInput,
  "pagerNumber": PhoneInput,
  "email": ElectronicAddressInput,
  "website": ElectronicAddressInput,
  "assistantName": "abc123",
  "assistantPhone": PhoneInput,
  "companyName": "xyz789",
  "companyId": "4",
  "jobTitle": "xyz789",
  "address": AddressInput,
  "folderContactTypes": [4],
  "contactAdditionalFields": [AdditionalField],
  "canAutoUpdate": true
}

UsageTypes

Description

The available usage types for addresses, email addresses, and phone numbers.

Values
Enum Value Description

AlternateBusiness

Indicates that the usage type is an alternate business.

AlternateHome

Indicates that the usage type is an alternate home.

Business

Indicates that the usage type is a primary business.

Home

Indicates that the usage type is a home.

Business2

Indicates that the usage type is a secondary business.

Other

Indicates that the usage type is other than the predefined types.
Example
"AlternateBusiness"

ValidationErrors

Description

A collection of validation errors.

Fields
Field Name Description
propertyName - String The name of the property that caused the validation error.
message - String! The error message from the validation error.
Example
{
  "propertyName": "xyz789",
  "message": "xyz789"
}