Method: documents.batchUpdate

Belgeye bir veya daha fazla güncelleme uygular.

Her request uygulanmadan önce doğrulanır. Geçersiz bir istek olursa isteğin tamamı başarısız olur ve hiçbir şey uygulanmaz.

Bazı isteklerde, nasıl uygulandıkları hakkında bilgi veren replies simgesi bulunur. Diğer isteklerin bilgi döndürmesi gerekmez. Bu istekler boş bir yanıt döndürür. Yanıtların sırası, isteklerin sırasıyla eşleşir.

Örneğin, batchUpdate'i dört güncelleme ile çağırdığınızı ve yalnızca üçüncü güncellemenin bilgi döndürdüğünü varsayalım. Yanıt, sırasıyla iki boş yanıt, üçüncü isteğe verilen yanıt ve başka bir boş yanıt içerir.

Diğer kullanıcılar dokümanı düzenliyor olabileceğinden doküman, değişikliklerinizi tam olarak yansıtmayabilir. Değişiklikleriniz, ortak çalışanların yaptığı değişikliklere göre değiştirilebilir. Ortak çalışan yoksa belgede değişiklikleriniz yansıtılır. Her durumda, isteğinizdeki güncellemelerin atomik olarak birlikte uygulanacağı garanti edilir.

HTTP isteği

POST https://docs.googleapis.com/v1/documents/{documentId}:batchUpdate

URL, gRPC Kod Dönüştürme söz dizimini kullanır.

Yol parametreleri

Parametreler
documentId

string

Güncellenecek dokümanın kimliği.

İstek metni

İstek içeriği aşağıdaki yapıyla birlikte verileri içerir:

