Search API

From Second Life Wiki
Jump to navigation Jump to search

API Guide

What is it?

The Second Life Search API allows you to search the virtual world of Second Life for Events, Groups, People, Places, and this Wiki .

Getting Started

The Second Life Search API is currently using a Google search appliance as the core of the API. You can search against the world using a standard web browser. Two URL's may be used as follows:

http://search.secondlife.com/client_search.php?q=Your_text_here http://secondlife.com/app/search/search_proxy.php?q=Your_text_here

Paging

Each query will return 10 results at the most. The parameter passed for paging is "start". This is a zero-based index identifying what record to start with. To view page 1, the following URL may be used.

q= [search for something here] &start= [(page - 1) * 10]

Page 1 http://search.secondlife.com/client_search.php?q=Your_text_here&start=0

Page 2 http://search.secondlife.com/client_search.php?q=Your_text_here&start=10

Page 3 http://search.secondlife.com/client_search.php?q=Your_text_here&start=20

Note Any results after page 100 will return nothing.

Location

When searching from the viewer, the location of the avatar is passed along to the Search API. This is optional. The coordinates do not appear to have any effect on the search results. They have the potential to show results based on your current location, (such as displaying nearby snapshots on Snapzilla). The following parameters are used.

Parameter Data type Description
Region string Region name where avatar is located.
X integer Position of avatar in region coordinates on X axis
Y integer Position of avatar in region coordinates on Y axis
Z integer Position of avatar in region coordinates on Z axis

http://search.secondlife.com/client_search.php?q=Your_text_here&region=Here&x=128&y=128&z=36

Mature Content

By default, the Search API blocks mature content in its results. A parameter "m" may be specified to allow or block mature content. To allow mature content, the value should be "y" meaning "Yes". Blocking mature content will be "n" for "No".

PG Only http://search.secondlife.com/client_search.php?q=Your_text_here&m=n

PG & Mature http://search.secondlife.com/client_search.php?q=Your_text_here&m=y


Category

To limit the results to specific categories, the "s" parameter is used. This value defaults to "All", but can also be set to one of the following: All, Events, Groups, People, Places, Wiki.

Category URL
All categories http://search.secondlife.com/client_search.php?q=Your_text_here&s=All
Events http://search.secondlife.com/client_search.php?q=Your_text_here&s=Events
Groups http://search.secondlife.com/client_search.php?q=Your_text_here&s=Groups
People http://search.secondlife.com/client_search.php?q=Your_text_here&s=People
Places http://search.secondlife.com/client_search.php?q=Your_text_here&s=Places

Language

There are a few parameters that identify the language to display the results in. Although the searchable content provided by the residents is not translated, portions of the page are. This includes headers and informational text (such as the number of matching results).

The language (also known as local or culture) specified for the viewers user interface is passed along in the "lang" parameter. These are ISO 639-1 Values for language, and an optional country code (ISO 3166-1). Not all languages are supported. Some languages are in beta.

Spanish http://search.secondlife.com/client_search.php?q=Your_text_here&lang=es

United States English http://search.secondlife.com/client_search.php?q=Your_text_here&lang=en-us


In addition, another attribute appears in querys when navigating between pages using a standard web browser. It is assumed that this may represent the same value, but only provides the language code without the country code.

http://search.secondlife.com/client_search.php?q=Your_text_here&hl=en

Miscellaneous Information

There are many other parameters that show up when observing the communications of the Search API. The following properties have been seen, but not identified properly.

Parameter Default Value Notes
t n Guessing teen grid. Teen = Y, Adult = N. Without proper session, defaults to N
session 00000000-0000-0000-0000-000000000000 This value changes each time that the SL Viewer logs into the main grid. When connecting to the web site, the value is an empty Guid.

site - default_collection - not sure. guessing might be "All" type of search. lr - unknown ie - UTF-8 - text encoding output - xml_no_dtd - xml results from appliance client - raw_xml_frontend - transform into xml results for user agent access - p - unknown sort - date:D:L:d1 - sort by date, lindens, object date? sa - N - unknown filter - 0 - unknown dbg - 0 - debug information?


Host: search.secondlife.com User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; chrome://navigator/locale/navigator.properties; rv:1.8.1.13) Gecko/20080314 SecondLife/1.20.15.92456 (Second Life Release; silver skin) Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5 Accept-Encoding: gzip,deflate Keep-Alive: 300 Connection: keep-alive Cookie: __utmz=########.##########.#.#.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utma=########.##################.##########.##########.##########.###; __utmc=########