1. Operation: is

Operation: is

Filter stories by checking if a field is of a specific type.

Examples Use Cases

  • filter_query[categories][is]=empty_array

    Returns all stories with no assigned categories

  • filter_query[categories][is]=not_empty_array

    Returns all stories that have assigned categories

  • filter_query[scheduled][is]=empty

    Returns stories with no specified scheduled date

    The value empty also targets stories that do not have the particular field in question defined in their schema. To select only stories that have the field scheduled and the value of this field is blank, the like operator should be used.

  • filter_query[scheduled][is]=not_empty

    Returns all stories with a specified scheduled date

  • filter_query[highlighted][is]=true

    Returns all stories that have the highlighted boolean field set to true

  • filter_query[highlighted][is]=false

    Returns all stories that have the highlighted boolean field set to false

  • filter_query[content][is]=null

    Returns all stories that have no content

  • filter_query[content][is]=not_null

    Returns all stories that have content

    The value not_null also targets stories that do not have the particular field in question defined in their schema. To select only stories that have the field content and the value of this field is blank, the like operator should be used.

  • Example Request and Response

    The following example demonstrates how to receive all stories with an assigned author using the is operation.

    Request
    curl "https://api.storyblok.com/v2/cdn/stories/?filter_query[author][is]=not_empty_array&token=ask9soUkv02QqbZgmZdeDAtt" \
      -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": {
        "author": {
          "is": "not_empty_array"
        }
      }
    })
      .then(response => {
        console.log(response)
      }).catch(error => { 
        console.log(error)
      })
    Request
    $client = new \Storyblok\Client('YOUR_STORYBLOK_SPACE_ACCESS_TOKEN');
    
    $client->getStories([
      "filter_query" =>  [
        "author" =>  [
          "is" =>  "not_empty_array"
        ]
      ]
    ])->getBody();
    Request
    require 'storyblok'
    client = Storyblok::Client.new(oauth_token: 'YOUR_OAUTH_TOKEN')
    
    client.stories({:params => {
      "filter_query" =>  {
        "author" =>  {
          "is" =>  "not_empty_array"
        }
      }
    }})
    Request
    HttpResponse<String> response = Unirest.get("https://api.storyblok.com/v2/cdn/stories/?filter_query[author][is]=not_empty_array&token=ask9soUkv02QqbZgmZdeDAtt")
      .asString();
    Request
    var client = new RestClient("https://api.storyblok.com/v2/cdn/stories/?filter_query[author][is]=not_empty_array&token=ask9soUkv02QqbZgmZdeDAtt");
    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/?filter_query[author][is]=not_empty_array&token=ask9soUkv02QqbZgmZdeDAtt")! 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":{"author":{"is":"not_empty_array"}},"token":"ask9soUkv02QqbZgmZdeDAtt"}
    
    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-07T15:14:35.103Z",
          "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": "51eed33d-855f-415c-ac0d-4404e03b89e1",
            "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": false
          },
          "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": [],
          "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
        },
        {
          "name": "Earth's Symphony: Navigating the Wonders and Challenges of Our Blue Oasis",
          "created_at": "2024-02-16T14:22:09.108Z",
          "published_at": "2024-03-07T15:14:33.277Z",
          "id": 444996765,
          "uuid": "660452d2-1a68-4493-b5b6-2f03b6fa722b",
          "content": {
            "_uid": "6bdf037c-f713-415c-a26a-8a9cfc926c85",
            "image": {
              "id": 14114772,
              "alt": "",
              "name": "",
              "focus": "",
              "title": "",
              "source": "",
              "filename": "https://a.storyblok.com/f/276232/2560x1946/ee938cf736/earth.jpg",
              "copyright": "",
              "fieldtype": "asset",
              "meta_data": {},
              "is_private": "",
              "is_external_url": false
            },
            "author": "e7307a9e-a3c5-47ad-8f6c-a1a36fe528e2",
            "topics": ["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. 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": "Earth's Symphony: Navigating the Wonders and Challenges of Our Blue Oasis",
            "component": "article",
            "scheduled": "",
            "categories": ["45d968b6-5790-4fbb-aa41-5781b8edde51", "d8e48716-0ecf-4059-b568-343bf54e4128"],
            "highlighted": false
          },
          "slug": "earths-symphony-navigating-wonders-challenges-blue-oasis",
          "full_slug": "articles/earths-symphony-navigating-wonders-challenges-blue-oasis",
          "sort_by_date": null,
          "position": 0,
          "tag_list": [],
          "is_startpage": false,
          "parent_id": 444991588,
          "meta_data": null,
          "group_id": "8d99d18d-5c97-42cd-a646-51e0c553f26a",
          "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": 1709827198,
      "rels": [],
      "links": []
    }