Accounts: Profile
The Profile sub-service allows management of the profile data associated with the active user.
Supported Roles
| Role | Reads | Writes | Notes | 
|---|---|---|---|
| IDX | No | No | |
| Public | No | No | |
| VOW | No | No | |
| Portal | No | No | |
| Private | Yes | Yes | 
More information about roles may be found here.
Available Services
Profile
/<API Version>/accounts/<Account.Id>/profile
| HTTP Method | Description | Conditional | Notes | 
|---|---|---|---|
| GET | Returns the profile associated with the account | No | |
| POST | Returns HTTP 405 (Method Not Allowed) | No | Not implemented | 
| PUT | Updates a user's profile | No | |
| DELETE | Returns HTTP 405 (Method Not Allowed) | No | Not implemented | 
GET Request
Parameters:
- None
 
GET Response
See the GET request section for for the accounts service.
PUT Request
Request body:
{
    "D": {
        "FirstName": "Sample",
        "MiddleName": "T.",
        "LastName": "User",
        "LanguagesSpoken": ["es", "de"],
        "Tags": ['Realtor'],
        "Associations": [
            {
                "Id":  "20000809145531659995000000",
                "AssociationId":  "12345666",
                "Name":  "Association of Realtors"
            }
         ],
        "Emails": [
            {
                "Type": "Work",
                "Name": "My Work E-mail",
                "Address": "work@test.com",
                "Primary": true
            },
            {
                "Type": "Mobile",
                "Name": "My Mobile E-mail",
                "Address": "mobile@test.com"
            }
        ],
        "Phones": [
            {
                "Type": "Work",
                "Name": "My Work Phone",
                "Number": "701-555-1212",
                "Primary": true
            },
            {
                "Type": "Mobile",
                "Name": "My Mobile Phone",
                "Number": "702-555-1313"
            }
        ],
        "Websites": [
            {
                "Type": "Work",
                "Name": "My Work Website",
                "Uri": "http://iamthebestagent.com",
                "Primary": true
            },
            {
                "Type": "Mobile",
                "Name": "My Mobile Website",
                "Uri": "http://m.iamthebestagent.com"
            }
        ],
        "Addresses": [
            {
                "Type": "Work",
                "Name": "My Work Address",
                "Address": "101 Main Ave, Phoenix, AZ 12345",
                "Primary": true
            }
        ]
    }
}
PUT Response
The standard success/fail response is returned.
Profile for Reports
/<API Version>/accounts/<Account.Id>/profile/report
Similar to the Profile service, this service provides a consistent presentation of data for all records. Thus, users retrieving their own data will do so as though they were another user.
| HTTP Method | Description | Conditional | Notes | 
|---|---|---|---|
| GET | Returns the profile associated with the account | No | |
| POST | Returns HTTP 405 (Method Not Allowed) | No | Not implemented | 
| PUT | Returns HTTP 405 (Method Not Allowed) | No | Not implemented | 
| DELETE | Returns HTTP 405 (Method Not Allowed) | No | Not implemented | 
GET Request
Parameters:
- None
 
GET Response
See the GET request section for for the accounts service.
Profile for Rosters
/<API Version>/accounts/<Account.Id>/profile/report
  Similar to the All Accounts service, the roster subservice provides a consistent presentation of data for all records, fit for display specifically on a member roster.
| HTTP Method | Description | Conditional | Notes | 
|---|---|---|---|
| GET | Returns the profile associated with the account | No | |
| POST | Returns HTTP 405 (Method Not Allowed) | No | Not implemented | 
| PUT | Returns HTTP 405 (Method Not Allowed) | No | Not implemented | 
| DELETE | Returns HTTP 405 (Method Not Allowed) | No | Not implemented | 
GET Request
Parameters:
- None
 
GET Response
See the GET request section for for the accounts service.
Profile Description
| Attribute | Data Type | Writeable | Required | Description | 
|---|---|---|---|---|
Id | 
            Character | No | No | The account id. | 
UserType | 
            Character | No | No | The type of account. | 
Name | 
            Character | All UserTypes but Members | Yes | 150 characters maximum. | 
MarketingName | 
            Character | No | No | An alternative 'marketing' name. | 
