---
title: Veri istekleri
description: "Sayfa ve bileşen root.props üzerindeki adlı dataRequests list/get/create/update davranışını sahiplenir. Button ve InteractiveWrapper yalnızca adlı isteği tetikler. VariableInputBlock, isteklerin okuyup yazdığı değişkenleri düzenler. Liste arayüzleri satırları VariableArrayTemplateBlock ile entry[]/array değişkene bağlayarak tekrarlar."
---

These are legacy blocks. Do not insert, copy, or invent them — they may still appear in existing documents, but their behavior is not guaranteed long-term and they will be fully removed: ButtonLink, LinkBar, LinkWrapper, ButtonWrapper, SingleAccordion, ObjectDisplayBlock, PageComponentBlock, HeaderNavShellBlock, ObjectBreadcrumbBlock, FormInput, FormSubmitButton, FormDeleteButton. Use get_design_schema / get_docs catalogs for allowed types. For lists/details/forms use ComponentBlock + named dataRequests (create_component_preset), VariableArrayTemplateBlock for repeating list rows (`arrayBinding` → `{{var:hits|items}}`, slot tokens `{{var:item.*}}`), VariableInputBlock, and ButtonBlock runRequest/runMutation. ButtonLink→ButtonBlock mapping (manual only): appearance filled→filled, text→text; move icon into a {{icon:…}} chip in text; set sizeByBreakpoint widthMode fitContent for non-stretch CTAs. Consent with a link: VariableInputBlock checkbox + adjacent RichTextBlock — do not build rich checkbox labels.

## Zihinsel model

Sorgular ne yapacaklarına kendileri karar verir. Bir istek op, objectTypeId, args (filters, searchQuery, fieldValues — çoğu zaman {{var:id}} veya {{bind:route.*}}), isteğe bağlı select ve başarılı çalışmadan sonra sonuçları değişkenlere kopyalayan resultWrites taşır. Button/InteractiveWrapper yalnızca action=runRequest|runMutation ve requestName ayarlar (loadingText/successText/errorText isteğe bağlı). Arama veya gönderim mantığını butona koymayın.

## Konum

Yalnızca content.root.props.dataRequests, inputSchema ve variables okunur. Host sayfalar ComponentBlock.props.inputMappings ile bileşen girdilerini bağlar. Üst düzey veya yanlış yerdeki anahtarlar saklanır ama detailed/runtime tarafından yok sayılır — get_design_warnings uyarır.

## Şema

dataRequests[]: { name, op: list|get|create|update, objectTypeId, args?, select?, resultWrites? }. resultWrites[]: { variableId, source? } (varsayılan source: results). inputSchema[]: { id, name, type }. Tokenlar: {{var:id}}, {{bind:route.*}}, {{bind:query.*}}. Liste satırları: VariableArrayTemplateBlock.arrayBinding = {{var:hits}} (veya {{var:items}}); slot içinde {{var:item.<fieldKey>}}.

## Select seçenekleri (VariableInputBlock)

Seçenekler blok props’tan değil, değişken tanımından gelir. type: "list" ve options: [{ id, label }, …] kullanın. type: "options" kabul edilir ve list olarak işlenir. Seçeneklerde id yerine value de kullanılabilir. VariableInputBlock’ta control: "select" (veya auto).

## Herkese açık oluşturma

Anonim create/update alan izinleri ve yerleşik honeypot/rate-limit kullanır. Başlangıç için create_component_preset kind=form. İstemci required nitelikleri kaldırılsa bile sunucu boş zorunlu nesne alanlarını reddeder.

## Tarifler

İletişim formu: alan değişkenleri + VariableInputBlock + create dataRequest + Button runMutation.
Arama / liste: q (text) ve hits (entry[]) değişkenleri + list dataRequest (searchQuery {{var:q}} + resultWrites → hits) + VariableInputBlock + Button runRequest + VariableArrayTemplateBlock (arrayBinding {{var:hits}}, slot’ta {{var:item.<fieldKey>}}; entry fieldValues item üzerine düzleştirilir). Boşluk/sütun için şablonu FlexListBlock/GridBlock ile sarın.
Yenile: aynı istek adına runRequest.

## İnceleme

mode=detailed: requests, requestsDetailed, parseErrors. get_design_warnings bilinmeyen blok/action ve hatalı dataRequests satırlarını bildirir.

## Hazır ayarlar ve migrasyon

MCP create_component_preset {objectTypeId, kind}. Liste preset’i {{var:hits}} bağlı VariableArrayTemplateBlock ve örnek {{var:item.*}} başlığı üretir. MCP migrate_object_displays leftover ObjectDisplayBlock düğümlerini ComponentBlock + named requests’e çevirir; liste yolu VariableArrayTemplateBlock + sayfa-güvenli bloklar üretir (ObjectBoundField değil) — eski display tiplerini eklemeyin.
