Appearance
Utilities
Utilities are the various helper endpoints located within the API.
Generate a Hash
Generate a hash for a given string.
Request Body
string
Required
String to hash.
Returns
Hashed string.
REST API
POST /utils/hash/generate
Example
json
// POST /utils/hash/generate
{
"string": "Hello World!"
}
GraphQL
POST /graphql/system
graphql
type Mutation {
utils_hash_generate(string: String!): String
}
Example
graphql
mutation {
utils_hash_generate(string: "Hello World!")
}
Verify a Hash
Verify a string with a hash.
Request Body
string
Required
Source string.
hash
Required
Hash you want to verify against.
Returns
Boolean.
REST API
POST /utils/hash/verify
Example
json
// POST /utils/hash/verify
{
"string": "Hello World!",
"hash": "$arg...fEfM"
}
GraphQL
POST /graphql/system
graphql
type Mutation {
utils_hash_verify(hash: String!, string: String!): Boolean
}
Manually Sort Items in Collection
If a collection has a sort field, this util can be used to move items in that manual order.
Request Body
item
Required
Primary key of the item you're moving in the collection.
to
Required
Primary key of the item you're moving the source item too.
Returns
Empty body.
REST API
POST /utils/sort/:collection
Example
json
// POST /utils/sort/articles
{
"item": 16,
"to": 51
}
GraphQL
POST /graphql/system
graphql
type Mutation {
utils_sort(collection: String!, item: ID!, to: ID!): Boolean
}
Example
graphql
mutation {
utils_sort(collection: "articles", item: 16, to: 51)
}
Import Data from File
Import multiple records from a JSON or CSV file into a collection. Relies on a multipart/form-data
encoded request, just like regular file uploads. Check Upload a File for more information.
The import endpoint expects the file structure to match the export query parameter. For JSON, this is an array of objects, where every object is an item. For CSV, the first line has to be the columns header.
Request Body
Send the file in a multipart/form-data
request. See Upload a File for more information.
Returns
Empty body.
REST API
POST /utils/import/:collection
Example
POST /utils/import/articles
Content-Type: multipart/form-data; charset=utf-8; boundary=__X_BOUNDARY__
Content-Length: 3442422
--__X_BOUNDARY__
Content-Disposition: form-data; name="file"; filename="articles.csv"
Content-Type: text/csv
"id","title","another","created_by"
1,"My First Articled","abc","506385A2-E444-4AE2-A860-F00957A62C8A"
2,"My Second Article","abc","506385A2-E444-4AE2-A860-F00957A62C8A"
3,"My Updated Third Article","abc","506385A2-E444-4AE2-A860-F00957A62C8A"
4,"My Fourth Article","abc","506385A2-E444-4AE2-A860-F00957A62C8A"
5,"My Fifth Article","abc","506385A2-E444-4AE2-A860-F00957A62C8A"
...
GraphQL
n/a
Export Data to a File
Export a larger data set to a file in the File Library
Query Parameters
Doesn't use any query parameters.
Request Body
format
Required
What file format to save the export to. One of csv
, json
, xml
, yaml
.
query
Required
The query object to use for the export. Supports the global query parameters.
file
File Object
Partial file object to tweak where / how the export file is saved.
Returns
Empty body
REST API
POST /utils/export/:collection
Example
POST /utils/export/articles
json
{
"query": {
"filter": {
"status": {
"_eq": "published"
}
}
},
"file": {
"folder": "34e95c19-cc50-42f2-83c8-b97616ac2390"
}
}
GraphQL
n/a
Clear the Internal Cache
Resets both the data and schema cache of Directus. This endpoint is only available to admin users.
Request Body
n/a
Returns
Empty body
REST API
POST /utils/cache/clear
GraphQL
graphql
mutation {
utils_cache_clear
}