POST {clientId}/Profile

Creates a unique Profile record returning the system generated ProfileId for all subsequent profile operations. A Profile record represents a unified view of a person across all channels and touchpoints.

Request Information

URI Parameters

NameDescriptionTypeAdditional information
clientId

This is your organization’s MyPreferences account Id.

string

Required

Body Parameters

NameDescriptionTypeAdditional information
Addresses

A collection of Mailing addresses associated with the profile.

Collection of CreateAddressEntry
IsActive

Defines whether the item is Active or Inactive. You can activate the profile using the Activate Profile API

boolean

You can activate the profile using the Activate Profile API.

RegistrationConfirmed

An optional field for clients to use at their discretion to accommodate scenarios in which customer profile verification is performed.

boolean

This setting defaults to False, if not specified.

CustomerType

An identifier used to classify a person. For example, a contact can be classified as a Customer or a Prospect.

string

If a Type is not provided, the available default Type will be associated with the Profile.

Max length: 100

PreservePreferences

Specifies whether to retain the preferences or deactivate them when a Contact Type is deactivated. To retain the preferences, set the value as True. If set to False, the preferences will be deactivated. This setting defaults to True, if not specified.

boolean

To retain the preferences, set the value as True. If set to False, the preferences will be deactivated. This setting defaults to True, if not specified.

DefaultLocale

Default locale associated with the profile. If not specified, the default locale configured for your MyPreferences account will be used.

string

Max length: 15

CustomerName

The Name fields on the profile

CustomerName
AlternateIds

A collection of Additional unique identifiers that can be associated with a profile. For example, customer identifiers from other applications such as Salesforce, Marketo or Facebook can be stored as AlternateIds.

Collection of AlternateIdEntry
Emails

A collection of Email addresses associated with the profile.

Collection of EmailEntry
PhoneNumbers

A collection of Phone numbers associated with the profile.

Collection of PhoneNumberEntry
Groups

A collection of Groups associated with the profile.

Collection of GroupEntry
ProfileTags

A collection of Tags associated with the profile.

Collection of Tag

Tags help you organize your profiles based on specific pieces of information such as Influencers or Reward members. You can add and delete Tags without affecting the profile information.

CustomFields

A collection of Custom Fields associated with the profile.

Collection of CustomFieldValue

Custom Fields helps you expand and enrich the collection of user profile data throughout the customer journey.

Request Formats

application/json, text/json, application/json-patch+json

Sample:
{
  "Addresses": [
    {
      "AddressType": "sample string 1",
      "IsDefault": true,
      "Address1": "sample string 3",
      "Address2": "sample string 4",
      "City": "sample string 5",
      "StateProvince": "sample string 6",
      "CountryCode_Numeric": "sample string 7",
      "CountryCode_Alpha2": "sample string 8",
      "CountryCode_Alpha3": "sample string 9",
      "PostalCode": "sample string 10"
    },
    {
      "AddressType": "sample string 1",
      "IsDefault": true,
      "Address1": "sample string 3",
      "Address2": "sample string 4",
      "City": "sample string 5",
      "StateProvince": "sample string 6",
      "CountryCode_Numeric": "sample string 7",
      "CountryCode_Alpha2": "sample string 8",
      "CountryCode_Alpha3": "sample string 9",
      "PostalCode": "sample string 10"
    }
  ],
  "PhoneNumbers": [
    {
      "PhoneType": "sample string 1",
      "PhoneNumber": "sample string 2",
      "IsDefault": true,
      "IsMobile" : true
    },
    {
      "PhoneType": "sample string 1",
      "PhoneNumber": "sample string 2",
      "IsDefault": true,
      "IsMobile" : true
    }
  ],
  "IsActive": true,
  "RegistrationConfirmed": true,
  "DefaultLocale":"sample string 1",
  "CustomerType": "sample string 3",
  "PreservePreferences" : true,
  "CustomerName": {
    "FirstName": "sample string 1",
    "MiddleName": "sample string 2",
    "LastName": "sample string 3",
    "Prefix": "sample string 4",
    "Suffix": "sample string 5"
  },
  "AlternateIds": [
    {
      "AlternateIdType": "sample string 1",
      "AlternateId": "sample string 2"
    },
    {
      "AlternateIdType": "sample string 1",
      "AlternateId": "sample string 2"
    }
  ],
  "Emails": [
    {
      "EmailAddressType": "sample string 1",
      "EmailAddress": "sample string 2",
      "IsDefault": true
    },
    {
      "EmailAddressType": "sample string 1",
      "EmailAddress": "sample string 2",
      "IsDefault": true
    }
  ],
  "Groups": [
    {
      "GroupName": "sample string 2",
      "GroupType": "sample string 1",
      "IsPrimary": true
    },
    {
      "GroupName": "sample string 2",
      "GroupType": "sample string 1",
      "IsPrimary": true
    }
  ],
  "ProfileTags": [
    {
      "Name": "sample string 1"
    },
    {
      "Name": "sample string 1"
    }
  ],
  "CustomFields": [
    {
      "Name": "sample string 1",
      "Value": "sample string 2"
    },
    {
      "Name": "sample string 1",
      "Value": "sample string 2"
    }
  ]
}