NamesByLocation | 
            JSON Object | No | No |  Attributes in this hash reference the fields to display
        for various user interfaces and roles as its value. Values are at least one of 
        the following: MarketingName and SystemName.
        The attributes in this hash are:
        
  | 
       
FirstName | 
            Character | Members Only | No | 20 characters maximum. | 
MiddleName | 
            Character | Members Only | No | 20 characters maximum. | 
LastName | 
            Character | Members Only | No | 30 characters maximum. | 
LanguagesSpoken | 
            Character List | Members Only | No | A list of supported language codes, such as en or de. | 
       
Associations[n].Id | 
            Character | No | No | The unique ID representing the association. Used to link the association to the profile. | 
Associations[n].AssociationId | 
            Character | No | No | The Association code representing the association. Used to find the association to link to the profile if Associations.Id is not present. | 
Associations[n].Name | 
            Character | No | No | The name of the association. Used to find the association to link to the profile if Associations.Id nor Associations.AssociationId is present. | 
Emails[n].Id | 
            Character | No | No | The unique ID for the email record. | 
Emails[n].Type | 
            Character | Yes | Yes | The Type of email record. See the metadata service above. | 
Emails[n].Primary | 
            Boolean | Yes | No | true if this is the Primary email record. There will always be one primary record. | 
Emails[n].Name | 
            Character | Yes | Yes | 20 characters maximum. | 
Emails[n].Address | 
            Character | Yes | Yes | The e-mail address. 150 characters maximum. | 
Phones[n].Id | 
            Character | No | No | The unique ID for the Phone record. | 
Phones[n].Type | 
            Character | Yes | Yes | The Type of Phone record. See the metadata service above. | 
Phones[n].Primary | 
            Boolean | Yes | No | true if this is the Primary phone record. There will always be one primary record. | 
Phones[n].Name | 
            Character | Yes | Yes | 20 characters maximum. | 
Phones[n].Number | 
            Character | No | No | The full phone number in a human-presentable format. | 
Phones[n].InternationalCode | 
            Character | Yes | No | 4 characters maximum. | 
Phones[n].AreaCode | 
            Character | Yes | No | 3 characters maximum. | 
Phones[n].Prefix | 
            Character | Yes | No | 3 characters maximum. | 
Phones[n].LineNumber | 
            Character | Yes | No | 4 characters maximum. | 
Phones[n].Extension | 
            Character | Yes | No | 10 characters maximum. | 
Websites[n].Id | 
            Character | No | No | The unique ID for the email record. | 
Websites[n].Type | 
            Character | Yes | Yes | The Type of website record. See the metadata service above. | 
Websites[n].Primary | 
            Boolean | Yes | No | true if this is the Primary website record. There will always be one primary record. | 
Websites[n].Name | 
            Character | Yes | Yes | 20 characters maximum. | 
Websites[n].Uri | 
            Character | Yes | Yes | The URI of the website. 150 characters maximum. | 
Addresses[n].Id | 
            Character | No | No | The unique ID for the address record. | 
Addresses[n].Type | 
            Character | Yes | Yes | The Type of address record. See the metadata service above. | 
Addresses[n].Primary | 
            Boolean | Yes | No | true if this is the Primary address record. There will always be one primary record. | 
Addresses[n].Name | 
            Character | Yes | Yes | 20 characters maximum. | 
Addresses[n].Address | 
            Character | No | No | The full address in a human-presentable format. | 
Addresses[n].Street1 | 
            Character | Yes | No | 50 characters maximum. | 
Addresses[n].Street2 | 
            Character | Yes | No | 50 characters maximum. | 
Addresses[n].City | 
            Character | Yes | No | 30 characters maximum. | 
Addresses[n].Region | 
            Character | Yes | No | 2 characters maximum. | 
Addresses[n].PostalCode | 
            Character | Yes | No | 10 characters maximum. | 
Biography | 
            Expansion (Character) | Yes | No | A writable expansion. 10000 characters maximum. | 
Expansions
| Expansion | Roles | Single Record Only? | Selection Support? | Description | 
|---|---|---|---|---|
Associations | 
            Private | No | No | A hash detailing the associations data, as opposed to the default array of association names. Exclusively granted. | 
Biography | 
            All | No | No | Text that provides a brief biographical background for the user. |