anchor.diff:      if (_currentTransaction != null) {
         throw Exception('Error: nested transactions');
       }
  -    var url = '$documentsUrl:beginTransaction';
       var body = '{"options": {}}';
  -    var response = await _client.post(url, headers: _headers, body: body);
  +    var response =
  +        await _client.post(_beginTransactionUrl, headers: _headers, body: body);
       if (response.statusCode == HttpStatus.ok) {
         var result = jsonDecode(response.body);
         _currentTransaction = result['transaction'] as String;
  
positive.code:       "writes": writes.map((write) => write.data).toList(),
        "transaction": "$_currentTransaction"
      });
      var url = '$documentsUrl:commit';
      var response = await _client.post(url, headers: _headers, body: body);
      _currentTransaction = null;
      if (response.statusCode == HttpStatus.conflict) {
        // This HTTP status code corresponds to the ABORTED error code, see
  
negative.code:   }
  
    Future<Map> getDocument(String collectionName, String documentName) async {
      var url = _documentsUrl.resolveUri(Uri(
          path: '$collectionName/$documentName',
          query: _currentTransaction == null
              ? null
              : 'transaction=${_escapedCurrentTransaction}'));
      var response = await _client.get(url, headers: _headers);
      if (response.statusCode == HttpStatus.ok) {
        var document = jsonDecode(response.body);
  