GET search {#get}
Get a list of idea, blog, webstorm , comment and member objects that matches the search criteria.
On retrieving large set of data, requester should use pagination parameters such as page
and page_size
to manage multiple requests.
Parameters
Parameters | Detail
----------------------------------- | -----------------------------------
query
required |Search criteria
Sample value: "query=test"
type
optional |Filter return by search result type
Sample value: "test", Accepted attributes: "webstorm", "idea", "member", "comment", "blog"
page
optional |Specifies which page of records to return. Default: 1. Minimum: 1. Maximum: {page_count}
Sample value: 5
format
optional |Specifies returned data format
Accepted value: "json", "xml"
Resource Information
Authentication
: See Access Permission
HTTP Methods
: GET
Request URL Format
: https://{api_domain}/api3/search
Access Permission {#getPermission}
Requester can only get search results that he has access to. See Authentication for details on authentication.
Private WebStorms: Requester must authenticate to get data.
Public WebStorms: No authentication required to get data.
Errors
- Invalid object ID or you don't have access to this object
Example Request
- Method: GET
- Header: Authorization=Bearer 85f7b2462570acdde9a458ba6495b8763dcd040c
URL:
https://example.brightidea.com/api3/search?query=test&type=blog
~~~ { "search": [ { "type": "Blog", "id": "D4848E87-4370-4543-A8E3-F621DFEC9984", "name": "first test blog", "description": "test first test first", "campaignid": "87D58A6B-1C81-4DBE-918B-05FDF325A18B", "date": "2012-01-05T17:26:13.36Z" }, { "type": "Blog", "id": "94131ECC-A410-4A69-9EF1-6D827574438B", "name": "second test blog", "description": "test", "campaignid": "7FA4CAF4-A9E4-459D-9D8D-0EEA4B251727", "date": "2013-12-27T18:49:59Z" } ], "stats": { "total": 2, "pagecount": 1, "currentpage": 1 } } ~~~
FAQ {#faq}
Question: GET search only return 100 objects maximum per request. How do I retrieve more results.
Answer: GET search response is automatically paginated. You can specify which page of the result a request should return. For example, if you requested for 100 search objects in the initial request, pass "page_size=100&page=2" to get the next 100. page_count
is returned with every GET request so your application can figure out when it hits the end.