Document Service API: Sorting and paginating results
The Document Service API offers the ability to sort and paginate query results.
Sort
To sort results returned by the Document Service API, include the sort
parameter with queries.
Sort on a single field
To sort results based on a single field:
Example request
const documents = await strapi.documents("api::article.article").findMany({
sort: "title:asc",
});
Example response
[
{
"documentId": "cjld2cjxh0000qzrmn831i7rn",
"title": "Test Article",
"slug": "test-article",
"body": "Test 1"
// ...
},
{
"documentId": "cjld2cjxh0001qzrm5q1j5q7m",
"title": "Test Article 2",
"slug": "test-article-2",
"body": "Test 2"
// ...
}
// ...
]
Sort on multiple fields
To sort on multiple fields, pass them all in an array:
Example request
const documents = await strapi.documents("api::article.article").findMany({
sort: [{ title: "asc" }, { slug: "desc" }],
});
Example response
[
{
"documentId": "cjld2cjxh0000qzrmn831i7rn",
"title": "Test Article",
"slug": "test-article",
"body": "Test 1"
// ...
},
{
"documentId": "cjld2cjxh0001qzrm5q1j5q7m",
"title": "Test Article 2",
"slug": "test-article-2",
"body": "Test 2"
// ...
}
// ...
]
Pagination
To paginate results, pass the limit
and start
parameters:
Example request
const documents = await strapi.documents("api::article.article").findMany({
limit: 10,
start: 0,
});
Example response
[
{
"documentId": "cjld2cjxh0000qzrmn831i7rn",
"title": "Test Article",
"slug": "test-article",
"body": "Test 1"
// ...
},
{
"documentId": "cjld2cjxh0001qzrm5q1j5q7m",
"title": "Test Article 2",
"slug": "test-article-2",
"body": "Test 2"
// ...
}
// ... (8 more)
]