application/xml, text/xml

Sample:
<CreateUserProfile xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ProfileServices.REST.Models">
  <AlternateIds>
    <AlternateIdEntry>
      <AlternateId>sample string 2</AlternateId>
      <AlternateIdType>sample string 1</AlternateIdType>
    </AlternateIdEntry>
    <AlternateIdEntry>
      <AlternateId>sample string 2</AlternateId>
      <AlternateIdType>sample string 1</AlternateIdType>
    </AlternateIdEntry>
  </AlternateIds>
  <CustomerName>
    <FirstName>sample string 1</FirstName>
    <LastName>sample string 3</LastName>
    <MiddleName>sample string 2</MiddleName>
    <Prefix>sample string 4</Prefix>
    <Suffix>sample string 5</Suffix>
  </CustomerName>
  <CustomerType>sample string 3</CustomerType>
  <PreservePreferences>true</PreservePreferences>
  <Emails>
    <EmailEntry>
      <EmailAddress>sample string 2</EmailAddress>
      <EmailAddressType>sample string 1</EmailAddressType>
      <IsDefault>true</IsDefault>
    </EmailEntry>
    <EmailEntry>
      <EmailAddress>sample string 2</EmailAddress>
      <EmailAddressType>sample string 1</EmailAddressType>
      <IsDefault>true</IsDefault>
    </EmailEntry>
  </Emails>
  <Groups>
    <GroupEntry>
      <GroupName>sample string 2</GroupName>
      <GroupType>sample string 1</GroupType>
      <IsPrimary>true</IsPrimary>
    </GroupEntry>
    <GroupEntry>
      <GroupName>sample string 2</GroupName>
      <GroupType>sample string 1</GroupType>
      <IsPrimary>true</IsPrimary>
    </GroupEntry>
  </Groups>
  <IsActive>true</IsActive>
  <DefaultLocale>sample string 1</DefaultLocale>
  <ProfileTags>
    <Tag>
      <Name>sample string 1</Name>
    </Tag>
    <Tag>
      <Name>sample string 1</Name>
    </Tag>
  </ProfileTags>
  <CustomFields>
    <CustomFieldValue>
      <Name>sample string 1</Name>
      <Value>sample string 2</Value>
    </CustomFieldValue>
    <CustomFieldValue>
      <Name>sample string 1</Name>
      <Value>sample string 2</Value>
    </CustomFieldValue>
  </CustomFields>
  <RegistrationConfirmed>true</RegistrationConfirmed>
  <Addresses>
    <CreateAddressEntry>
      <Address1>sample string 3</Address1>
      <Address2>sample string 4</Address2>
      <City>sample string 5</City>
      <CountryCode_Alpha2>sample string 8</CountryCode_Alpha2>
      <CountryCode_Alpha3>sample string 9</CountryCode_Alpha3>
      <CountryCode_Numeric>sample string 7</CountryCode_Numeric>
      <PostalCode>sample string 10</PostalCode>
      <StateProvince>sample string 6</StateProvince>
      <AddressType>sample string 1</AddressType>
      <IsDefault>true</IsDefault>
    </CreateAddressEntry>
    <CreateAddressEntry>
      <Address1>sample string 3</Address1>
      <Address2>sample string 4</Address2>
      <City>sample string 5</City>
      <CountryCode_Alpha2>sample string 8</CountryCode_Alpha2>
      <CountryCode_Alpha3>sample string 9</CountryCode_Alpha3>
      <CountryCode_Numeric>sample string 7</CountryCode_Numeric>
      <PostalCode>sample string 10</PostalCode>
      <StateProvince>sample string 6</StateProvince>
      <AddressType>sample string 1</AddressType>
      <IsDefault>true</IsDefault>
    </CreateAddressEntry>
  </Addresses>
  <PhoneNumbers>
    <CreatePhoneNumberEntry>
      <IsDefault>true</IsDefault>
      <IsMobile>true</IsMobile>
      <PhoneNumber>sample string 2</PhoneNumber>
      <PhoneType>sample string 1</PhoneType>
    </CreatePhoneNumberEntry>
    <CreatePhoneNumberEntry>
      <IsDefault>true</IsDefault>
      <IsMobile>true</IsMobile>
      <PhoneNumber>sample string 2</PhoneNumber>
      <PhoneType>sample string 1</PhoneType>
    </CreatePhoneNumberEntry>
  </PhoneNumbers>
