updateDocument method

Future<Document> updateDocument({
  1. required String databaseId,
  2. required String collectionId,
  3. required String documentId,
  4. Map? data,
  5. List<String>? permissions,
})

Update document

Update a document by its unique ID. Using the patch method you can pass only specific fields that will get updated.

Implementation

Future<models.Document> updateDocument(
    {required String databaseId,
    required String collectionId,
    required String documentId,
    Map? data,
    List<String>? permissions}) async {
  final String apiPath =
      '/databases/{databaseId}/collections/{collectionId}/documents/{documentId}'
          .replaceAll('{databaseId}', databaseId)
          .replaceAll('{collectionId}', collectionId)
          .replaceAll('{documentId}', documentId);

  final Map<String, dynamic> apiParams = {
    'data': data,
    'permissions': permissions,
  };

  final Map<String, String> apiHeaders = {
    'content-type': 'application/json',
  };

  final res = await client.call(HttpMethod.patch,
      path: apiPath, params: apiParams, headers: apiHeaders);

  return models.Document.fromMap(res.data);
}