Community articleSearching Profiles programmatically
Added by IBM contributorIBM | Edited by IBM contributorLDD Webmaster on July 21, 2014
Rate this article 1 starsRate this article 2 starsRate this article 3 starsRate this article 4 starsRate this article 5 stars

Search for a set of profiles that match a specific criteria and return them in a feed. You can use this resource to discover someone's user ID. When you search by name, the returned feed identifies each person's user ID, which you can subsequently use in other types of searches to retrieve more detailed information about a person.



Search for a set of profiles that match a specific criteria and return them in a feed. You can use this resource to discover someone's user ID. When you search by name, the returned feed identifies each person's user ID, which you can subsequently use in other types of searches to retrieve more detailed information about a person.

This method returns a feed of profiles instead of the Atom entry of a single profile. If you want to retrieve an Atom entry document, see Retrieving a profile entry. The content element of each returned entry includes the vCard information for the person being represented by the entry.

 

Use one or more of the input parameters to narrow the search. Separate multiple parameters with an ampersand (&).
Note: All search parameters support the use of the wildcards percent sign (%) or asterisk (*). Use % to match any single character; encode it correctly using %25. Use * to match zero or more characters.

 

Profiles Index field names:

Field property Indexed field name
   
alternateLastname FIELD_ALTERNATE_LAST_NAME
bldgId FIELD_BUILDING_IDENTIFIER
city FIELD_CITY
country FIELD_COUNTRY
countryCode FIELD_ISO_COUNTRY_CODE
countryDisplayValue FIELD_COUNTRY
courtesyTitle FIELD_COURTESY_TITLE
departmentTitle FIELD_DEPARTMENT_TITLE
deptNumber FIELD_DEPARTMENT_NUMBER
description FIELD_ABOUT_ME
displayName FIELD_DISPLAY_NAME
email FIELD_MAIL
employeeNumber FIELD_EMPLOYEE_NUMBER
employeeTypeCode FIELD_EMPLOYEE_TYPE
experience FIELD_EXPERIENCE
faxNumber FIELD_FAX_TELEPHONE_NUMBER
floor FIELD_FLOOR
givenName FIELD_GIVEN_NAME
ipTelephoneNumber FIELD_IP_TELEPHONE_NUMBER
isManager FIELD_IS_MANAGER
jobResp FIELD_JOB_RESPONSIBILITIES
managerUid FIELD_MANAGER_UID
mobileNumber FIELD_MOBILE
nativeFirstName FIELD_NATIVE_FIRST_NAME
nativeLastName FIELD_NATIVE_LAST_NAME
officeName FIELD_PHYSICAL_DELIVERY_OFFICE
organizationTitle FIELD_ORGANIZATION_TITLE
orgId FIELD_ORGANIZATION_IDENTIFIER
pagerId FIELD_PAGER_ID
pagerNumber FIELD_PAGER
pagerServiceProvider FIELD_PAGER_SERVICE_PROVIDER
pagerType FIELD_PAGER_TYPE
phoneNumber FIELD_TELEPHONE_NUMBER
preferredFirstName FIELD_PREFERRED_FIRST_NAME
preferredLanguage FIELD_PREFERRED_LANGUAGE
preferredLastName FIELD_PREFERRED_LAST_NAME
profileTags FIELD_TAG
profileType FIELD_PROFILE_TYPE
secretaryUid FIELD_SECRETARY_UID
shift FIELD_SHIFT
state FIELD_STATE
surname FIELD_SURNAME
telephoneNumber FIELD_TELEPHONE_NUMBER
timezone FIELD_TIMEZONE
title FIELD_TITLE
workLocation.address FIELD_WORK_LOCATION
workLocation.city FIELD_CITY
workLocation.state FIELD_STATE
   
Extension fields FIELD_EXTATTR_
school (sample extension attribute) FIELD_EXTATTR_SCHOOL
spokenLanguages (sample extension attribute) FIELD_EXTATTR_SPOKENLANGUAGES
   

 

