
# gRPC {/* #grpc */}

Platform API belirteci oluşturmak için [API ile bağlanma](/docs/tr/connect-api) bölümünden başlayın. gRPC-Web istemcileri `https://reconstruct.dev` kullanır. Yerel gRPC, TLS üzerinden `reconstruct.dev:443` adresine bağlanır ve proto servis adından oluşturulan yöntem yolunu kullanır. Her çağrı `authorization: Bearer <token>` meta verisi gerektirir.

`GetCaptureOptions` desteklenen tür kimliklerini ve ortamları döndürür; istemciler kendi sabit listelerini tutmamalıdır. `CatalogPlatform.view` platform türü (`desktop`/`mobile`), `CatalogPlatform.implementation` ise ortamdır. Masaüstü `web/web-extension/macos/windows/linux`, mobil `web/ios/android` destekler. `captured` depolanmış kullanılabilirliği belirtir. MCP aynı seçim için `platform`/`environment` kullanır; sayfa `view` alanı kaydedilmiş profili tanımlar. [MCP kataloğuna](/docs/tr/mcp-tools) bakın.

## Sözleşmeyi indirme {/* #download-the-contract */}

```bash
curl -fsSL https://reconstruct.dev/docs/proto/platform.proto -o platform.proto
```

[İstemciye yönelik sözleşme](https://reconstruct.dev/docs/proto/platform.proto), sunucu sözleşmesiyle aynı servis, iletiler ve alan numaralarına sahiptir. İstemci üretiminin Google API açıklama protolarını gerektirmemesi için HTTP açıklamaları çıkarılmıştır.

| RPC | İstek | Sonuç |
|---|---|---|
| `ListCatalogs` | `page_size`, isteğe bağlı `page_token` | `catalogs[]`, isteğe bağlı `next_page_token` |
| `GetCaptureOptions` | Boş istek | Desteklenen platform/ortam kimlikleri, varsayılanlar ve istek platformu seçenekleri; kimlik doğrulama veya kullanım ölçümü yoktur. |
| `GetCatalog` | `catalog_id`, isteğe bağlı `version` | Meta veriler, seçili `version`, yayımlanmış `versions[]`, `screens[]`, platform/dil seçenekleri |
| `GetCatalogInsights` | `catalog_id`, isteğe bağlı `locale`, `view`, `implementation`, `section`, `version` | `version`, `technologies[]`, `rendering`, `fonts[]`, `text_styles[]`, `assets[]`, `color_themes[]`, `page_count` |

Listede ilerlemek için `next_page_token` değerini sonraki çağrının `page_token` alanı olarak kullanın. Katalog kimliklerini `ListCatalogs` üzerinden alın.

Sözleşme ayrıca `GetCatalogFile` (baytlar ve içerik türü, isteğe bağlı `version`), `CreateRequest`, `ListRequests`, `GetRequest` ile [REST kılavuzunda](/docs/tr/api/rest) listelenen hesap, görünüm, avatar ve kişisel belirteç işlemlerini içerir. İki API biçiminde de aynı hesap erişim gereksinimleri geçerlidir. `ListCatalogs`, orada belgelenen platform aramasını, sıralamasını ve tekrarlanan filtreleri destekler.

`WatchCatalogs`, `changed` ve `revision` akışı sunar; tek katalog için `catalog_id` verin veya liste için bunu atlayın ve yeniden bağlanırken son `revision` değerini kullanın. `WatchRequests`, çağıranın istekleri için geçersiz kılma bildirimleri yayımlar. `changed` doğru olduğunda ilgili verileri yenileyin. Bu akışlar gRPC/gRPC-Web kullanır ve HTTP açıklaması yoktur.

## İstemci oluşturma {/* #generate-a-client */}

- [Python](/docs/tr/api/grpc/python)
- [C#](/docs/tr/api/grpc/csharp)
- [TypeScript](/docs/tr/api/grpc/typescript)
- [Go](/docs/tr/api/grpc/go)
- [Rust](/docs/tr/api/grpc/rust)
- [Java](/docs/tr/api/grpc/java)
- [C++](/docs/tr/api/grpc/cpp)

## grpcurl ile çağrı deneme {/* #try-a-call-with-grpcurl */}

`platform.proto` dosyasının bulunduğu dizinden, `CR_RECONSTRUCT_API_TOKEN` ayarlanmış olarak:

```bash
grpcurl \
  -import-path . -proto platform.proto \
  -H "authorization: Bearer ${CR_RECONSTRUCT_API_TOKEN}" \
  -d '{"pageSize":10}' \
  reconstruct.dev:443 \
  reconstruct.platform.v1.PlatformService/ListCatalogs
```

Yerel gRPC hedefi için URL yolu olmadan ana makine adı ve port kullanın.

## Hesap kullanımı ve faturalandırma {/* #account-usage-and-billing */}

Platformun hesap ayarlarında aboneliğinizi yönetin ve kullanımı inceleyin. Kişisel API ve MCP belirteçleri katalog ve istek işlemlerine erişim sağlar; hesap faturalandırmasını yönetmekte kullanılamaz.

## Normalleştirilmiş arayüz verileri {/* #normalized-interface-data */}

[Sahne veri biçimi](/docs/tr/data-format), durumlar, kaynaklar ve kanıtlar dahil platformdan bağımsız arayüz çıktılarını tanımlar. Mevcut normalleştirilmiş dışa aktarım MCP `get_interface_scene` üzerinden alınır; bu katalog API'si ayrı bir Scene işlemi tanımlamaz.
