<main class="py-12">
    <article class="prose">
        <!-- Hero Section -->
        <div class="mb-10">
            <div class="flex items-center gap-3 mb-4">
                <div class="flex items-center justify-center w-10 h-10 rounded-xl bg-indigo-600 shadow-lg shadow-indigo-500/30">
                    <svg class="w-5 h-5 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
                        <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10"></path>
                    </svg>
                </div>
                <span class="text-xs font-semibold text-indigo-600 uppercase tracking-wider">Guide</span>
            </div>
            <h1 class="font-bold text-3xl text-slate-900 tracking-tight mb-3">Data Types</h1>
            <p class="text-lg text-slate-600 leading-relaxed max-w-2xl">In this guide, we will look at how to work with OneUptime Data Types when querying the OneUptime API.</p>
        </div>

        <h2 id="select" class="scroll-mt-24 text-xl font-semibold text-slate-900 mb-4 mt-12">
            Select
        </h2>
        <div class="grid grid-cols-1 items-start gap-x-16 gap-y-10 xl:max-w-none xl:grid-cols-2">
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <p>Select can be used to select fields from an Object in List or Get Item API. By default only ID's
                    are returned to the client. To retrieve more fields you need use:</p>

                <div class="my-6">
                    <ul role="list"
                        class="m-0 max-w-[calc(theme(maxWidth.lg)-theme(spacing.8))] list-none divide-y divide-slate-100 p-0 ">
                        <li class="m-0 px-0 py-4 first:pt-0 last:pb-0">
                            <dl class="m-0 flex flex-wrap items-center gap-x-3 gap-y-2">
                                <dt class="sr-only">Select</dt>
                                <dd><code class="inline-code">select</code></dd>
                                <dt class="sr-only">Type</dt>
                                <dd class="font-mono text-xs text-slate-500 ">Select</dd>
                                <dt class="sr-only">Description</dt>
                                <dd class="w-full flex-none [&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                                    <p>Dictionary of fieldName - boolean as JSON Object. Here's an example. If the
                                        boolean is set to true then the field will be retrieved.</p>
                                </dd>
                            </dl>
                        </li>

                    </ul>
                </div>

            </div>
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <%- include('../partials/code', {title: "Example Select Request Body" , requestUrl: "" , requestType: ""
                    , code: pageData.selectCode }) -%>

            </div>
        </div>





        <h2 id="sort" class="scroll-mt-24 text-xl font-semibold text-slate-900 mb-4 mt-12 pt-8 border-t border-slate-200">
            Sort
        </h2>
        <div class="grid grid-cols-1 items-start gap-x-16 gap-y-10 xl:max-w-none xl:grid-cols-2">
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <p>Sort can be used to sort list by fields in List API. By default objects are sorted by their createdAt
                    date in descending order (recently created item will be first). To change the sort order you can:
                </p>

                <div class="my-6">
                    <ul role="list"
                        class="m-0 max-w-[calc(theme(maxWidth.lg)-theme(spacing.8))] list-none divide-y divide-slate-100 p-0 ">
                        <li class="m-0 px-0 py-4 first:pt-0 last:pb-0">
                            <dl class="m-0 flex flex-wrap items-center gap-x-3 gap-y-2">
                                <dt class="sr-only">Sort</dt>
                                <dd><code class="inline-code">sort</code></dd>
                                <dt class="sr-only">Type</dt>
                                <dd class="font-mono text-xs text-slate-500 ">Sort</dd>
                                <dt class="sr-only">Description</dt>
                                <dd class="w-full flex-none [&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                                    <p>Dictionary of fieldName - 'DESC' / 'ASC' as JSON Object. Here's an example. If
                                        the
                                        boolean is set to true then the field will be retrieved.</p>
                                </dd>
                            </dl>
                        </li>

                    </ul>
                </div>

            </div>
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <%- include('../partials/code', {title: "Example Sort Request Body" , requestUrl: "" , requestType: "" ,
                    code: pageData.sortCode }) -%>

            </div>
        </div>


        <h2 id="queries" class="scroll-mt-24 text-xl font-semibold text-slate-900 mb-4 mt-12 pt-8 border-t border-slate-200">
            Query
        </h2>


        <h3 id="example-using-cursors" class="scroll-mt-24">
            Equal To
        </h3>

        <div class="grid grid-cols-1 items-start gap-x-16 gap-y-10 xl:max-w-none xl:grid-cols-2">
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <p> 
                    Here is how to use Equal To query with OneUptime List API:
                </p>

                <div class="my-6">
                    <ul role="list"
                        class="m-0 max-w-[calc(theme(maxWidth.lg)-theme(spacing.8))] list-none divide-y divide-slate-100 p-0 ">
                        <li class="m-0 px-0 py-4 first:pt-0 last:pb-0">
                            <dl class="m-0 flex flex-wrap items-center gap-x-3 gap-y-2">
                                <dt class="sr-only">Query</dt>
                                <dd><code class="inline-code">query</code></dd>
                                <dt class="sr-only">Type</dt>
                                <dd class="font-mono text-xs text-slate-500 ">Query</dd>
                                <dt class="sr-only">Description</dt>
                                <dd class="w-full flex-none [&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                                    <p>Here is an example of an Equal To Query</p>
                                </dd>
                            </dl>
                        </li>

                    </ul>
                </div>
            </div>
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <%- include('../partials/code', {title: "Example EqualTo Request Body" , requestUrl: "" , requestType: "" ,
                    code: pageData.equalToCode }) -%>

            </div>
        </div>



        <h3 id="example-using-cursors" class="scroll-mt-24">
            Not Equal To
        </h3>

        <div class="grid grid-cols-1 items-start gap-x-16 gap-y-10 xl:max-w-none xl:grid-cols-2">
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <p> 
                    Here is how to use Not Equal To query with OneUptime List API:
                </p>

                <div class="my-6">
                    <ul role="list"
                        class="m-0 max-w-[calc(theme(maxWidth.lg)-theme(spacing.8))] list-none divide-y divide-slate-100 p-0 ">
                        <li class="m-0 px-0 py-4 first:pt-0 last:pb-0">
                            <dl class="m-0 flex flex-wrap items-center gap-x-3 gap-y-2">
                                <dt class="sr-only">Query</dt>
                                <dd><code class="inline-code">query</code></dd>
                                <dt class="sr-only">Type</dt>
                                <dd class="font-mono text-xs text-slate-500 ">Query</dd>
                                <dt class="sr-only">Description</dt>
                                <dd class="w-full flex-none [&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                                    <p>Here is an example of a Not Equal To Query</p>
                                </dd>
                            </dl>
                        </li>

                    </ul>
                </div>
            </div>
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <%- include('../partials/code', {title: "Example Not EqualTo Request Body" , requestUrl: "" , requestType: "" ,
                    code: pageData.notEqualToCode }) -%>

            </div>
        </div>



        <h3 id="example-using-cursors" class="scroll-mt-24">
            Is Null
        </h3>

        <div class="grid grid-cols-1 items-start gap-x-16 gap-y-10 xl:max-w-none xl:grid-cols-2">
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <p> 
                    Here is how to use `is null` to query with OneUptime List API:
                </p>

                <div class="my-6">
                    <ul role="list"
                        class="m-0 max-w-[calc(theme(maxWidth.lg)-theme(spacing.8))] list-none divide-y divide-slate-100 p-0 ">
                        <li class="m-0 px-0 py-4 first:pt-0 last:pb-0">
                            <dl class="m-0 flex flex-wrap items-center gap-x-3 gap-y-2">
                                <dt class="sr-only">Query</dt>
                                <dd><code class="inline-code">query</code></dd>
                                <dt class="sr-only">Type</dt>
                                <dd class="font-mono text-xs text-slate-500 ">Query</dd>
                                <dt class="sr-only">Description</dt>
                                <dd class="w-full flex-none [&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                                    <p>Here is an example of an is null query</p>
                                </dd>
                            </dl>
                        </li>

                    </ul>
                </div>
            </div>
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <%- include('../partials/code', {title: "Example Not EqualTo Request Body" , requestUrl: "" , requestType: "" ,
                    code: pageData.isNullCode }) -%>

            </div>
        </div>



        <h3 id="example-using-cursors" class="scroll-mt-24">
            Is Not Null
        </h3>

        <div class="grid grid-cols-1 items-start gap-x-16 gap-y-10 xl:max-w-none xl:grid-cols-2">
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <p> 
                    Here is how to use `is not null` to query with OneUptime List API:
                </p>

                <div class="my-6">
                    <ul role="list"
                        class="m-0 max-w-[calc(theme(maxWidth.lg)-theme(spacing.8))] list-none divide-y divide-slate-100 p-0 ">
                        <li class="m-0 px-0 py-4 first:pt-0 last:pb-0">
                            <dl class="m-0 flex flex-wrap items-center gap-x-3 gap-y-2">
                                <dt class="sr-only">Query</dt>
                                <dd><code class="inline-code">query</code></dd>
                                <dt class="sr-only">Type</dt>
                                <dd class="font-mono text-xs text-slate-500 ">Query</dd>
                                <dt class="sr-only">Description</dt>
                                <dd class="w-full flex-none [&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                                    <p>Here is an example of an is not null query</p>
                                </dd>
                            </dl>
                        </li>

                    </ul>
                </div>
            </div>
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <%- include('../partials/code', {title: "Example Not EqualTo Request Body" , requestUrl: "" , requestType: "" ,
                    code: pageData.notNullCode }) -%>

            </div>
        </div>


        <h3 id="example-using-cursors" class="scroll-mt-24">
            Greater Than
        </h3>

        <div class="grid grid-cols-1 items-start gap-x-16 gap-y-10 xl:max-w-none xl:grid-cols-2">
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <p> 
                    Here is how to use `greater than` to query with OneUptime List API:
                </p>

                <div class="my-6">
                    <ul role="list"
                        class="m-0 max-w-[calc(theme(maxWidth.lg)-theme(spacing.8))] list-none divide-y divide-slate-100 p-0 ">
                        <li class="m-0 px-0 py-4 first:pt-0 last:pb-0">
                            <dl class="m-0 flex flex-wrap items-center gap-x-3 gap-y-2">
                                <dt class="sr-only">Query</dt>
                                <dd><code class="inline-code">query</code></dd>
                                <dt class="sr-only">Type</dt>
                                <dd class="font-mono text-xs text-slate-500 ">Query</dd>
                                <dt class="sr-only">Description</dt>
                                <dd class="w-full flex-none [&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                                    <p>Here is an example of a greater than query</p>
                                </dd>
                            </dl>
                        </li>

                    </ul>
                </div>
            </div>
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <%- include('../partials/code', {title: "Example Not EqualTo Request Body" , requestUrl: "" , requestType: "" ,
                    code: pageData.greaterThanCode }) -%>

            </div>
        </div>



        <h3 id="example-using-cursors" class="scroll-mt-24">
            Greater Than or Equal
        </h3>

        <div class="grid grid-cols-1 items-start gap-x-16 gap-y-10 xl:max-w-none xl:grid-cols-2">
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <p> 
                    Here is how to use `greater than or equal` to query with OneUptime List API:
                </p>

                <div class="my-6">
                    <ul role="list"
                        class="m-0 max-w-[calc(theme(maxWidth.lg)-theme(spacing.8))] list-none divide-y divide-slate-100 p-0 ">
                        <li class="m-0 px-0 py-4 first:pt-0 last:pb-0">
                            <dl class="m-0 flex flex-wrap items-center gap-x-3 gap-y-2">
                                <dt class="sr-only">Query</dt>
                                <dd><code class="inline-code">query</code></dd>
                                <dt class="sr-only">Type</dt>
                                <dd class="font-mono text-xs text-slate-500 ">Query</dd>
                                <dt class="sr-only">Description</dt>
                                <dd class="w-full flex-none [&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                                    <p>Here is an example of a greater than or equal query</p>
                                </dd>
                            </dl>
                        </li>

                    </ul>
                </div>
            </div>
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <%- include('../partials/code', {title: "Example Not EqualTo Request Body" , requestUrl: "" , requestType: "" ,
                    code: pageData.greaterThanOrEqualCode }) -%>

            </div>
        </div>



        <h3 id="example-using-cursors" class="scroll-mt-24">
            Less Than
        </h3>

        <div class="grid grid-cols-1 items-start gap-x-16 gap-y-10 xl:max-w-none xl:grid-cols-2">
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <p> 
                    Here is how to use `less than` to query with OneUptime List API:
                </p>

                <div class="my-6">
                    <ul role="list"
                        class="m-0 max-w-[calc(theme(maxWidth.lg)-theme(spacing.8))] list-none divide-y divide-slate-100 p-0 ">
                        <li class="m-0 px-0 py-4 first:pt-0 last:pb-0">
                            <dl class="m-0 flex flex-wrap items-center gap-x-3 gap-y-2">
                                <dt class="sr-only">Query</dt>
                                <dd><code class="inline-code">query</code></dd>
                                <dt class="sr-only">Type</dt>
                                <dd class="font-mono text-xs text-slate-500 ">Query</dd>
                                <dt class="sr-only">Description</dt>
                                <dd class="w-full flex-none [&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                                    <p>Here is an example of a less than query</p>
                                </dd>
                            </dl>
                        </li>

                    </ul>
                </div>
            </div>
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <%- include('../partials/code', {title: "Example Not EqualTo Request Body" , requestUrl: "" , requestType: "" ,
                    code: pageData.lessThanCode }) -%>

            </div>
        </div>



        <h3 id="example-using-cursors" class="scroll-mt-24">
            Less Than or Equal
        </h3>

        <div class="grid grid-cols-1 items-start gap-x-16 gap-y-10 xl:max-w-none xl:grid-cols-2">
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <p> 
                    Here is how to use `less than or equal` to query with OneUptime List API:
                </p>

                <div class="my-6">
                    <ul role="list"
                        class="m-0 max-w-[calc(theme(maxWidth.lg)-theme(spacing.8))] list-none divide-y divide-slate-100 p-0 ">
                        <li class="m-0 px-0 py-4 first:pt-0 last:pb-0">
                            <dl class="m-0 flex flex-wrap items-center gap-x-3 gap-y-2">
                                <dt class="sr-only">Query</dt>
                                <dd><code class="inline-code">query</code></dd>
                                <dt class="sr-only">Type</dt>
                                <dd class="font-mono text-xs text-slate-500 ">Query</dd>
                                <dt class="sr-only">Description</dt>
                                <dd class="w-full flex-none [&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                                    <p>Here is an example of a less than or equal query</p>
                                </dd>
                            </dl>
                        </li>

                    </ul>
                </div>
            </div>
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <%- include('../partials/code', {title: "Example Not EqualTo Request Body" , requestUrl: "" , requestType: "" ,
                    code: pageData.lessThanOrEqualCode }) -%>

            </div>
        </div>

        <h3 id="example-using-cursors" class="scroll-mt-24">
            Inlcudes
        </h3>

        <div class="grid grid-cols-1 items-start gap-x-16 gap-y-10 xl:max-w-none xl:grid-cols-2">
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <p> 
                    Includes will get objects that match any of the values in the array. It is used to
                    filter objects that have a field that matches any of the values in the array. For example, if you
                    want to get all objects that have a label with ID `aaa00000-aaaa-aaaa-aaaa-aaaaaaaaaaaa` or
                    `bbb00000-bbbb-bbbb-bbbb-bbbbbbbbbbbb`, you can use the `includes` query type.
                </p>

                <div class="my-6">
                    <ul role="list"
                        class="m-0 max-w-[calc(theme(maxWidth.lg)-theme(spacing.8))] list-none divide-y divide-slate-100 p-0 ">
                        <li class="m-0 px-0 py-4 first:pt-0 last:pb-0">
                            <dl class="m-0 flex flex-wrap items-center gap-x-3 gap-y-2">
                                <dt class="sr-only">Query</dt>
                                <dd><code class="inline-code">query</code></dd>
                                <dt class="sr-only">Type</dt>
                                <dd class="font-mono text-xs text-slate-500 ">Query</dd>
                                <dt class="sr-only">Description</dt>
                                <dd class="w-full flex-none [&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                                    <p>Here is an example of a less than or equal query</p>
                                </dd>
                            </dl>
                        </li>

                    </ul>
                </div>
            </div>
            <div class="[&amp;>:first-child]:mt-0 [&amp;>:last-child]:mb-0">
                <%- include('../partials/code', {title: "Example Not EqualTo Request Body" , requestUrl: "" , requestType: "" ,
                    code: pageData.includesCode }) -%>

            </div>
        </div>

    </article>
</main>