Input
Method URI Description
GET /profiles/atom/search.do Retrieves profiles that match a specific search criteria.
Name Type Optional Description
activeUsersOnly
boolean Yes Specifies whether to include inactive users in the search. Options are true or false. The default value is true; searches do not include inactive users.
city
string Yes Returns all profiles that contain a matching city value.
country
string Yes Returns all profiles that contain a matching country value.
email
string Yes Returns all profiles that contain a matching Internet email address.
Format the HTTP request using the correct URL encoding. For example, the encoded form of the at sign (@) is %40 as in:
adam_eventide%40example.com
Note: Do not use this parameter if IBM® Connections is configured to prevent email addresses from being displayed because it returns an error.
format
enumerated Yes Specifies whether you want a full profile or partial profile to be returned. Options are lite or full. The default value is lite.
Authorized values:
  • lite
  • full
jobTitle
string Yes Returns all profiles that contain a matching job title value.
name
string Yes Returns all profiles that contain a matching name value. You can specify a first name or last name.
organization
string Yes Returns all profiles that contain a matching organization value.
page
int Yes Page number. Specifies the page to be returned. The default value is 1, which returns the first page.
phoneNumber
int Yes Returns all profiles that contain a matching phone number.
profileTags
string Yes Returns profiles with the specified tags. Separate multiple tags with a comma. If you use a comma, it must be URL-encoded as %2C.
profileType
string Yes Specifies the type of profile. The types are defined by you in the Profiles database. See Adding Profile Types for more information.
ps
int Yes Page size. Specifies the number of entries to return per page. The default value is 10. The maximum value you can specify is 250.
search
string Yes Well-formed full text search query using Lucene search syntax. Search query can be composed to perform field-level search for all indexed fields, using the field names in the table "Index field names" in documentation.
state
string Yes Returns all profiles that contain a matching state value.
userid
string Yes Unique ID that represents a specific person. The user ID is stored in the div element that has the x-lconn-userid class attribute.
Output
Content Type: application/atom+xml
Code Description
200
OK. Indicates that the request was received successfully.
Examples
To search for the profile of every person with a city value of Westford in their profiles:
> GET /profiles/atom/search.do?city=Westford HTTP/1.1

> Authorization: Basic ...

> Host: profiles.enterprise.example.com:9080

