Filtering Stories by a Boolean Value
In a scenario where editors can highlight articles using a boolean flag within the content schema, the filter_query
operation in
can be employed to exclusively retrieve highlighted
articles based on an exact value match.
Example Request and Response
Request
curl "https://api.storyblok.com/v2/cdn/stories/?starts_with=articles/&filter_query[highlighted][in]=true" \
-X GET \
-H "Accept: application/json" \
-H "Content-Type: application/json"
Request
// Using the Universal JavaScript Client:
// https://github.com/storyblok/storyblok-js-client
Storyblok.get('cdn/stories/', {
"filter_query": {
"highlighted": {
"in": "true"
}
}
})
.then(response => {
console.log(response)
}).catch(error => {
console.log(error)
})
Request
$client = new \Storyblok\Client('YOUR_STORYBLOK_SPACE_ACCESS_TOKEN');
$client->getStories([
"filter_query" => [
"highlighted" => [
"in" => "true"
]
]
])->getBody();
Request
require 'storyblok'
client = Storyblok::Client.new(oauth_token: 'YOUR_OAUTH_TOKEN')
client.stories({:params => {
"filter_query" => {
"highlighted" => {
"in" => "true"
}
}
}})
Request
HttpResponse<String> response = Unirest.get("https://api.storyblok.com/v2/cdn/stories/?starts_with=articles/&filter_query[highlighted][in]=true")
.asString();
Request
var client = new RestClient("https://api.storyblok.com/v2/cdn/stories/?starts_with=articles/&filter_query[highlighted][in]=true");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
Request
import Foundation
let request = NSMutableURLRequest(url: NSURL(string: "https://api.storyblok.com/v2/cdn/stories/?starts_with=articles/&filter_query[highlighted][in]=true")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0)
request.method = "GET"
let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
print(error)
} else {
let httpResponse = response as? HTTPURLResponse
print(httpResponse)
}
})
dataTask.resume()
Request
import requests
url = "https://api.storyblok.com/v2/cdn/stories/"
querystring = {"filter_query":{"highlighted":{"in":"true"}}}
payload = ""
headers = {}
response = requests.request("GET", url, data=payload, headers=headers, params=querystring)
print(response.text)
Response
{
"stories": [
{
"name": "Mars Unveiled: Exploring the Mysteries and Marvels of the Red Frontier",
"created_at": "2024-02-16T14:30:19.768Z",
"published_at": "2024-03-22T13:22:45.337Z",
"id": 445002665,
"uuid": "a2c57c06-2c5c-4819-acb7-0d9c047d16e9",
"content": {
"_uid": "6bdf037c-f713-415c-a26a-8a9cfc926c85",
"image": {
"id": 14114865,
"alt": "",
"name": "",
"focus": "",
"title": "",
"source": "",
"filename": "https://a.storyblok.com/f/276232/3500x2000/cd4947ece2/mars.jpg",
"copyright": "",
"fieldtype": "asset",
"meta_data": {},
"is_private": "",
"is_external_url": false
},
"author": "e7307a9e-a3c5-47ad-8f6c-a1a36fe528e2",
"topics": ["space-exploration", "solar-system"],
"content": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.",
"headline": "Mars Unveiled: Exploring the Mysteries and Marvels of the Red Frontier",
"component": "article",
"scheduled": "2024-02-29 17:00",
"categories": [
"45d968b6-5790-4fbb-aa41-5781b8edde51",
"a6af7728-eadf-4428-8cf5-343304857374",
"d8e48716-0ecf-4059-b568-343bf54e4128"
],
"highlighted": true
},
"slug": "mars-unveiled-exploring-mysteries-marvels-red-frontier",
"full_slug": "articles/mars-unveiled-exploring-mysteries-marvels-red-frontier",
"sort_by_date": null,
"position": 0,
"tag_list": ["Editor's Choice"],
"is_startpage": false,
"parent_id": 444991588,
"meta_data": null,
"group_id": "2e0c427d-63ed-420e-830f-bf1889da0792",
"first_published_at": "2024-02-16T14:30:11.990Z",
"release_id": null,
"lang": "default",
"path": null,
"alternates": [],
"default_full_slug": null,
"translated_slugs": null
}
],
"cv": 1711113765,
"rels": [],
"links": []
}