To update the data defined for custom fields added to a profile, send an updated extension data document to the Profiles extension resource link returned by the Profiles user feed.
A Profiles extension can be represented as follows:
- A single plain text value. Identified as type="text/plain."
- Multiple values defined by an XML schema. Identified as type="text/xml."
The links for working with custom extensions are found in the <feed> element of the Profiles user feed. The <link rel="http://www.ibm.com/xmlns/prod/sn/ext-attr" > element appears once in the feed for each custom extension defined for a profile.
No custom extensions links are available from the links in the <entry> element of the feed that contains the user's profile.
You can only update the extensions for the profile of the user whose credentials you used to authenticate with the server. See Authenticating requests
for information about how to authenticate the request.
When you update an extension, all existing information will be replaced with the new data. To avoid deleting existing data, retrieve any data you want to retain first, and send it back with this request. See the topic Retrieving profile extension data
for more details.
To update the data defined for custom fields added to a profile, complete the following steps:
Table 1. Atom API request details
- Get the person's user feed. See Searching for a user's profile.
- Get the URI of the extension resource which is specified in the href attribute of the <link> element in the user's user feed that has a rel="http://www.ibm.com/xmlns/prod/sn/ext-attr" attribute and a snx:extensionId attribute that matches the extension you want to update.
- Send a PUT request to the web address specified in the href attribute.
|PUT||profile extension||Value of the href attribute of the <link> element in the user's user feed that has a rel="http://www.ibm.com/xmlns/prod/sn/ext-attr" attribute and a snx:extensionId attribute that matches the extension you want to update. ||XML schema defined by each extension or plain text|
To specify the content type of a simple extension, set the type equal to "text/plain" and provide the updated extension data as the content of the request. To specify the content type of a complex extension, set type equal to "text/xml" and, in the content of the request, provide the updated extension data specified as an XML document formatted according to the schema defined for the profiles custom extension that you are updating.
Returned HTTP headers
HTTP/1.1 200 OK
Indicates that the profile was successfully updated. If an error is encountered, the header contains one of the error codes listed below. Error codes
- HTTP/1.1 400 Bad Request
- HTTP/1.1 401 Unauthorized
- HTTP/1.1 404 Not Found
<?xml version="1.0" encoding="UTF-8"?>
<link name="atom spec" url="http://www.ietf.org/rfc/rfc4287" />
Parent topic: Working with profile extensions
Retrieving profile extension data
Searching for a user's profile
Retrieving the Profiles service document