> ## Documentation Index
> Fetch the complete documentation index at: https://docs.banka.pro/llms.txt
> Use this file to discover all available pages before exploring further.

# Kredi özetini getirir

> Sözleşme durumu, geçerli dönem, kota, bu dönemde kullanılan, şu an aktif ve açılabilecek kredi sayısı.



## OpenAPI

````yaml /api-reference/openapi.json get /v1/credits
openapi: 3.0.3
info:
  title: BankaPro API
  version: 1.0.0
  description: >-
    BankaPro'nun sunucudan sunucuya kullanılan REST API'sidir. Kimlik doğrulama
    HTTP Basic ile yapılır: kullanıcı adı anahtar kimliği, parola secret key
    değeridir. İki tür anahtar vardır. Firma anahtarı tek firmaya bağlıdır;
    firma anahtarın kendisinden belirlenir ve veri uçları /v1/... adresiyle
    çağrılır. Entegratör anahtarı yazılım firmaları içindir: birden çok müşteri
    firmasını (VKN) ve bu firmaların banka bağlantılarını yönetir, firma
    verisine /v1/companies/{companyId}/... adresiyle erişir; entegratör anahtarı
    firma adresi olmadan bir veri ucunu çağırırsa 400 COMPANY_REQUIRED döner,
    firma anahtarı entegratör uçlarını çağırırsa 403 FORBIDDEN döner.
    Entegratörde her müşteri firmasında bağlı her banka bir kredidir; dönemin
    herhangi bir anında aktif olan her firma-banka ikilisi o dönem için sayılır
    ve kota dolunca yeni bağlantı 403 CREDIT_LIMIT_REACHED ile reddedilir. Her
    iki anahtarda da companies, companiesId, companyIds veya scope adlı sorgu
    parametresi ya da başlık kabul edilmez. Tarayıcı kaynaklı (Origin başlığı
    taşıyan) istekler reddedilir. Anahtarın IP kısıtı doluysa istek yalnız
    listedeki adreslerden kabul edilir. Veri uçları baAccounts, baTransactions,
    baOperations veya baSync yetkisiyle, entegratör uçları baCompanies veya
    baConnections yetkisiyle korunur; karşı taraf IBAN ve TCKN/VKN değerlerini
    açık görmek için baPii ayrıca atanmalıdır. Başarı yanıtı success/data/meta,
    hata yanıtı success:false/error/traceId biçimindedir. Tüm yanıtlarda
    x-request-id ve Cache-Control: no-store bulunur. Zamanlar UTC ISO-8601,
    parasal değerler iki ondalıklı metindir; farklı para birimleri tek toplamda
    birleştirilmez. Bilinmeyen bakiye null, bankanın bildirdiği gerçek sıfır
    0.00 olarak döner. Bu sözleşme banka hesabı, banka hareketi, manuel banka
    sorgusu ve entegratör (müşteri firması, banka bağlantısı, kredi) uçlarını
    kapsar.
servers:
  - url: https://api.banka.pro
    description: BankaPro canlı API
security:
  - BasicAuth: []
tags:
  - name: Accounts
    description: >-
      Credential firmasının banka hesapları, bakiye özetleri ve doğrulanmış
      bakiye geçmişi
  - name: Transactions
    description: Credential firmasının banka hareketleri, özetleri ve izinli operasyonları
  - name: Queries
    description: >-
      Credential firmasının banka hesaplarında mevcut sorgu motoruyla manuel
      yenileme
  - name: Integrator
    description: 'Entegratör anahtarı: müşteri firmaları (VKN) ve kredi özeti'
  - name: Bank connections
    description: >-
      Entegratör anahtarı: müşteri firmalarının banka bağlantıları ve banka
      kataloğu
paths:
  /v1/credits:
    parameters:
      - $ref: '#/components/parameters/RequestIdInput'
    get:
      tags:
        - Integrator
      summary: Kredi özetini getirir
      description: >-
        Sözleşme durumu, geçerli dönem, kota, bu dönemde kullanılan, şu an aktif
        ve açılabilecek kredi sayısı.
      operationId: getIntegratorCredits
      responses:
        '200':
          description: Kredi özeti
          headers:
            x-request-id:
              $ref: '#/components/headers/RequestId'
            Cache-Control:
              $ref: '#/components/headers/NoStore'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreditSummaryResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalError'
