CoreApiPadesMobile (v2.0)

CoreApiPadesMobile, mobil imza operatörleri (Turkcell/Vodafone/AVEA) üzerinden PAdES imzalama başlatmayı sağlar. Bu adımda son kullanıcıya SMS/onay akışı gösterilir, parmak izi (fingerprint) üretilir ve işlem bir OperationId üzerinde sürdürülür.

Not: Mobil imzada işlem, operatör onayı sonrası SignStepOne çağrısından sonra tamamlanır; ayrı bir “signStepThree” adımı yoktur.

Temel kavramlar

  • OperationId: İmzalanacak dosyayı temsil eden işlem kimliği. Önceki adımlardan (ör. yükleme veya PDF’e dönüştürme) alınır.
  • Auth: Tüm uç noktalar ApiKey gerektirir.
  • Zarf: Tüm yanıtlar ApiResult<T> tipindedir:
    • result: T
    • error: string (hata durumunda dolar)

POST/v2/CoreApiPadesMobile/SignStepOnePadesMobileCore

SignStepOnePadesMobileCore — Mobil imzayı başlat

Mobil PAdES imza işlemini başlatır. İşlem sırasında operatör ile iletişim kurulur ve parmak izi (fingerprint) üretilir. İstemci bu fingerprint’i CoreApiFingerPrint (v2.0) altındaki uç nokta ile sorgulayabilir.

Gerekli/opsiyonel alanlar

  • Name
    operationId
    Type
    uuid
    Description

    İmzalanacak PDF’in işlem kimliği (önceki adımdan elde edilir).

  • Name
    coordinates
    Type
    object
    Description

    (Opsiyonel) Konum bilgileri (şu an kullanılmıyor).

  • Name
    phoneNumber
    Type
    string
    Description

    Mobil imza telefon numarası (örn. 5XXXXXXXXX).

  • Name
    operator
    Type
    string
    Description

    Operatör adı (TURKCELL | VODAFONE | AVEA).

  • Name
    userPrompt
    Type
    string
    Description

    Kullanıcıya gösterilecek mesaj.

  • Name
    citizenshipNo
    Type
    string
    Description

    (Opsiyonel) İmza sahibinin TCKN doğrulaması için.

  • Name
    signatureLevel
    Type
    SignatureLevelForPades?
    Description

    (Opsiyonel) PAdES imza seviyesi. Olası değerler: paslBES, paslLTV. Boş geçilirse paslBES kabul edilir.

  • Name
    signatureTurkishProfile
    Type
    string
    Description

    (Opsiyonel) P1 | P2 | P3 | P4 (profil istenmiyorsa boş geçilir).

  • Name
    requestId
    Type
    string
    Description

    21 karakter uzunluğunda benzersiz bir string. Her istek için farklı olmalıdır. Örnek: Guid.NewGuid().ToString("N").Substring(0,21)

  • Name
    displayLanguage
    Type
    string
    Description

    Dil tercihi (BaseRequest).

Request

POST
/v2/CoreApiPadesMobile/SignStepOnePadesMobileCore
curl -X POST "https://apitest.onaylarim.com/v2/CoreApiPadesMobile/SignStepOnePadesMobileCore" \
  -H "X-API-KEY: {api_key}" \
  -H "Content-Type: application/json" \
  -d '{
        "operationId": "11111111-1111-1111-1111-111111111111",
        "phoneNumber": "5XXXXXXXXX",
        "operator": "TURKCELL",
        "userPrompt": "İmzalamayı onaylıyor musunuz?",
        "citizenshipNo": null,
        "signatureLevel": "BES",
        "signatureTurkishProfile": "P4",
        "requestId": "aaaaaaaaaaaaaaaaaaaaa",
        "displayLanguage": "tr"
      }'

Response

{
  "result": {
    "isSuccess": true,
    "operationId": "22222222-2222-2222-2222-222222222222"
  },
  "error": null
}

