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:
const documents = await strapi.documents("api::article.article").findMany({
sort: "title:asc",
});
[
{
"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:
const documents = await strapi.documents("api::article.article").findMany({
sort: [{ title: "asc" }, { slug: "desc" }],
});
[
{
"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:
const documents = await strapi.documents("api::article.article").findMany({
limit: 10,
start: 0,
});
[
{
"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)
]