components:
  parameters:
    RequestIdInput:
      name: x-request-id
      in: header
      required: false
      description: >-
        Opsiyonel izleme kimliği. Değer 1-100 karakter ve yalnız harf, rakam,
        nokta, alt çizgi, iki nokta veya tire içeriyorsa korunur; aksi halde
        sunucu yeni bir UUID üretir.
      schema:
        type: string
        minLength: 1
        maxLength: 100
        pattern: ^[A-Za-z0-9._:-]{1,100}$
      example: 9cc0d3d1-1e63-4c90-b08f-90b6332e70ca
  headers:
    RequestId:
      description: >-
        İsteğin izleme kimliği. İstemcinin gönderdiği değer 1-100 karakter ve
        yalnız harf, rakam, nokta, alt çizgi, iki nokta veya tire içeriyorsa
        korunur; aksi halde sunucu tarafından UUID üretilir.
      schema:
        type: string
        maxLength: 100
        pattern: ^[A-Za-z0-9._:-]{1,100}$
        example: 9cc0d3d1-1e63-4c90-b08f-90b6332e70ca
    NoStore:
      description: Banka verisinin istemci veya ara katmanda saklanmamasını belirtir.
      schema:
        type: string
        enum:
          - no-store
    WwwAuthenticate:
      description: HTTP Basic kimlik doğrulama challenge değeri.
      schema:
        type: string
        example: Basic realm="BankaPro API", charset="UTF-8"
    RetryAfter:
      description: İsteğin kaç saniye sonra yeniden denenebileceğini belirtir.
      schema:
        type: integer
        minimum: 0
    RateLimit:
      description: >-
        Geçerli oran sınırı ve kalan kota bilgisini standart RateLimit biçiminde
        taşır.
      schema:
        type: string
  schemas:
    CreditSummaryResponse:
      allOf:
        - $ref: '#/components/schemas/SuccessBase'
        - type: object
          required:
            - data
          properties:
            data:
              $ref: '#/components/schemas/CreditSummary'
    SuccessBase:
      type: object
      required:
        - success
        - meta
      properties:
        success:
          type: boolean
          enum:
            - true
        meta:
          $ref: '#/components/schemas/ResponseMeta'
    CreditSummary:
      type: object
      required:
        - contract
        - currentPeriod
        - creditLimit
        - used
        - active
        - available
      properties:
        contract:
          $ref: '#/components/schemas/IntegratorContractStatus'
        currentPeriod:
          $ref: '#/components/schemas/CreditPeriod'
        creditLimit:
          type: integer
          description: Dönem kredi kotası.
          example: 50
        used:
          type: integer
          description: >-
            Bu dönemde sayılan kredi: dönemin herhangi bir anında aktif olan
            firma-banka ikilileri. Pasife alınan ikili dönem sonuna kadar
            sayılır.
          example: 12
        active:
          type: integer
          description: Şu an aktif firma-banka ikilisi sayısı.
          example: 11
        available:
          type: integer
          description: Bu dönemde açılabilecek yeni ikili sayısı.
          example: 38
    ErrorEnvelope:
      type: object
      required:
        - success
        - error
        - traceId
      properties:
        success:
          type: boolean
          enum:
            - false
        error:
          type: object
          required:
            - code
            - message
            - details
          properties:
            code:
              type: string
              example: VALIDATION_FAILED
            message:
              type: string
              example: İstek doğrulanamadı.
            details:
              type: array
              items:
                $ref: '#/components/schemas/ValidationDetail'
        traceId:
          type: string
          nullable: true
          example: 9cc0d3d1-1e63-4c90-b08f-90b6332e70ca
    ResponseMeta:
      type: object
      required:
        - requestId
        - timestamp
      properties:
        requestId:
          type: string
          example: 9cc0d3d1-1e63-4c90-b08f-90b6332e70ca
        timestamp:
          $ref: '#/components/schemas/UtcTimestamp'
        partial:
          type: boolean
          description: Yanıtın kontrollü fallback veya eksik veri içerdiğini belirtir.
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/ApiWarning'
    IntegratorContractStatus:
      type: object
      required:
        - period
        - startDate
        - endDate
        - state
        - endsAt
        - accessUntil
        - daysLeft
        - accessDaysLeft
      properties:
        period:
          type: string
          enum:
            - monthly
            - yearly
        startDate:
          allOf:
            - $ref: '#/components/schemas/UtcTimestamp'
          nullable: true
        endDate:
          allOf:
            - $ref: '#/components/schemas/UtcTimestamp'
          nullable: true
          description: null = süresiz.
        state:
          type: string
          enum:
            - active
            - expiring
            - grace
            - expired
            - pending
            - passive
          description: >-
            expiring: bitişe 7 gün veya daha az; grace: bitişten sonraki 7
            günlük ek süre.
        endsAt:
          allOf:
            - $ref: '#/components/schemas/UtcTimestamp'
          nullable: true
        accessUntil:
          allOf:
            - $ref: '#/components/schemas/UtcTimestamp'
          nullable: true
        daysLeft:
          type: integer
          nullable: true
        accessDaysLeft:
          type: integer
          nullable: true
    CreditPeriod:
      type: object
      required:
        - index
        - start
        - end
      description: >-
        Kredi dönemi. Sözleşme başlangıç günü (Europe/Istanbul) esas alınır;
        aylık sözleşmede her ay, yıllık sözleşmede her yıl aynı gün yeni dönem
        başlar. end hariçtir.
      properties:
        index:
          type: integer
          minimum: 0
          example: 0
        start:
          $ref: '#/components/schemas/UtcTimestamp'
        end:
          $ref: '#/components/schemas/UtcTimestamp'
    ValidationDetail:
      type: object
      required:
        - field
        - rule
      properties:
        field:
          type: string
          example: pageSize
        rule:
          type: string
          example: min:1,max:100
    UtcTimestamp:
      type: string
      format: date-time
      description: UTC ISO-8601 zamanı.
      example: '2026-09-08T20:00:00.000Z'
    ApiWarning:
      type: object
      required:
        - code
        - message
      properties:
        code:
          type: string
          enum:
            - TODAY_BALANCE_SNAPSHOT_FALLBACK
            - BALANCE_HISTORY_MISSING
            - BALANCE_HISTORY_PARTIAL
            - BALANCE_CURRENCY_MISMATCH
            - BALANCE_VALUE_UNKNOWN
            - BALANCE_VALUE_STALE
            - INVALID_ACCOUNT_CURRENCY
        message:
          type: string
        date:
          type: string
          format: date
          example: '2026-09-07'
        accountCount:
          type: integer
          minimum: 0
  responses:
    BadRequest:
      description: İstek doğrulama hatası
      headers:
        x-request-id:
          $ref: '#/components/headers/RequestId'
        Cache-Control:
          $ref: '#/components/headers/NoStore'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorEnvelope'
          example:
            success: false
            error:
              code: VALIDATION_FAILED
              message: pageSize 1-100 araliginda olmalidir.
              details:
                - field: pageSize
                  rule: min:1,max:100
            traceId: 9cc0d3d1-1e63-4c90-b08f-90b6332e70ca
    Unauthorized:
      description: HTTP Basic credential yok, geçersiz, iptal edilmiş veya süresi geçmiş
      headers:
        x-request-id:
          $ref: '#/components/headers/RequestId'
        Cache-Control:
          $ref: '#/components/headers/NoStore'
        WWW-Authenticate:
          $ref: '#/components/headers/WwwAuthenticate'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorEnvelope'
    Forbidden:
      description: >-
        Anahtarın firması veya entegratör sözleşmesi uygun değil, zorunlu
        ürün/uç yetkisi yok, uç bu anahtar türüne kapalı, kredi kotası dolu veya
        IP kısıtı bağlantının güvenilir istemci IP'siyle eşleşmiyor
      headers:
        x-request-id:
          $ref: '#/components/headers/RequestId'
        Cache-Control:
          $ref: '#/components/headers/NoStore'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorEnvelope'
          example:
            success: false
            error:
              code: FORBIDDEN
              message: Bu islem icin yetkiniz bulunmuyor.
              details: []
            traceId: 9cc0d3d1-1e63-4c90-b08f-90b6332e70ca
    NotFound:
      description: Yetkili kapsamda kaynak bulunamadı
      headers:
        x-request-id:
          $ref: '#/components/headers/RequestId'
        Cache-Control:
          $ref: '#/components/headers/NoStore'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorEnvelope'
          example:
            success: false
            error:
              code: RESOURCE_NOT_FOUND
              message: Banka hareketi bulunamadi.
              details: []
            traceId: 9cc0d3d1-1e63-4c90-b08f-90b6332e70ca
    TooManyRequests:
      description: İstek limiti aşıldı
      headers:
        x-request-id:
          $ref: '#/components/headers/RequestId'
        Cache-Control:
          $ref: '#/components/headers/NoStore'
        Retry-After:
          $ref: '#/components/headers/RetryAfter'
        RateLimit:
          $ref: '#/components/headers/RateLimit'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorEnvelope'
          example:
            success: false
            error:
              code: RATE_LIMITED
              message: Istek limiti asildi. Daha sonra tekrar deneyin.
              details: []
            traceId: 9cc0d3d1-1e63-4c90-b08f-90b6332e70ca
    InternalError:
      description: Beklenmeyen sunucu hatası
      headers:
        x-request-id:
          $ref: '#/components/headers/RequestId'
        Cache-Control:
          $ref: '#/components/headers/NoStore'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorEnvelope'
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic
      description: >-
        Kullanıcı adı anahtar kimliği, parola secret key değeridir. Anahtar
        aktif olmalı, erişim bitiş tarihi geçmemiş olmalı ve BankaPro erişimine
        sahip olmalıdır. Firma anahtarında firma anahtardan sunucu tarafında
        belirlenir; istemciden firma kimliği alınmaz. Entegratör anahtarı
        firmayı yalnız /v1/companies/{companyId} adresinden alır ve yalnız kendi
        müşteri firmalarına erişir. Anahtarın IP kısıtı doluysa istek yalnız
        listedeki adreslerden kabul edilir. Kimlik bilgileri yalnız HTTPS
        üzerinden gönderilmelidir.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.