I've been trying to run a single query where I find multiple documents by a list of document ids. I found out you can find multiple documents by an array by using Query.search, if the attribute has an index with fulltext as type. So in order to find multiple documents I want to add a fulltext index on the $id field. When I try to add this index I get this error back:
{
"message": "Invalid `key` param: Parameter must contain at most 36 chars. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char",
"code": 400,
"type": "general_argument_invalid",
"version": "1.4.7"
}
Is it in any way possible to do query with an array as input?
first of all, if you want to filter by document ids, you don't need Query.search(). You can use Query.equal('$id', [id1, id2, id3]).
secondly, when you tried creating your index, what did you put as the key?
Ahh, now I feel stupid. But thank you, that works 😅 My input when creating the index was:
{
"key":"$id",
"type":"fulltext",
"attributes":[],
"orders":["ASC"]
}
ya, $id is now allowed for key. FYI, key is just a name for you. the important part in creating indexes is included the attributes in the attributes array
Ah, that makes sense. Thank you!
[SOLVED] Unable to add fulltext index to $id field
Recommended threads
- Auth not working on expo react native
I'm trying to launch a development server with expo go and appwrite as a backend. On my windows pc, I've got a local docker instance of appwrite running as my b...
- Urgent help required - Could not resolve...
I upgraded my production environment to 1.8.0 but experienced issues with appwrite running out of worker threads. I downgraded back to 1.6.1 and restored the da...
- Bulk delete failed with 401
- I created a transaction to bulk delete rows in a table has `done` equal `true` follow documentation. But when run, it returns 401 unauthorized error as screen...