</CreateUserProfile>

Response Information

Response Codes

HTTP Status CodeTextDescription
201 Created The request was successful and resulted in the creation of a new resource. The newly created resource can be referenced by its specific URI returned in the Location header field.
400 Bad Request The request was invalid and cannot be processed. This may be a result of a malformed request. You must update the request before trying again.
401 Unauthorized Authentication credentials are missing or incorrect. You must verify your ClientId, UserId, and Authorization Scheme before trying again.
403 Forbidden The authentication credentials were insufficient to grant access to the requested resource. In most cases, your user may not have the appropriate permissions to access the requested resource. Verify User Group permissions for your user before trying again.
409 Conflict The request could not be completed due to a conflict with the current state of the target resource. In most cases, an instance with the same already exists on the target resource. You must update the request before trying again.
500 Internal Server Error The server encountered an unexpected condition that prevented it from fulfilling the request. Notify PossibleNOW Support if it’s a continuous occurrence.

Resource Description

UserProfile
NameDescriptionTypeAdditional information
ProfileId

A read-only unique identifier associated with the Profile. It is auto generated by the system when a profile is created.

integer

Read-Only

Edited

Read-only system fields returned as part of an API response. These are updated automatically when a profile is created or modified.

EditInfo

Read-Only

Addresses

A collection of Mailing addresses associated with the profile.

Collection of AddressEntry
Consents

A collection of consents associated with the profile.

Collection of CustomerConsent

Consents are not supported when creating a Profile. You must use the POST Consents endpoint to associate consents to a Profile

Read-Only

ReasonCode

An optional parameter that can be passed on the Deactivate Profile API to store the reason for deletion.

string

Max length: 256

Read-Only

The Reason code field is supported only when deactivating a preference. It is not returned as part of this call

IsActive

Defines whether the item is Active or Inactive. You can activate the profile using the Activate Profile API

boolean

You can activate the profile using the Activate Profile API.

RegistrationConfirmed

An optional field for clients to use at their discretion to accommodate scenarios in which customer profile verification is performed.

boolean

This setting defaults to False, if not specified.

CustomerType

An identifier used to classify a person. For example, a contact can be classified as a Customer or a Prospect.

string

If a Type is not provided, the available default Type will be associated with the Profile.

Max length: 100

PreservePreferences

Specifies whether to retain the preferences or deactivate them when a Contact Type is deactivated. To retain the preferences, set the value as True. If set to False, the preferences will be deactivated. This setting defaults to True, if not specified.

boolean

To retain the preferences, set the value as True. If set to False, the preferences will be deactivated. This setting defaults to True, if not specified.

DefaultLocale

Default locale associated with the profile. If not specified, the default locale configured for your MyPreferences account will be used.

string

Max length: 15

