createDocument method

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

Create document

Create a new Document. Before using this route, you should create a new collection resource using either a server integration API or directly from your database console.

Implementation

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

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

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

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

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