Örnek akış (PAdES Mobile)

  1. Dosya yükleme: CoreApiFile/UploadFile veya parça/parça: ChunkInit → ChunkUpload → ChunkComplete
  2. (Gerekirse) CoreApiPdf/ConvertToPdfCore ile PDF’e dönüştür → dönen operationId ile devam edilir.
  3. CoreApiPadesMobile/SignStepOnePadesMobileCore → mobil operatör akışı başlatılır, fingerprint üretilir (yeni operationId gelebilir).
  4. (Opsiyonel) CoreApiFingerPrint/GetFingerPrintCore ile operationId üzerinden fingerprint alınır ve kullanıcıya gösterilir.
  5. Operatör onayı sonrası imzalama tamamlanır; ek bir adım gerekmez.

V1’den V2’ye geçiş

Bu sayfa V2.0 uç noktalarını anlatır. Eğer mevcut entegrasyonunuz V1 (/v1.0/CoreApiPadesMobile) ile çalışıyorsa, aşağıdaki maddelerle V2’ye geçebilirsiniz.

Endpoint değişiklik özeti

AmaçV1 endpointV2 endpointNot
Mobil imzayı başlatPOST /v1.0/CoreApiPadesMobile/SignStepOnePadesMobileCorePOST /v2/CoreApiPadesMobile/SignStepOnePadesMobileCoreV2’de dosya yükleme akışı değişti (bkz. aşağı).
Fingerprint sorgulaPOST /v1.0/CoreApiPadesMobile/GetFingerPrintCorePOST /v2/CoreApiFingerPrint/GetFingerPrintCoreV2’de fingerprint endpoint’i CoreApiFingerPrint altına taşındı.

V1 → V2 request alanı dönüşümleri (PAdES Mobile)

SignStepOnePadesMobileCore

  • V1’de vardı, V2’de kaldırıldı
    • fileData: V1’de PDF içeriği bu çağrıda gönderilebiliyordu. V2’de dosya CoreApiFile/UploadFile (veya chunk akışı) ile yüklenir; burada sadece operationId referanslanır.
    • signatureIndex: V2 request’inde yoktur.
    • verificationInfo / qrCodeInfo: V1’de imzadan önce PDF’e katman eklemek için kullanılıyordu; V2’de bu işler CoreApiPdf (v2.0) altındaki katman ekleme uç noktaları ile yapılır.
  • V2’de yeni
    • signatureLevel: (Opsiyonel) SignatureLevelForPades (boşsa BES)
    • signatureTurkishProfile: (Opsiyonel) P1 | P2 | P3 | P4 (genelde P4)
  • Aynı kalanlar
    • operationId, phoneNumber, operator, userPrompt, citizenshipNo, requestId, displayLanguage

V1 örnek istek (özet):

{
  "operationId": "11111111-1111-1111-1111-111111111111",
  "fileData": "BASE64_FILE_BYTES",
  "signatureIndex": 0,
  "verificationInfo": null,
  "qrCodeInfo": null,
  "phoneNumber": "5XXXXXXXXX",
  "operator": "TURKCELL",
  "userPrompt": "İmzalamayı onaylıyor musunuz?",
  "citizenshipNo": null,
  "requestId": "aaaaaaaaaaaaaaaaaaaaa",
  "displayLanguage": "tr"
}

V2 örnek istek (özet):

{
  "operationId": "11111111-1111-1111-1111-111111111111",
  "phoneNumber": "5XXXXXXXXX",
  "operator": "TURKCELL",
  "userPrompt": "İmzalamayı onaylıyor musunuz?",
  "citizenshipNo": null,
  "signatureLevel": "BES",
  "signatureTurkishProfile": "P4",
  "requestId": "aaaaaaaaaaaaaaaaaaaaa",
  "displayLanguage": "tr"
}

Notlar / breaking changes

  • URL prefix: V1’den V2’ye geçerken /v1.0//v2/ olarak güncelleyin.
  • Fingerprint: V1’de fingerprint CoreApiPadesMobile/GetFingerPrintCore ile alınırdı; V2’de CoreApiFingerPrint/GetFingerPrintCore altına taşındı.

Was this page helpful?