Mosh Ontong
TypeScript
Future<ConsultationThread> createThread({
required String memberId,
required String consultationId,
required String message,
}) async {
try {
_logger.info('Create Thread for $memberId in $consultationId');
final user = await account.get();
final response = await databases.createDocument(
databaseId: consultationThreadCredential.databaseId,
collectionId: consultationThreadCredential.collectionId,
documentId: app.ID.unique(),
data: {
'id': app.ID.unique(),
'consultRef': consultationId,
'authorRef': memberId,
'author': memberId,
'message': message,
},
permissions: [
app.Permission.read(
app.Role.team(
consultationId,
ConsultPermission.threadRead.code,
),
),
app.Permission.read(
app.Role.team(
consultationId,
'owner',
),
),
app.Permission.write(
app.Role.user(user.$id),
),
],
);
_logger.info('Created Thread for $memberId in $consultationId');
return ConsultationThread.fromJson(response.data);
} on app.AppwriteException catch (e, stackTrace) {
_logger.severe(e.message, e, stackTrace);
throw CreateThreadException(
e.message ?? 'Something went wrong, please try again later',
stackTrace,
);
} catch (e, stackTrace) {
_logger.severe(e.toString(), e, stackTrace);
throw CreateThreadException(
e.toString(),
stackTrace,
);
}
}
TL;DR
The user wants to know if they are allowed to set the permission for Role team. In this case, they are trying to set permissions for a thread in an app. The solution provided is to create an appwrite function to set the permissions. The code snippet provided shows how to create the thread and set the permissions using the appwrite library. Drake
A user cannot put a role they don't have.
D5
So instead you will need to create an appwrite function in order to set it
Mosh Ontong
is this same to the storage permission?
D5
Yes
Recommended threads
- The current user is not authorized to pe...
I want to create a document associated with user after log in with OAuth. The user were logged in, but Appwrite said user is unauthorized. User is logged in wi...
- Attributes Confusion
```import 'package:appwrite/models.dart'; class OrdersModel { String id, email, name, phone, status, user_id, address; int discount, total, created_at; L...
- How to Avoid Double Requests in function...
I'm currently using Appwrite's `functions.createExecution` in my project. I want to avoid double requests when multiple actions (like searching or pagination) a...