CustomerName

The Name fields on the profile

CustomerName
AlternateIds

A collection of Additional unique identifiers that can be associated with a profile. For example, customer identifiers from other applications such as Salesforce, Marketo or Facebook can be stored as AlternateIds.

Collection of AlternateIdEntry
Emails

A collection of Email addresses associated with the profile.

Collection of EmailEntry
PhoneNumbers

A collection of Phone numbers associated with the profile.

Collection of PhoneNumberEntry
Groups

A collection of Groups associated with the profile.

Collection of GroupEntry
ProfileTags

A collection of Tags associated with the profile.

Collection of Tag

Tags help you organize your profiles based on specific pieces of information such as Influencers or Reward members. You can add and delete Tags without affecting the profile information.

CustomFields

A collection of Custom Fields associated with the profile.

Collection of CustomFieldValue

Custom Fields helps you expand and enrich the collection of user profile data throughout the customer journey.

Response Formats

application/json, text/json, application/json-patch+json

Sample:
{
  "ProfileId": 1,
  "Edited": {
    "CreateDate": "sample string 1",
    "CreatedBy": "sample string 2",
    "ModifiedDate": "sample string 3",
    "ModifiedBy": "sample string 4"
  },
  "Addresses": [
    {
      "AddressType": "sample string 1",
      "IsDefault": true,
      "IsActive": true,
      "Country": "sample string 3",
      "Address1": "sample string 4",
      "Address2": "sample string 5",
      "City": "sample string 6",
      "StateProvince": "sample string 7",
      "CountryCode_Numeric": "sample string 8",
      "CountryCode_Alpha2": "sample string 9",
      "CountryCode_Alpha3": "sample string 10",
      "PostalCode": "sample string 11",
      "CassAddress1": "sample string 12",
      "CassAddress2": "sample string 13",
      "CassCity": "sample string 14",
      "CassStateProvince": "sample string 15",
      "CassPostalCode": "sample string 16",
      "CassStatus": "Y"
    },
    {
      "AddressType": "sample string 1",
      "IsDefault": true,
      "IsActive": true,
      "Country": "sample string 3",
      "Address1": "sample string 4",
      "Address2": "sample string 5",
      "City": "sample string 6",
      "StateProvince": "sample string 7",
      "CountryCode_Numeric": "sample string 8",
      "CountryCode_Alpha2": "sample string 9",
      "CountryCode_Alpha3": "sample string 10",
      "PostalCode": "sample string 11",
      "CassAddress1": "sample string 12",
      "CassAddress2": "sample string 13",
      "CassCity": "sample string 14",
      "CassStateProvince": "sample string 15",
      "CassPostalCode": "sample string 16",
      "CassStatus": "Y"
    }
  ],
  "PhoneNumbers": [
    {
      "PhoneType": "sample string 2",
      "PhoneNumber": "sample string 3",
      "PhoneNumberNumeric": 5,
      "IsDefault": true,
      "IsActive": true,
      "IsMobile" : true
    },
    {
      "PhoneType": "sample string 2",
      "PhoneNumber": "sample string 3",
      "PhoneNumberNumeric": 5,
      "IsDefault": true,
      "IsActive": true,
      "IsMobile" : true 
    }
  ],
  "Consents": [
    {
      "ConsentType": "sample string 1",
      "Locale": "sample string 3",
      "ConsentStatus": "sample string 4",
      "ConsentVersion": "sample string 5",
      "Expired": "sample string 6",
      "ExpirationDate": "sample string 7",
      "ConsentDate": "sample string 8",
      "Edited": {
        "CreateDate": "sample string 1",
        "CreatedBy": "sample string 2",
        "ModifiedDate": "sample string 3",
        "ModifiedBy": "sample string 4"
      }
  },
    {
      "ConsentType": "sample string 1",
      "Locale": "sample string 3",
      "ConsentStatus": "sample string 4",
      "ConsentVersion": "sample string 5",
      "Expired": "sample string 6",
      "ExpirationDate": "sample string 7",
      "ConsentDate": "sample string 8",
      "Edited": {
        "CreateDate": "sample string 1",
        "CreatedBy": "sample string 2",
        "ModifiedDate": "sample string 3",
        "ModifiedBy": "sample string 4"
      }
    }
  ],
  "IsActive": true,
  "RegistrationConfirmed": true,
  "DefaultLocale":"sample string 1",
  "CustomerType": "sample string 4",
  "PreservePreferences" : true,
  "CustomerName": {
    "FirstName": "sample string 1",
    "MiddleName": "sample string 2",
    "LastName": "sample string 3",
    "Prefix": "sample string 4",
    "Suffix": "sample string 5"
  },
  "AlternateIds": [
    {
      "AlternateIdType": "sample string 1",
      "AlternateId": "sample string 2"
    },
    {
      "AlternateIdType": "sample string 1",
      "AlternateId": "sample string 2"
    }
  ],
  "Emails": [
    {
      "EmailAddressType": "sample string 1",
      "EmailAddress": "sample string 2",
      "IsDefault": true,
      "IsActive": true
    },
    {
      "EmailAddressType": "sample string 1",
      "EmailAddress": "sample string 2",
      "IsDefault": true,
      "IsActive": true
    }
  ],
  "Groups": [
    {
      "GroupId": "sample string 2",
      "GroupType": "sample string 1",
      "IsPrimary": true
    },
    {
      "GroupId": "sample string 2",
      "GroupType": "sample string 1",
      "IsPrimary": true
    }
  ],
  "ProfileTags": [
    {
      "Name": "sample string 1"
    },
    {
      "Name": "sample string 1"
    }
  ],
  "CustomFields": [
    {
      "Name": "sample string 1",
      "Value": "sample string 2"
    },
    {
      "Name": "sample string 1",
      "Value": "sample string 2"
    }
  ]
}