> Accept: */*


Response returned by the server
<?xml version="1.0" encoding="UTF-8"?>

<feed xmlns="http://www.w3.org/2005/Atom">

  <id>tag:profiles.ibm.com,2006:feed</id>

  <generator version="3.0" uri="http://www.ibm.com/xmlns/prod/sn">

   IBM Connections - Profiles

  </generator>

  <title type="text">profiles where city=Westford</title>

  <author><name>IBM Connections - Profiles</name></author>

  <updated>2009-03-18T18:55:38.062Z</updated>

  <opensearch:totalResults 

   xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/">

    250

  </opensearch:totalResults>

  <opensearch:startIndex 

   xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/">

    1

  </opensearch:startIndex>

  <opensearch:itemsPerPage 

   xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/">

    10

  </opensearch:itemsPerPage>

  <link 

   href="https://profiles.enterprise.example.com:9447/profiles/atom/search.do?

   city=Westford&amp;page=2&amp;ps=10" rel="next">

  </link>

  <link 

   href="https://profiles.enterprise.example.com:9447/profiles/atom/search.do?

   city=Westford&amp;page=25&amp;ps=10" rel="last">

  </link>

  <link 

   href="https://profiles.enterprise.example.com:9447/profiles/atom/search.do?

   city=Westford" rel="self" type="application/atom+xml">

  </link>

  <entry>

    <id>tag:profiles.ibm.com,2006:entry130114ab-d54c-4d04-b307-0e6ff2bee8ec</id>

    <title type="text">Amy Jones1</title>

    <updated>2009-03-18T08:12:47.171Z</updated>

    <category 

     term="profile" 

     scheme="http://www.ibm.com/xmlns/prod/sn/type">

    </category>

    <contributor>

      <name>Amy Jones1</name>

      <userid xmlns="http://www.ibm.com/xmlns/prod/sn">

       5adff8c0-7d67-102c-8452-e2ebc3ec5536

      </userid>

      <snx:userState>active</snx:userState>

      <email>ajones1@us.example.com</email>

    </contributor>

    <link 

     href="https://profiles.enterprise.example.com:9447/profiles/atom/profile.do?

           key=130114ab-d54c-4d04-b307-0e6ff2bee8ec" 

     rel="self" 

     type="application/atom+xml">

    </link>

    <link 

     href="https://profiles.enterprise.example.com:9447/profiles/html/profileView.do?

           key=130114ab-d54c-4d04-b307-0e6ff2bee8ec" 

     rel="related" 

     type="text/html">

    </link>

    <link 

     href="https://profiles.enterprise.example.com:9447/profiles/photo.do?

           key=130114ab-d54c-4d04-b307-0e6ff2bee8ec&amp;lastMod=1237363967171" 

     rel="http://www.ibm.com/xmlns/prod/sn/image" 

     type="image"></link>

    <link 

     href="https://profiles.enterprise.example.com:9447/profiles/audio.do?

           key=130114ab-d54c-4d04-b307-0e6ff2bee8ec&amp;lastMod=1237363967171"

     rel="http://www.ibm.com/xmlns/prod/sn/pronunciation" 

     type="audio">

    </link>

    <link 

     href="https://profiles.enterprise.example.com:9447/profiles/vcard/profile.do?

           key=130114ab-d54c-4d04-b307-0e6ff2bee8ec" 

     rel="alternate" 

     type="text/directory">

    </link>

    <summary type="text">Profile information for Amy Jones1</summary>

    <content type="xhtml">

      <div xmlns="http://www.w3.org/1999/xhtml">

        <span class="vcard">

          <div>

            <img 

             src="https://profiles.enterprise.example.com:9447/profiles/photo.do?

                  key=130114ab-d54c-4d04-b307-0e6ff2bee8ec&amp;

                  lastMod=1237363967171" 

                 class="photo">

            </img>

          </div>

          <div>

            <a 

             class="fn url" 

             href="https://profiles.enterprise.example.com:9447/profiles/atom/

                   profile.do?key=130114ab-d54c-4d04-b307-0e6ff2bee8ec">

              Amy Jones1

            </a>

          </div>

          <div>

            <a 

             class="sound url" 

             href="https://profiles.enterprise.example.com:9447/profiles/audio.do?

                   key=130114ab-d54c-4d04-b307-0e6ff2bee8ec&amp;

                   lastMod=1237363967171">

               Pronunciation

            </a>

          </div>

          <div>

            <a 

             class="email" 

             href="mailto:ajones1@us.example.com">

              ajones1@us.example.com

            </a>

          </div>

          <div class="x-groupwareMail" style="display:none"></div>

          <div class="org">

           <span class="organization-unit"></span>

          </div>

          <div class="role">IBM Employee</div>

          <div class="title"></div>

          <div class="adr work postal">

          <div class="street-address">5 Technology Park Drive</div>

          <div class="extended-address x-streetAddress2"></div>

          <span class="locality">Westford</span>

          <span class="region">Massachusetts</span>

          <span class="postal-code">01886</span>

          <div class="country-name">United States</div>

          <div class="x-country-code" style="display:none">us</div>

          <div class="x-worklocation-code" style="display:none">WM</div>

        </div>

        <div class="x-office">

          <span class="x-building"></span>

          <span class="x-floor"></span>

          <span class="x-office-number"></span>

        </div>

        <div class="tel">

          <abbr class="type" title="work">Work:</abbr>

          <span class="value">1-978-399-0000</span>

        </div>

        <div class="x-manager-uid" style="display:none"></div>

        <div class="x-is-manager" style="display:none"></div>

        <div class="x-profile-key">130114ab-d54c-4d04-b307-0e6ff2bee8ec</div>

        <div class="uid">5adff8c0-7d67-102c-8452-e2ebc3ec5536</div>

        <div class="x-profile-uid">Amy Jones1</div>

        <div class="x-lconn-userid">5adff8c0-7d67-102c-8452-e2ebc3ec5536</div>

        <div class="rev" style="display:none">2009-03-18T08:12:47.171Z</div>

      </span>

    </div>

  </content>

</entry>

To search for the profile of every person with a city value of Westford or Littleton, and school value MIT, but not Harvard in their profiles:
> GET /profiles/atom/search.do?search=(FIELD_CITY:Westford OR FIELD_CITY:Littleton) AND (FIELD_EXTATTR_SCHOOL:MIT NOT FIELD_EXTATTR_SCHOOL:Harvard) HTTP/1.1

> Authorization: Basic ...

> Host: profiles.enterprise.example.com:9080

> Accept: */*