Resource Information
Method | POST |
---|---|
URL | https://public-api.wordpress.com/rest/v1.2/sites/$site/search |
Requires authentication? | No |
Method Parameters
Parameter | Type | Description |
---|---|---|
$site | (int|string) | Site ID or domain |
Query Parameters
Parameter | Type | Description |
---|---|---|
context | (string) |
|
http_envelope | (bool) |
|
pretty | (bool) |
|
meta | (string) | Optional. Loads data from the endpoints found in the 'meta' part of the response. Comma-separated list. Example: meta=site,likes |
fields | (string) | Optional. Returns specified fields only. Comma-separated list. Example: fields=ID,title |
callback | (string) | An optional JSONP callback function. |
Request Parameters
Parameter | Type | Description |
---|---|---|
size | (int) | Number of results to return. Max depends on whether requestor is VIP, Jetpack or others. |
from | (int) | Item number to return. Max depends on whether requestor is VIP, Jetpack or others. |
fields | (array) | List of fields to return. Default is blog_id and post_id. See all fields. |
query | (array) | Allows (almost) full access to the ES query DSL. See Elasticsearch Query DSL. Some filters and queries are not allowed for performance reasons, as documented here. |
aggregations | (array) | Return aggregations from matches to the search. See details. |
sort | (array) | How to sort results. Default is _score. See the Elasticsearch sort docs |
filter | (array) | Filters applied to the search. Will be added as a part of a top level bool query |
suggest | (array) | Experimental - Run suggestors on this search See Elasticsearch suggesters |
rescore | (array) | Experimental - Do query rescores on the search. See Elasticsearch rescoring |
facets | (array) | Deprecated. Do not use. Will be removed soon. |
additional_blog_ids | (array) | List of additional blog_ids to run the search on. |
Response Parameters
Parameter | Type | Description |
---|---|---|
hits | (array) | The top level "hits" object from the ElasticSearch query response. |
Resource Errors
These are the possible errors returned by this endpoint.
HTTP Code | Error Identifier | Error Message |
---|---|---|
403 | Unauthorized | User cannot access this restricted blog |
403 | Unauthorized | Private sites are not currently accessible for search. |
403 | unauthorized | User cannot access this private blog. |
403 | unauthorized | User cannot access this restricted blog |
Example
curl \ -H 'authorization: Bearer YOUR_API_TOKEN' \ --data-urlencode 'size=10' \ --data-urlencode 'from=0' \ --data-urlencode 'query=Array' \ --data-urlencode 'fields=Array' \ --data-urlencode 'sort=Array' \ 'https://public-api.wordpress.com/rest/v1/sites/1234/search'
<?php $options = array ( 'http' => array ( 'ignore_errors' => true, 'method' => 'POST', 'header' => array ( 0 => 'authorization: Bearer YOUR_API_TOKEN', 1 => 'Content-Type: application/x-www-form-urlencoded', ), 'content' => http_build_query( array ( 'size' => 10, 'from' => 0, 'query' => array ( 'multi_match' => array ( 'query' => 'Foo', 'fields' => array ( 0 => 'title.en', 1 => 'content.en', ), ), ), 'fields' => array ( 0 => 'post_id', ), 'sort' => array ( 0 => '_score', 1 => array ( 'date' => 'desc', ), ), )), ), ); $context = stream_context_create( $options ); $response = file_get_contents( 'https://public-api.wordpress.com/rest/v1/sites/1234/search', false, $context ); $response = json_decode( $response ); ?>