application/xml, text/xml

Sample:
<UserProfile xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ProfileServices.REST.Models">
  <AlternateIds>
    <AlternateIdEntry>
      <AlternateId>sample string 2</AlternateId>
      <AlternateIdType>sample string 1</AlternateIdType>
    </AlternateIdEntry>
    <AlternateIdEntry>
      <AlternateId>sample string 2</AlternateId>
      <AlternateIdType>sample string 1</AlternateIdType>
    </AlternateIdEntry>
  </AlternateIds>
  <CustomerName>
    <FirstName>sample string 1</FirstName>
    <LastName>sample string 3</LastName>
    <MiddleName>sample string 2</MiddleName>
    <Prefix>sample string 4</Prefix>
    <Suffix>sample string 5</Suffix>
  </CustomerName>
  <CustomerType>sample string 4</CustomerType>
  <PreservePreferences>true</PreservePreferences>
  <Emails>
    <EmailEntry>
      <EmailAddress>sample string 2</EmailAddress>
      <EmailAddressType>sample string 1</EmailAddressType>
      <IsDefault>true</IsDefault>
      <IsActive>true</IsActive>
    </EmailEntry>
    <EmailEntry>
      <EmailAddress>sample string 2</EmailAddress>
      <EmailAddressType>sample string 1</EmailAddressType>
      <IsDefault>true</IsDefault>
      <IsActive>true</IsActive>
    </EmailEntry>
  </Emails>
  <Groups>
    <GroupEntry>
      <GroupName>sample string 2</GroupName>
      <GroupType>sample string 1</GroupType>
      <IsPrimary>true</IsPrimary>
    </GroupEntry>
    <GroupEntry>
      <GroupName>sample string 2</GroupName>
      <GroupType>sample string 1</GroupType>
      <IsPrimary>true</IsPrimary>
    </GroupEntry>
  </Groups>
  <IsActive>true</IsActive>
  <ProfileTags>
    <Tag>
      <Name>sample string 1</Name>
    </Tag>
    <Tag>
      <Name>sample string 1</Name>
    </Tag>
  </ProfileTags>
  <CustomFields>
    <CustomFieldValue>
      <Name>sample string 1</Name>
      <Value>sample string 2</Value>
    </CustomFieldValue>
    <CustomFieldValue>
      <Name>sample string 1</Name>
      <Value>sample string 2</Value>
    </CustomFieldValue>
  </CustomFields>
  <RegistrationConfirmed>true</RegistrationConfirmed>
  <Addresses>
    <AddressEntry>
      <Address1>sample string 4</Address1>
      <Address2>sample string 5</Address2>
      <City>sample string 6</City>
      <CountryCode_Alpha2>sample string 9</CountryCode_Alpha2>
      <CountryCode_Alpha3>sample string 10</CountryCode_Alpha3>
      <CountryCode_Numeric>sample string 8</CountryCode_Numeric>
      <PostalCode>sample string 11</PostalCode>
      <StateProvince>sample string 7</StateProvince>
      <Country>sample string 3</Country>
      <AddressType>sample string 1</AddressType>
      <IsDefault>true</IsDefault>
      <IsActive>true</IsActive>
    </AddressEntry>
    <AddressEntry>
      <Address1>sample string 4</Address1>
      <Address2>sample string 5</Address2>
      <City>sample string 6</City>
      <CountryCode_Alpha2>sample string 9</CountryCode_Alpha2>
      <CountryCode_Alpha3>sample string 10</CountryCode_Alpha3>
      <CountryCode_Numeric>sample string 8</CountryCode_Numeric>
      <PostalCode>sample string 11</PostalCode>
      <StateProvince>sample string 7</StateProvince>
      <Country>sample string 3</Country>
      <AddressType>sample string 1</AddressType>
      <IsDefault>true</IsDefault>
      <IsActive>true</IsActive>
    </AddressEntry>
  </Addresses>
  <Consents>
    <CustomerConsent>
      <ConsentStatus>sample string 4</ConsentStatus>
      <ConsentType>sample string 1</ConsentType>
      <ConsentVersion>sample string 5</ConsentVersion>
      <Locale>sample string 3</Locale>
      <Expired>sample string 6</Expired>
      <ExpirationDate>sample string 7</ExpirationDate>
      <ConsentDate>sample string 8</ConsentDate>
      <Edited>
        <CreateDate>sample string 1</CreateDate>
        <CreatedBy>sample string 2</CreatedBy>
        <ModifiedBy>sample string 4</ModifiedBy>
        <ModifiedDate>sample string 3</ModifiedDate>
      </Edited>
    </CustomerConsent>
    <CustomerConsent>
      <ConsentStatus>sample string 4</ConsentStatus>
      <ConsentType>sample string 1</ConsentType>
      <ConsentVersion>sample string 5</ConsentVersion>
      <Locale>sample string 3</Locale>
      <Expired>sample string 6</Expired>
      <ExpirationDate>sample string 7</ExpirationDate>
      <ConsentDate>sample string 8</ConsentDate>
      <Edited>
        <CreateDate>sample string 1</CreateDate>
        <CreatedBy>sample string 2</CreatedBy>
        <ModifiedBy>sample string 4</ModifiedBy>
        <ModifiedDate>sample string 3</ModifiedDate>
      </Edited>
    </CustomerConsent>
  </Consents>
  <Edited>
    <CreateDate>sample string 1</CreateDate>
    <CreatedBy>sample string 2</CreatedBy>
    <ModifiedBy>sample string 4</ModifiedBy>
    <ModifiedDate>sample string 3</ModifiedDate>
  </Edited>
  <PhoneNumbers>
    <PhoneNumberEntry>
      <IsDefault>true</IsDefault>
      <IsActive>true</IsActive>
      <IsMobile>true</IsMobile>
      <PhoneNumber>sample string 3</PhoneNumber>
      <PhoneType>sample string 2</PhoneType>
      <PhoneNumberNumeric>1</PhoneNumberNumeric>
    </PhoneNumberEntry>
    <PhoneNumberEntry>
      <IsDefault>true</IsDefault>
      <IsActive>true</IsActive>
      <IsMobile>true</IsMobile>
      <PhoneNumber>sample string 3</PhoneNumber>
      <PhoneType>sample string 2</PhoneType>
      <PhoneNumberNumeric>1</PhoneNumberNumeric>
    </PhoneNumberEntry>
  </PhoneNumbers>
  <ProfileId>1</ProfileId>
</UserProfile>