JSON gösterimi
{
  "requests": [
    {
      object (Request)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
Alanlar
requests[]

object (Request)

Belgeye uygulanacak güncellemelerin listesi.

writeControl

object (WriteControl)

Yazma isteklerinin nasıl yürütüleceği üzerinde kontrol sağlar.

Yanıt metni

documents.batchUpdate isteğinden gelen yanıt mesajı.

Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:

JSON gösterimi
{
  "documentId": string,
  "replies": [
    {
      object (Response)
    }
  ],
  "writeControl": {
    object (WriteControl)
  },
  "suggestionResponses": [
    {
      object (SuggestionResponse)
    }
  ],
  "commentUpdateState": enum (CommentUpdateState)
}
Alanlar
documentId

string

Güncellemelerin uygulandığı belgenin kimliği.

replies[]

object (Response)

Güncellemelerin yanıtı. Bazı isteklere verilen yanıtlar boş olsa da bu, güncellemelerle 1:1 eşleşir.

writeControl

object (WriteControl)

İstek uygulandıktan sonra güncellenen yazma kontrolü.

suggestionResponses[]

object (SuggestionResponse)

Her güncellemeden etkilenen öneriler. Bu, güncellemelerle bire bir eşleşir.

commentUpdateState

enum (CommentUpdateState)

Toplu istekte yorum güncellemelerinin uygulanıp uygulanmadığı.

Yetkilendirme kapsamları

Aşağıdaki OAuth kapsamlarından birini gerektirir:

  • https://www.googleapis.com/auth/documents
  • https://www.googleapis.com/auth/drive
  • https://www.googleapis.com/auth/drive.file

Daha fazla bilgi için Yetkilendirme kılavuzu'nu inceleyin.

WriteControl

Yazma isteklerinin nasıl yürütüleceği üzerinde kontrol sağlar.

JSON gösterimi
{
  "writeMode": enum (WriteMode),

  "requiredRevisionId": string,
  "targetRevisionId": string
}
Alanlar
writeMode

enum (WriteMode)

İstek güncellemelerinin belgeye nasıl uygulanması gerektiği.

Belirtilmezse istek güncellemeleri normal düzenlemeler olarak uygulanır.

Yazılacak dokümanın düzeltmesini ve bu düzeltme, dokümanın mevcut düzeltmesi değilse isteğin nasıl davranması gerektiğini belirler. İki alan da belirtilmezse güncellemeler en son düzeltmeye uygulanır. Aşağıda, aynı anda kullanılamayan alanların listesi verilmiştir. Yanıt olarak en fazla bir alan ayarlanır:
requiredRevisionId

string

Yazma isteğinin uygulandığı dokümanın isteğe bağlı revision ID. Bu, belgenin en son sürümü değilse istek işlenmez ve 400 hatalı istek hatası döndürülür.

Bir yanıtta gerekli düzeltme kimliği döndürüldüğünde, bu kimlik isteğin uygulanmasından sonraki dokümanın düzeltme kimliğini gösterir.

targetRevisionId

string

Yazma isteğinin uygulandığı dokümanın isteğe bağlı hedefi revision ID.

Doküman API kullanılarak okunduktan sonra ortak çalışan değişiklikleri yapıldıysa bu yazma isteğiyle oluşturulan değişiklikler, ortak çalışan değişikliklerine göre uygulanır. Bu durumda, Dokümanlar sunucusu çakışan değişiklikleri çözerek hem ortak çalışan değişikliklerini hem de istekteki değişiklikleri içeren yeni bir belge sürümü oluşturur. Hedef düzeltme kimliği kullanılırken API istemcisi, belgenin başka bir ortak çalışanı olarak düşünülebilir.

Hedef düzeltme kimliği yalnızca bir belgenin son sürümlerine yazmak için kullanılabilir. Hedef düzeltme, en son düzeltmenin çok gerisindeyse istek işlenmez ve 400 hatalı istek hatası döndürülür. İstek, dokümanın en son sürümü alındıktan sonra tekrar denenmelidir. Genellikle bir düzeltme kimliği, okunduktan sonra birkaç dakika boyunca hedef düzeltme olarak kullanılmaya devam eder ancak sıkça düzenlenen dokümanlarda bu süre daha kısa olabilir.

Birbirini dışlayan alanların sonu.

WriteMode

İstek güncellemelerinin belgeye nasıl uygulanacağını belirler.

Sıralamalar
WRITE_MODE_UNSPECIFIED Yazma modu belirtilmemiş. Varsayılan olarak EDIT davranışı kullanılır.
EDIT Tüm güncellemeleri normal düzenlemeler olarak uygulayın.
SUGGEST Tüm güncellemeleri öneri olarak uygulayın.

SuggestionResponse

Belirli bir güncellemeden etkilenen öneriler.

JSON gösterimi
{
  "createdSuggestionIds": [
    string
  ],
  "updatedSummarySuggestionIds": [
    string
  ],
  "deletedSuggestionIds": [
    string
  ],
  "acceptedSuggestionIds": [
    string
  ],
  "rejectedSuggestionIds": [
    string
  ]
}
Alanlar
createdSuggestionIds[]

string

Güncelleme sırasında oluşturulan önerilerin kimlikleri.

updatedSummarySuggestionIds[]

string

Güncelleme sırasında özetleri güncellenen önerilerin kimlikleri.

deletedSuggestionIds[]

string

Güncelleme sırasında silinen önerilerin kimlikleri.

acceptedSuggestionIds[]

string

Güncelleme sırasında kabul edilen önerilerin kimlikleri.

rejectedSuggestionIds[]

string

Güncelleme sırasında reddedilen önerilerin kimlikleri.

CommentUpdateState

Toplu istekteki yorum güncellemelerinin durumu.

Sıralamalar
COMMENT_UPDATE_STATE_UNSPECIFIED Yorum güncellemelerinin durumu belirtilmemiş.
NO_UPDATES_REQUESTED Toplu istekte yorum güncellemeleri istenmedi.
ALL_SAVED İstenen tüm yorum güncellemeleri toplu isteğe uygulandı.
ALL_FAILED_UNKNOWN_REASON İstenen yorum güncellemelerinin tümü başarısız oldu.