Thanks for your answer!
Unfortunately this did not really work for me and regarding this thread, Dgraph does not support string equals in @if() statements of mutation conditions. However, it is possible to perform an additional match query. So, in order to do something like this
{
"query": "{ q(func: uid(0x1)) { u as uid \n v as User.status } }",
"mutations": [
{
"cond": "@if(eq(len(u), 1) AND eq(val(v), \"PENDING\"))",
"set": {
"uid": "uid(u)",
"User.status": "ACTIVE"
}
}
]
}
we would introduce a second query, saved as a variable
{
"query": "{ q(func: uid(0x1)) { u as uid \n v as User.status } } \n matchPending as var(func: eq(val(v), \"PENDING\"))",
"mutations": {
"cond": "@if(eq(len(u), 1) AND eq(len(matchPending),1))",
"set": {
"uid": "uid(u)",
"User.status": "ACTIVE"
}
}
}