Şablon gönderme akışı

Panelde (/mytemplates) hazırladığınız şablonu Developer API ile tek istekte belgeye çevirip gönderebilirsiniz. PDF yükleme ve configuration adımları gerekmez; alanlar ve alıcı iskeleti şablondan kopyalanır.

Tüm path’ler base /api/v1 üzerinedir. Auth: API anahtarı. PDF’den sıfır belge (önerilen tek istek): Tek istekte belge gönderme. Adım adım: Belge gönderme akışı.

Adımlar

1. Şablon listesi

Workspace’teki hazır şablonları listeleyin. items[].operationId değeri şablon kimliğidir (templateOperationId).

GET /developer/templates

(scope: documents:read)

2. Şablon detayı (önerilen)

Göndermeden önce kaç alıcı gerektiğini, role / order, vekil bilgisi ve recipientExternalId (GUID) değerlerini öğrenin.

GET /developer/templates/{templateOperationId}

(scope: documents:read) — recipients[] içinde recipientExternalId (GUID), order, role döner.

3. Şablondan gönder

Şablondan tek istekte yeni belge üretir ve gönderimi başlatır. PDF yükleme ve configuration adımları gerekmez.

POST /developer/documents/from-template/{templateOperationId}/send

(scope: documents:create)

4. Durum

Yanıttaki operationId ile üretilen belgenin durumunu izleyin.

GET /developer/documents/{operationId}

(scope: documents:read)

Token workspace’i şablonun workspace’i ile aynı olmalıdır.

Alıcı eşleme

recipientExternalId: "r1" çalışmaz (configuration örneğidir). Şablon alıcı eşlemesi:

1. GUID ile eşleme

recipientExternalId değerini şablon alıcısının GUID değeri olarak gönderin (DocumentRecipient.Id / panel externalId). Configuration örneklerindeki r1 gibi kısa string çalışmaz.

2. Sıra ve rol ile eşleme

GUID göndermiyorsanız order ve role değerlerini şablondakiyle birlikte aynı tutun.

deliveryPlans sayısı şablon alıcı sayısına eşitse sıra ile eşlenir (GUID zorunlu değil).

Detay yanıtındaki recipients[] alanlarını (recipientExternalId, order, role) from-template body’de doldurun.

Örnek istek

Tek alıcılı şablon (privateNote, uyruk, vekil, OTP dahil):

{
  "isOrderedFlow": true,
  "privateNote": "ERP sipariş #4521 — iç not",
  "recipients": [
    {
      "order": 1,
      "role": "Signee",
      "fullName": "Ayşe Yılmaz",
      "email": "[email protected]",
      "phone": "+905551112233",
      "recipientProfile": {
        "firstName": "Ayşe",
        "lastName": "Yılmaz",
        "principalEmail": "[email protected]",
        "principalPhone": "+905551112233",
        "personCategory": "TurkishCitizen",
        "identityDocumentKind": "TcKimlik",
        "tcKimlikNo": "12345678901",
        "useRepresentativeForDelivery": true,
        "representative": {
          "personCategory": "TurkishCitizen",
          "identityDocumentKind": "TcKimlik",
          "tcKimlikNo": "10987654321",
          "firstName": "Mehmet",
          "lastName": "Demir",
          "email": "[email protected]",
          "phone": "+905559998877"
        },
        "verification": {
          "phoneOtpVerification": true
        }
      }
    }
  ],
  "deliveryPlans": [
    { "channels": ["email", "sms"] }
  ]
}

personCategory: TurkishCitizen | Foreign | Stateless. Vekil yoksa useRepresentativeForDelivery ve representative alanlarını göndermeyin.

İki alıcılı şablon: recipients ve deliveryPlans içinde şablondaki kadar kayıt gönderin (order: 1, order: 2 …).

Gönderim sonrası

Yanıt data:

AlanTipAçıklama
operationIdguidÜretilen yeni belge operasyon kimliği
enqueuedJobCountnumberKuyruğa alınan gönderim işi
initialRecipientAccessCodestringİlk alıcı erişim kodu (open_on_device)
openOnThisDeviceForActiveRecipientbooleanBu cihazda aç yönlendirmesi

Şablon kimliği path’tedir; yanıt operationId üretilen belgenindir.

İmza linki:

{appBase}/r/{code}

Durum polling: Durum takibi. İmza türleri ve public link: İmzalama akışı.

Alan tabloları ve tam şema: Geliştirici belgeleri — Şablondan gönder.

Hızlı deneme: Playground.

Şablon gönderme akışı | Dokümantasyon | Argelabs Dijital İmza