{
  "openapi": "3.0.1",
  "info": {
    "title": "Apix API",
    "description": "Modern ve Güvenli API Dokümantasyonu",
    "version": "v1"
  },
  "paths": {
    "/api/Auth/Login": {
      "get": {
        "tags": [
          "Auth"
        ],
        "summary": "Giriş Yap",
        "description": "Kullanıcı adı ve şifre ile JWT token alır.",
        "operationId": "Auth_Login",
        "parameters": [
          {
            "name": "Username",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Password",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AuthResponseServiceResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthResponseServiceResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/CoinMarket/GetGoldPrices": {
      "get": {
        "tags": [
          "CoinMarket"
        ],
        "summary": "Altın Fiyatları",
        "description": "Gerçek zamanlı altın fiyatlarını (Alış, Satış, Değişim, En Düşük, En Yüksek, Saat) çekerek döner.",
        "operationId": "CoinMarket_GetGoldPrices",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GoldPricesResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/CoinMarket/GetGrandBazaarGoldPrices": {
      "get": {
        "tags": [
          "CoinMarket"
        ],
        "summary": "Kapalıçarşı Altın Fiyatları",
        "description": "Kapalıçarşı gerçek zamanlı altın fiyatlarını (Alış, Satış, Değişim, En Düşük, En Yüksek, Kapanış, Saat) çekerek döner.",
        "operationId": "CoinMarket_GetGrandBazaarGoldPrices",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GoldPricesResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/CoinMarket/GetCommodityPrices": {
      "get": {
        "tags": [
          "CoinMarket"
        ],
        "summary": "Emtia Fiyatları",
        "description": "Gerçek zamanlı emtia fiyatlarını (Petrol, Doğalgaz, Bakır vb.) Alış, Satış, Değişim, En Düşük, En Yüksek ve Saat bilgileriyle döner.",
        "operationId": "CoinMarket_GetCommodityPrices",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommodityPricesResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/CoinMarket/GetStockMarketPrices": {
      "get": {
        "tags": [
          "CoinMarket"
        ],
        "summary": "Borsa Fiyatları",
        "description": "BIST hisse senetleri ve endeks verilerini (Alış, Satış, Değişim, En Düşük, En Yüksek, Saat) gerçek zamanlı olarak döner.",
        "operationId": "CoinMarket_GetStockMarketPrices",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StockMarketPricesResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/CoinMarket/GetCurrencyPrices": {
      "get": {
        "tags": [
          "CoinMarket"
        ],
        "summary": "Döviz Kurları",
        "description": "Serbest piyasa döviz kurlarını (Alış, Satış, Değişim, En Düşük, En Yüksek, Kapanış, Saat) çekerek döner.",
        "operationId": "CoinMarket_GetCurrencyPrices",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CurrencyPricesResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/CoinMarket/GetGrandBazaarCurrencyPrices": {
      "get": {
        "tags": [
          "CoinMarket"
        ],
        "summary": "Kapalıçarşı Döviz Kurları",
        "description": "Kapalıçarşı döviz kurlarını (Alış, Satış, Değişim, En Düşük, En Yüksek, Kapanış, Saat) çekerek döner.",
        "operationId": "CoinMarket_GetGrandBazaarCurrencyPrices",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CurrencyPricesResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/CryptoCoin/GetTopMarketCap": {
      "get": {
        "tags": [
          "CryptoCoin"
        ],
        "summary": "Piyasadaki En İyi Kripto Paralar",
        "description": "Piyasa değerine göre en büyük 10 kripto parayı listeler.",
        "operationId": "CryptoCoin_GetTopMarketCap",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": "10"
          },
          {
            "name": "tsym",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "USD"
            },
            "example": "USD"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CoinDataItemListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/CryptoCoin/GetNews": {
      "get": {
        "tags": [
          "CryptoCoin"
        ],
        "summary": "Güncel Kripto Para Haberleri",
        "description": "En az 10 adet güncellenebilir sayıda kripto para haberini getirir.",
        "operationId": "CryptoCoin_GetNews",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": "10"
          },
          {
            "name": "lang",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "EN"
            },
            "example": "EN"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NewsItemListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/CryptoCoin/GetHistory": {
      "get": {
        "tags": [
          "CryptoCoin"
        ],
        "summary": "Geçmiş Fiyat Verileri (Grafik)",
        "description": "Bir kripto para için son 30 günlük günlük kapanış fiyatlarını döndürür.",
        "operationId": "CryptoCoin_GetHistory",
        "parameters": [
          {
            "name": "fsym",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "BTC"
          },
          {
            "name": "tsym",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "USD"
            },
            "example": "USD"
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 30
            },
            "example": "30"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HistoryDataItemListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/CryptoCoin/GetSocialStats": {
      "get": {
        "tags": [
          "CryptoCoin"
        ],
        "summary": "Kripto Para Sosyal Verileri",
        "description": "Kripto paranın Reddit, Twitter ve Github verilerini döndürür.",
        "operationId": "CryptoCoin_GetSocialStats",
        "parameters": [
          {
            "name": "coinId",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "1182"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SocialDataServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/CryptoCoin/GetTradingSignals": {
      "get": {
        "tags": [
          "CryptoCoin"
        ],
        "summary": "Kripto Para Al-Sat Sinyalleri",
        "description": "Kripto paranın güncel duygu (sentiment) analizini içeren sinyalleri döner.",
        "operationId": "CryptoCoin_GetTradingSignals",
        "parameters": [
          {
            "name": "fsym",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "BTC"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SentimentDataServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/CryptoCoin/GetFearAndGreedIndex": {
      "get": {
        "tags": [
          "CryptoCoin"
        ],
        "summary": "Korku ve Açgözlülük Endeksi",
        "description": "Piyasa duyarlılığını gösteren güncel Korku ve Açgözlülük endeksini döner.",
        "operationId": "CryptoCoin_GetFearAndGreedIndex",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FngDataItemServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Currency/GetTcmbCurrencies": {
      "get": {
        "tags": [
          "Currency"
        ],
        "summary": "TCMB Kurlarını Listele",
        "description": "TCMB üzerinden bugünkü veya belirtilen tarihli döviz kurlarını getirir.",
        "operationId": "Currency_GetTcmbCurrencies",
        "parameters": [
          {
            "name": "date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "27.03.2024"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CurrencyDtoListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Currency/ConvertTcmb": {
      "get": {
        "tags": [
          "Currency"
        ],
        "summary": "TCMB Kur Dönüşümü",
        "description": "TCMB kurlarını kullanarak belirtilen tutarı bir para biriminden diğerine çevirir.",
        "operationId": "Currency_ConvertTcmb",
        "parameters": [
          {
            "name": "amount",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            },
            "example": "100"
          },
          {
            "name": "from",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "USD"
            },
            "example": "USD"
          },
          {
            "name": "to",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "TRY"
            },
            "example": "TRY"
          },
          {
            "name": "date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "27.03.2024"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CurrencyConvertResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Currency/GetIsBankRates": {
      "get": {
        "tags": [
          "Currency"
        ],
        "summary": "İş Bankası Kurlarını Listele",
        "description": "İş Bankası üzerinden gişe (IS), merkez (MB) veya dijital (IB) döviz kurlarını getirir.",
        "operationId": "Currency_GetIsBankRates",
        "parameters": [
          {
            "name": "date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "27.03.2024"
          },
          {
            "name": "fxRateType",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/FxRateType"
            },
            "example": "IB"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExchangeRateDtoListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Currency/GetIsBankRate": {
      "get": {
        "tags": [
          "Currency"
        ],
        "summary": "İş Bankası Tekil Kur",
        "description": "İş Bankası'ndan belirtilen döviz kodu (USD, EUR vb.) için güncel kur bilgisini getirir.",
        "operationId": "Currency_GetIsBankRate",
        "parameters": [
          {
            "name": "currencyCode",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "USD"
          },
          {
            "name": "date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "27.03.2024"
          },
          {
            "name": "fxRateType",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/FxRateType"
            },
            "example": "IB"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExchangeRateDtoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Currency/ConvertTryToForex": {
      "get": {
        "tags": [
          "Currency"
        ],
        "summary": "İş Bankası TL -> Döviz",
        "description": "İş Bankası kurları ile verilen TL tutarını belirtilen dövize çevirir.",
        "operationId": "Currency_ConvertTryToForex",
        "parameters": [
          {
            "name": "amount",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            },
            "example": "1000"
          },
          {
            "name": "targetCurrency",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "USD"
          },
          {
            "name": "date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "27.03.2024"
          },
          {
            "name": "fxRateType",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/FxRateType"
            },
            "example": "IB"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CurrencyConvertResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Currency/ConvertForexToTry": {
      "get": {
        "tags": [
          "Currency"
        ],
        "summary": "İş Bankası Döviz -> TL",
        "description": "İş Bankası kurları ile verilen döviz tutarını Türk Lirası'na (TRY) çevirir.",
        "operationId": "Currency_ConvertForexToTry",
        "parameters": [
          {
            "name": "amount",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            },
            "example": "100"
          },
          {
            "name": "sourceCurrency",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "EUR"
          },
          {
            "name": "date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "27.03.2024"
          },
          {
            "name": "fxRateType",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/FxRateType"
            },
            "example": "IB"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CurrencyConvertResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Currency/ConvertCurrency": {
      "get": {
        "tags": [
          "Currency"
        ],
        "summary": "İş Bankası Döviz -> Döviz",
        "description": "İş Bankası kurları ile kros kur (Dövizden Döviize) çevirisi yapar.",
        "operationId": "Currency_ConvertCurrency",
        "parameters": [
          {
            "name": "amount",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            },
            "example": "500"
          },
          {
            "name": "sourceCurrency",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "EUR"
          },
          {
            "name": "targetCurrency",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "USD"
          },
          {
            "name": "date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "27.03.2024"
          },
          {
            "name": "fxRateType",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/FxRateType"
            },
            "example": "IB"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CurrencyConvertResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Document/FromHtml": {
      "post": {
        "tags": [
          "Document"
        ],
        "summary": "HTML'den PDF Üret",
        "description": "Gönderilen ham HTML içeriğini (değişkensiz veya {{Key}} içeren) işleyerek PDF belgesi oluşturur.",
        "operationId": "Document_FromHtml",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PdfGenerateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PdfResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Document/FromTemplate": {
      "post": {
        "tags": [
          "Document"
        ],
        "summary": "Şablondan PDF Üret",
        "description": "Sunucu üzerindeki bir HTML dosyasını şablon olarak kullanarak PDF oluşturur.",
        "operationId": "Document_FromTemplate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PdfFileRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PdfResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Document/Download": {
      "post": {
        "tags": [
          "Document"
        ],
        "summary": "Dosya Olarak PDF İndir",
        "description": "HTML içeriğini işleyerek PDF üretir ve doğrudan indirilebilir dosya (byte array) olarak döner.",
        "operationId": "Document_Download",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PdfGenerateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "PDF Belgesi",
            "content": {
              "application/pdf": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              }
            }
          }
        }
      }
    },
    "/api/Document/DownloadExcel": {
      "post": {
        "tags": [
          "Document"
        ],
        "summary": "Excel Şablonu Doldur ve İndir",
        "description": "Sunucu üzerindeki bir Excel şablonunu (wwwroot/office içinde) verilerle doldurur ve indirilebilir olarak döner.",
        "operationId": "Document_DownloadExcel",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OfficeTemplateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Excel Dosyası",
            "content": {
              "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              }
            }
          }
        }
      }
    },
    "/api/Document/DownloadWord": {
      "post": {
        "tags": [
          "Document"
        ],
        "summary": "Word Şablonu Doldur ve İndir",
        "description": "Sunucu üzerindeki bir Word şablonunu (wwwroot/office içinde) verilerle doldurur ve indirilebilir olarak döner.",
        "operationId": "Document_DownloadWord",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OfficeTemplateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Word Belgesi",
            "content": {
              "application/vnd.openxmlformats-officedocument.wordprocessingml.document": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              }
            }
          }
        }
      }
    },
    "/api/Document/ImportExcel": {
      "post": {
        "tags": [
          "Document"
        ],
        "summary": "Excel'den Veri Oku (Import)",
        "description": "Yüklenen Excel dosyasındaki tüm verileri okuyarak JSON formatında bir liste olarak döner.",
        "operationId": "Document_ImportExcel",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary",
                    "example": "Excel dosyasını seçiniz"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary",
                    "example": "Excel dosyasını seçiniz"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringObjectIDictionaryListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Document/ImportExcelWithMapping": {
      "post": {
        "tags": [
          "Document"
        ],
        "summary": "Excel Eşleştirerek Oku (Mapping)",
        "description": "Excel verilerini başlık veya kolon harfi (A, B...) bazlı eşleştirme (mapping) yaparak okur.",
        "operationId": "Document_ImportExcelWithMapping",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "File": {
                    "type": "string",
                    "format": "binary",
                    "example": "Excel dosyasını seçiniz"
                  },
                  "MappingJson": {
                    "type": "string",
                    "example": "{\"A\": \"Ad\", \"Soyad\": \"Soyadı\"}"
                  }
                }
              },
              "encoding": {
                "File": {
                  "style": "form"
                },
                "MappingJson": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "File": {
                    "type": "string",
                    "format": "binary",
                    "example": "Excel dosyasını seçiniz"
                  },
                  "MappingJson": {
                    "type": "string",
                    "example": "{\"A\": \"Ad\", \"Soyad\": \"Soyadı\"}"
                  }
                }
              },
              "encoding": {
                "File": {
                  "style": "form"
                },
                "MappingJson": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringObjectIDictionaryListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Document/ExportExcel": {
      "post": {
        "tags": [
          "Document"
        ],
        "summary": "Excel Olarak Dışa Aktar (Export)",
        "description": "Dinamik bir veri listesini Excel dosyası olarak oluşturur ve indirmenizi sağlar.",
        "operationId": "Document_ExportExcel",
        "parameters": [
          {
            "name": "sheetName",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "Sheet1"
            },
            "example": "Liste1"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": { }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Excel Dosyası",
            "content": {
              "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              }
            }
          }
        }
      }
    },
    "/api/Validation/ValidateTurkishId": {
      "get": {
        "tags": [
          "Doğrulama Servisleri (Validation)"
        ],
        "summary": "TC Kimlik No Doğrula",
        "description": "Verilen 11 haneli Türkiye Cumhuriyeti Kimlik Numarasının (TCKN) doğruluğunu algoritma üzerinden kontrol eder.",
        "operationId": "Validation_ValidateTurkishId",
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "10000000146"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Validation/ValidateIban": {
      "get": {
        "tags": [
          "Doğrulama Servisleri (Validation)"
        ],
        "summary": "IBAN Doğrula",
        "description": "Verilen IBAN (International Bank Account Number) numarasının Mod 97 algoritmasına göre doğruluğunu kontrol eder.",
        "operationId": "Validation_ValidateIban",
        "parameters": [
          {
            "name": "iban",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "TR00 0000 0000 0000 0000 0000 00"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Validation/ValidateIpAddress": {
      "get": {
        "tags": [
          "Doğrulama Servisleri (Validation)"
        ],
        "summary": "IP Adresi Doğrula",
        "description": "Verilen IPv4 adresinin (örn: 127.0.0.1) geçerli bir formatta olup olmadığını kontrol eder.",
        "operationId": "Validation_ValidateIpAddress",
        "parameters": [
          {
            "name": "ipAddress",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "127.0.0.1"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Validation/ValidatePhoneNumber": {
      "get": {
        "tags": [
          "Doğrulama Servisleri (Validation)"
        ],
        "summary": "Telefon No Doğrula",
        "description": "Verilen telefon numarasının (örn: 05xx xxx xx xx) Türkiye formatına uygunluğunu kontrol eder.",
        "operationId": "Validation_ValidatePhoneNumber",
        "parameters": [
          {
            "name": "phoneNumber",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "05000000000"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Validation/ValidateEmail": {
      "get": {
        "tags": [
          "Doğrulama Servisleri (Validation)"
        ],
        "summary": "E-posta Doğrula",
        "description": "Verilen e-posta adresinin biçimsel olarak (Format) doğruluğunu kontrol eder.",
        "operationId": "Validation_ValidateEmail",
        "parameters": [
          {
            "name": "email",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "example@domain.com"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Validation/ValidateUrl": {
      "get": {
        "tags": [
          "Doğrulama Servisleri (Validation)"
        ],
        "summary": "URL Doğrula",
        "description": "Verilen internet adresinin (HTTP/HTTPS) geçerli bir URL olup olmadığını kontrol eder.",
        "operationId": "Validation_ValidateUrl",
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "https://www.google.com"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Validation/ValidateCreditCard": {
      "get": {
        "tags": [
          "Doğrulama Servisleri (Validation)"
        ],
        "summary": "Kredi Kartı Doğrula",
        "description": "Verilen kredi kartı numarasının Luhn algoritmasına göre geçerliliğini kontrol eder.",
        "operationId": "Validation_ValidateCreditCard",
        "parameters": [
          {
            "name": "cardNumber",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "4532 0000 0000 0000"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Validation/ValidateSsn": {
      "get": {
        "tags": [
          "Doğrulama Servisleri (Validation)"
        ],
        "summary": "SSN Doğrula",
        "description": "Verilen sosyal güvenlik numarasının (ABD Sosyal Güvenlik - SSN) doğruluğunu kontrol eder.",
        "operationId": "Validation_ValidateSsn",
        "parameters": [
          {
            "name": "ssn",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "000-00-0000"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/ElevenLabs/GetVoices": {
      "get": {
        "tags": [
          "ElevenLabs"
        ],
        "summary": "Sesleri Listele",
        "description": "ElevenLabs üzerindeki kullanılabilir tüm sesleri listeler.",
        "operationId": "ElevenLabs_GetVoices",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ElevenLabsVoiceListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/ElevenLabs/Speak": {
      "post": {
        "tags": [
          "ElevenLabs"
        ],
        "summary": "Sesi Oluştur (MP3)",
        "description": "Metni sese dönüştürür ve MP3 dosyası olarak döner.",
        "operationId": "ElevenLabs_Speak",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ElevenLabsSpeakRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "MP3 Ses Dosyası",
            "content": {
              "audio/mpeg": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              }
            }
          }
        }
      }
    },
    "/api/ElevenLabs/SpeakStream": {
      "post": {
        "tags": [
          "ElevenLabs"
        ],
        "summary": "Sesi Akıt (Stream)",
        "description": "Metni sese dönüştürür ve ses akışı (stream) modunda döner.",
        "operationId": "ElevenLabs_SpeakStream",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ElevenLabsSpeakRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/Email/SendEmail": {
      "post": {
        "tags": [
          "Email"
        ],
        "summary": "E-posta Gönderimi",
        "description": "Dışarıdan sağlanan SMTP bilgileri ve içerikler ile e-posta gönderimi yapar.",
        "operationId": "Email_SendEmail",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmailRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmailResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Gemini/GenerateImage": {
      "post": {
        "tags": [
          "Gemini"
        ],
        "summary": "Görsel Üret",
        "description": "Metin girdisi veya mevcut görsel dosyası kullanarak yeni bir görsel üretir. Sonuçta Base64 döner.",
        "operationId": "Gemini_GenerateImage",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "Model": {
                    "type": "string",
                    "example": "gemini-3.1-flash-image-preview"
                  },
                  "Prompt": {
                    "type": "string",
                    "example": "Pastel tonlarda, sinematik ışıkla, yağmurlu bir İstanbul sokağında duran turuncu bir kedi üret."
                  },
                  "AspectRatio": {
                    "type": "string",
                    "example": "1:1"
                  },
                  "File": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "Model": {
                  "style": "form"
                },
                "Prompt": {
                  "style": "form"
                },
                "AspectRatio": {
                  "style": "form"
                },
                "File": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "Model": {
                    "type": "string",
                    "example": "gemini-3.1-flash-image-preview"
                  },
                  "Prompt": {
                    "type": "string",
                    "example": "Pastel tonlarda, sinematik ışıkla, yağmurlu bir İstanbul sokağında duran turuncu bir kedi üret."
                  },
                  "AspectRatio": {
                    "type": "string",
                    "example": "1:1"
                  },
                  "File": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "Model": {
                  "style": "form"
                },
                "Prompt": {
                  "style": "form"
                },
                "AspectRatio": {
                  "style": "form"
                },
                "File": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GeminiImageResponseDtoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Gemini/GenerateVideo": {
      "post": {
        "tags": [
          "Gemini"
        ],
        "summary": "Video Üret",
        "description": "Veo modellerini kullanarak video üretir ve bittiğinde (URI + Base64) döner.",
        "operationId": "Gemini_GenerateVideo",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "Model": {
                    "type": "string",
                    "example": "veo-3.1-generate-preview"
                  },
                  "Prompt": {
                    "type": "string",
                    "example": "Yağmurlu bir gecede neon ışıklı İstanbul sokağında yürüyen bir kedi."
                  },
                  "AspectRatio": {
                    "type": "string",
                    "example": "16:9"
                  },
                  "Resolution": {
                    "type": "string",
                    "example": "720p"
                  },
                  "DurationSeconds": {
                    "type": "integer",
                    "format": "int32",
                    "example": "4"
                  }
                }
              },
              "encoding": {
                "Model": {
                  "style": "form"
                },
                "Prompt": {
                  "style": "form"
                },
                "AspectRatio": {
                  "style": "form"
                },
                "Resolution": {
                  "style": "form"
                },
                "DurationSeconds": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "Model": {
                    "type": "string",
                    "example": "veo-3.1-generate-preview"
                  },
                  "Prompt": {
                    "type": "string",
                    "example": "Yağmurlu bir gecede neon ışıklı İstanbul sokağında yürüyen bir kedi."
                  },
                  "AspectRatio": {
                    "type": "string",
                    "example": "16:9"
                  },
                  "Resolution": {
                    "type": "string",
                    "example": "720p"
                  },
                  "DurationSeconds": {
                    "type": "integer",
                    "format": "int32",
                    "example": "4"
                  }
                }
              },
              "encoding": {
                "Model": {
                  "style": "form"
                },
                "Prompt": {
                  "style": "form"
                },
                "AspectRatio": {
                  "style": "form"
                },
                "Resolution": {
                  "style": "form"
                },
                "DurationSeconds": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GeminiVideoResponseDtoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Gemini/GetListVideos": {
      "get": {
        "tags": [
          "Gemini"
        ],
        "summary": "Geçmiş Videolar",
        "description": "Daha önce üretilen ve Google tarafında saklanan tüm videoları listeler.",
        "operationId": "Gemini_GetListVideos",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GeminiVideoListResponseDtoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Gemini/DownloadVideo": {
      "get": {
        "tags": [
          "Gemini"
        ],
        "summary": "Görsel/Video İndir (Proxy)",
        "description": "API anahtarını gizleyerek medyayı sunucu üzerinden indirir.",
        "operationId": "Gemini_DownloadVideo",
        "parameters": [
          {
            "name": "fileId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Medya Dosyası",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              }
            }
          }
        }
      }
    },
    "/api/Gemini/VideoOperationStatus": {
      "get": {
        "tags": [
          "Gemini"
        ],
        "summary": "Video Operasyon Durumu",
        "description": "Video üretim operasyonunun durumunu sorgular. Operasyon bittiyse sonuç döner.",
        "operationId": "Gemini_VideoOperationStatus",
        "parameters": [
          {
            "name": "operationName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GeminiVideoResponseDtoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Gemini/Chat": {
      "post": {
        "tags": [
          "Gemini"
        ],
        "summary": "Gemini Sohbet",
        "description": "Yapay zeka ile sohbet eder. Dosya gönderilirse analiz edip sonuç üzerine sohbeti devam ettirir.",
        "operationId": "Gemini_Chat",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "prompt": {
                    "type": "string"
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "sessionId": {
                    "type": "string",
                    "default": "default"
                  },
                  "model": {
                    "type": "string",
                    "default": "gemini-2.5-flash",
                    "example": "gemini-2.5-flash"
                  },
                  "systemPrompt": {
                    "type": "string"
                  }
                }
              },
              "encoding": {
                "prompt": {
                  "style": "form"
                },
                "file": {
                  "style": "form"
                },
                "sessionId": {
                  "style": "form"
                },
                "model": {
                  "style": "form"
                },
                "systemPrompt": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "prompt": {
                    "type": "string"
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "sessionId": {
                    "type": "string",
                    "default": "default"
                  },
                  "model": {
                    "type": "string",
                    "default": "gemini-2.5-flash",
                    "example": "gemini-2.5-flash"
                  },
                  "systemPrompt": {
                    "type": "string"
                  }
                }
              },
              "encoding": {
                "prompt": {
                  "style": "form"
                },
                "file": {
                  "style": "form"
                },
                "sessionId": {
                  "style": "form"
                },
                "model": {
                  "style": "form"
                },
                "systemPrompt": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Gemini/StreamChat": {
      "post": {
        "tags": [
          "Gemini"
        ],
        "summary": "Chat (Streaming)",
        "description": "Gerçek zamanlı akış (Streaming) modunda AI sohbeti başlatır.",
        "operationId": "Gemini_StreamChat",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "prompt": {
                    "type": "string"
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "sessionId": {
                    "type": "string",
                    "default": "default"
                  },
                  "model": {
                    "type": "string",
                    "default": "gemini-2.5-flash",
                    "example": "gemini-2.5-flash"
                  },
                  "systemPrompt": {
                    "type": "string"
                  }
                }
              },
              "encoding": {
                "prompt": {
                  "style": "form"
                },
                "file": {
                  "style": "form"
                },
                "sessionId": {
                  "style": "form"
                },
                "model": {
                  "style": "form"
                },
                "systemPrompt": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "prompt": {
                    "type": "string"
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "sessionId": {
                    "type": "string",
                    "default": "default"
                  },
                  "model": {
                    "type": "string",
                    "default": "gemini-2.5-flash",
                    "example": "gemini-2.5-flash"
                  },
                  "systemPrompt": {
                    "type": "string"
                  }
                }
              },
              "encoding": {
                "prompt": {
                  "style": "form"
                },
                "file": {
                  "style": "form"
                },
                "sessionId": {
                  "style": "form"
                },
                "model": {
                  "style": "form"
                },
                "systemPrompt": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/Gemini/ClearHistory/ClearHistory": {
      "delete": {
        "tags": [
          "Gemini"
        ],
        "summary": "Geçmişi Temizle",
        "description": "Belirli bir oturuma ait tüm konuşma geçmişini siler.",
        "operationId": "Gemini_ClearHistory",
        "parameters": [
          {
            "name": "sessionId",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "default"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/Github/GetRepositories": {
      "get": {
        "tags": [
          "Github"
        ],
        "summary": "Kullanıcı Repolarını Getir",
        "description": "Belirtilen veya varsayılan kullanıcının açık kaynak depolarını listeler.",
        "operationId": "Github_GetRepositories",
        "parameters": [
          {
            "name": "username",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "velifiliz"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GithubRepoListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Github/GetCommits": {
      "get": {
        "tags": [
          "Github"
        ],
        "summary": "Commitleri Getir",
        "description": "Belirli bir deponun commit geçmişini listeler.",
        "operationId": "Github_GetCommits",
        "parameters": [
          {
            "name": "owner",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "velifiliz"
          },
          {
            "name": "repo",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "DevB2b"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GithubCommitListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Github/GetBranches": {
      "get": {
        "tags": [
          "Github"
        ],
        "summary": "Branchleri Getir",
        "description": "Belirli bir deponun branch listesini döner.",
        "operationId": "Github_GetBranches",
        "parameters": [
          {
            "name": "owner",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "velifiliz"
          },
          {
            "name": "repo",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "DevB2b"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GithubBranchListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Github/GetPullRequests": {
      "get": {
        "tags": [
          "Github"
        ],
        "summary": "Pull Requestleri Getir",
        "description": "Belirli bir deponun PR listesini (açık/kapalı) döner.",
        "operationId": "Github_GetPullRequests",
        "parameters": [
          {
            "name": "owner",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "velifiliz"
          },
          {
            "name": "repo",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "DevB2b"
          },
          {
            "name": "state",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "all"
            },
            "example": "all"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GithubPullRequestListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Github/CreateIssue": {
      "post": {
        "tags": [
          "Github"
        ],
        "summary": "Issue Oluştur",
        "description": "Belirtilen depoda yeni bir issue açar.",
        "operationId": "Github_CreateIssue",
        "parameters": [
          {
            "name": "owner",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "velifiliz"
          },
          {
            "name": "repo",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "DevB2b"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GithubIssueRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Github/AddComment": {
      "post": {
        "tags": [
          "Github"
        ],
        "summary": "Yorum Ekle",
        "description": "Belirli bir issue numarasına yorum ekler.",
        "operationId": "Github_AddComment",
        "parameters": [
          {
            "name": "owner",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "velifiliz"
          },
          {
            "name": "repo",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "DevB2b"
          },
          {
            "name": "issueNumber",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "example": "7"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GithubCommentRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Github/UpsertFile": {
      "put": {
        "tags": [
          "Github"
        ],
        "summary": "Dosya Oluştur veya Güncelle",
        "description": "Depo içerisinde belirtilen yola dosya ekler veya mevcut dosyayı günceller.",
        "operationId": "Github_UpsertFile",
        "parameters": [
          {
            "name": "owner",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "velifiliz"
          },
          {
            "name": "repo",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "DevB2b"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GithubFileRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Github/Search": {
      "get": {
        "tags": [
          "Github"
        ],
        "summary": "Repo Ara",
        "description": "GitHub genelinde belirtilen anahtar kelimeye göre depo araması yapar.",
        "operationId": "Github_Search",
        "parameters": [
          {
            "name": "query",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "dotnet core"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GithubSearchResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Google/VerifyToken": {
      "get": {
        "tags": [
          "Google"
        ],
        "summary": "ID Token Doğrula",
        "description": "Google tarafından verilen ID Token'ı (JWT) doğrular ve içerisindeki hak (claim) bilgilerini döner.",
        "operationId": "Google_VerifyToken",
        "parameters": [
          {
            "name": "idToken",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "google_id_token"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GoogleTokenInfoDtoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Google/GetAuthInfo": {
      "get": {
        "tags": [
          "Google"
        ],
        "summary": "Access Token Bilgisi",
        "description": "Access Token kullanarak hem token geçerliliğini kontrol eder hem de kullanıcı profil bilgilerini getirir.",
        "operationId": "Google_GetAuthInfo",
        "parameters": [
          {
            "name": "accessToken",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "google_access_token"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GoogleFullAuthInfoDtoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Google/GetCalendarUrl": {
      "post": {
        "tags": [
          "Google"
        ],
        "summary": "Takvim Kayıt URL Üret",
        "description": "Google Takvim'e etkinlik eklemek için gerekli şablon URL'sini üretir.",
        "operationId": "Google_GetCalendarUrl",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GoogleUrlRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Google/GetMapsSearchUrl": {
      "get": {
        "tags": [
          "Google"
        ],
        "summary": "Harita Arama URL Üret",
        "description": "Belirtilen sorgu için Google Haritalar arama URL'sini üretir.",
        "operationId": "Google_GetMapsSearchUrl",
        "parameters": [
          {
            "name": "query",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "İstanbul Boğazı"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Google/GetMapsDirectionUrl": {
      "get": {
        "tags": [
          "Google"
        ],
        "summary": "Harita Rota URL Üret",
        "description": "Başlangıç ve varış noktası için Google Haritalar yönlendirme URL'sini hazırlar.",
        "operationId": "Google_GetMapsDirectionUrl",
        "parameters": [
          {
            "name": "destination",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "Ankara"
          },
          {
            "name": "origin",
            "in": "query",
            "schema": {
              "type": "string",
              "default": ""
            },
            "example": "İstanbul"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Google/GetGmailUrl": {
      "post": {
        "tags": [
          "Google"
        ],
        "summary": "Gmail Taslak URL Üret",
        "description": "Belirtilen alıcı, konu ve mesaj ile Gmail taslak oluşturma URL'si hazırlar.",
        "operationId": "Google_GetGmailUrl",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GmailComposeRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Google/GetNews": {
      "get": {
        "tags": [
          "Google"
        ],
        "summary": "Google Haberler RSS Takibi",
        "description": "Verilen anahtar kelime (keyword) üzerinden haberleri çeker, temizler ve JSON formatında döner.",
        "operationId": "Google_GetNews",
        "parameters": [
          {
            "name": "keyword",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "yazilim+turkiye"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GoogleNewsModelListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/GoogleAudio/TextToSpeech": {
      "post": {
        "tags": [
          "GoogleAudio"
        ],
        "summary": "Metinden Sese (TTS)",
        "description": "Verilen metni Google Cloud TTS kullanarak ses dosyasına (base64) dönüştürür.",
        "operationId": "GoogleAudio_TextToSpeech",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TtsRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TtsResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/GoogleAudio/SpeechToText": {
      "post": {
        "tags": [
          "GoogleAudio"
        ],
        "summary": "Sesten Metne (STT)",
        "description": "Base64 formatında gönderilen ses dosyasını Google Cloud Speech-to-Text kullanarak metne dönüştürür.",
        "operationId": "GoogleAudio_SpeechToText",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SttRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SttResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Instagram/Status": {
      "get": {
        "tags": [
          "Instagram"
        ],
        "summary": "Durum Kontrolü",
        "description": "Instagram API servisinin mevcut durumunu ve bağlantı bilgisini döner.",
        "operationId": "Instagram_Status",
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/Instagram/GetMessages": {
      "get": {
        "tags": [
          "Instagram"
        ],
        "summary": "Mesajları Getir",
        "description": "Gelen kutusundaki son mesajları listeler.",
        "operationId": "Instagram_GetMessages",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 20
            }
          },
          {
            "name": "offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/Instagram/GetMessagesByUsername/{username}": {
      "get": {
        "tags": [
          "Instagram"
        ],
        "summary": "Kullanıcı Mesajlarını Getir",
        "description": "Belirli bir kullanıcıya ait mesaj geçmişini listeler.",
        "operationId": "Instagram_GetMessagesByUsername",
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 20
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/Instagram/SendMessage": {
      "post": {
        "tags": [
          "Instagram"
        ],
        "summary": "Mesaj Gönder",
        "description": "Belirtilen kullanıcıya metin mesajı gönderir.",
        "operationId": "Instagram_SendMessage",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InstagramSendMessageRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/Instagram/SendFile": {
      "post": {
        "tags": [
          "Instagram"
        ],
        "summary": "Dosya Gönder",
        "description": "Belirtilen kullanıcıya fotoğraf veya dosya gönderir (multipart/form-data).",
        "operationId": "Instagram_SendFile",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "To": {
                    "type": "string"
                  },
                  "Message": {
                    "type": "string"
                  },
                  "File": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "To": {
                  "style": "form"
                },
                "Message": {
                  "style": "form"
                },
                "File": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "To": {
                    "type": "string"
                  },
                  "Message": {
                    "type": "string"
                  },
                  "File": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "To": {
                  "style": "form"
                },
                "Message": {
                  "style": "form"
                },
                "File": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/Instagram/SendBulk": {
      "post": {
        "tags": [
          "Instagram"
        ],
        "summary": "Toplu Mesaj Gönder",
        "description": "Birden fazla kullanıcıya aynı metin mesajını gönderir.",
        "operationId": "Instagram_SendBulk",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InstagramBulkMessageRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/Instagram/PostPhoto": {
      "post": {
        "tags": [
          "Instagram"
        ],
        "summary": "Fotoğraf Paylaş",
        "description": "Profilde yeni bir fotoğraf postu paylaşır.",
        "operationId": "Instagram_PostPhoto",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "ImagePath": {
                    "type": "string"
                  },
                  "ImageBase64": {
                    "type": "string"
                  },
                  "Caption": {
                    "type": "string"
                  },
                  "File": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "ImagePath": {
                  "style": "form"
                },
                "ImageBase64": {
                  "style": "form"
                },
                "Caption": {
                  "style": "form"
                },
                "File": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ImagePath": {
                    "type": "string"
                  },
                  "ImageBase64": {
                    "type": "string"
                  },
                  "Caption": {
                    "type": "string"
                  },
                  "File": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "ImagePath": {
                  "style": "form"
                },
                "ImageBase64": {
                  "style": "form"
                },
                "Caption": {
                  "style": "form"
                },
                "File": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/Instagram/PostStory": {
      "post": {
        "tags": [
          "Instagram"
        ],
        "summary": "Hikaye Paylaş",
        "description": "Instagram hikayelerinde (Story) fotoğraf veya video paylaşır.",
        "operationId": "Instagram_PostStory",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "ImagePath": {
                    "type": "string"
                  },
                  "ImageBase64": {
                    "type": "string"
                  },
                  "IsVideo": {
                    "type": "boolean"
                  },
                  "File": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "ImagePath": {
                  "style": "form"
                },
                "ImageBase64": {
                  "style": "form"
                },
                "IsVideo": {
                  "style": "form"
                },
                "File": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ImagePath": {
                    "type": "string"
                  },
                  "ImageBase64": {
                    "type": "string"
                  },
                  "IsVideo": {
                    "type": "boolean"
                  },
                  "File": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "ImagePath": {
                  "style": "form"
                },
                "ImageBase64": {
                  "style": "form"
                },
                "IsVideo": {
                  "style": "form"
                },
                "File": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/Media/ZipFiles": {
      "post": {
        "tags": [
          "Media"
        ],
        "summary": "Dosyaları ZIP'le",
        "description": "Birden fazla dosyayı sunucu üzerinde geçici bir ZIP arşivine paketler.",
        "operationId": "Media_ZipFiles",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "files": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "format": "binary"
                    }
                  }
                }
              },
              "encoding": {
                "files": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "files": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "format": "binary"
                    }
                  }
                }
              },
              "encoding": {
                "files": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Media/Upload": {
      "post": {
        "tags": [
          "Media"
        ],
        "summary": "Dosya Yükle",
        "description": "Fiziksel bir dosyayı sunucu üzerindeki depolama klasörüne kaydeder.",
        "operationId": "Media_Upload",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "folder": {
                    "type": "string",
                    "default": "files"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                },
                "folder": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "folder": {
                    "type": "string",
                    "default": "files"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                },
                "folder": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Media/FromBase64": {
      "post": {
        "tags": [
          "Media"
        ],
        "summary": "Base64 Dosya Kaydet",
        "description": "Base64 formatındaki veriyi dosyaya dönüştürüp sunucuya kaydeder.",
        "operationId": "Media_FromBase64",
        "parameters": [
          {
            "name": "path",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "files"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "string"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Media/Watermark": {
      "post": {
        "tags": [
          "Media"
        ],
        "summary": "Resme Damga Ekle",
        "description": "Resme metin filigranı ekler ve isteğe bağlı olarak boyutunu ölçeklendirir.",
        "operationId": "Media_Watermark",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "File": {
                    "type": "string",
                    "format": "binary"
                  },
                  "WatermarkText": {
                    "type": "string"
                  },
                  "Scale": {
                    "type": "number",
                    "format": "double"
                  }
                }
              },
              "encoding": {
                "File": {
                  "style": "form"
                },
                "WatermarkText": {
                  "style": "form"
                },
                "Scale": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "File": {
                    "type": "string",
                    "format": "binary"
                  },
                  "WatermarkText": {
                    "type": "string"
                  },
                  "Scale": {
                    "type": "number",
                    "format": "double"
                  }
                }
              },
              "encoding": {
                "File": {
                  "style": "form"
                },
                "WatermarkText": {
                  "style": "form"
                },
                "Scale": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Media/FileToBase64": {
      "post": {
        "tags": [
          "Media"
        ],
        "summary": "Dosyayı Base64'e Çevir",
        "description": "Gönderilen herhangi bir dosyayı MIME tipi dahil standart Base64 formatına dönüştürür.",
        "operationId": "Media_FileToBase64",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Media/CaptureFrame": {
      "post": {
        "tags": [
          "Media"
        ],
        "summary": "Video Karesi Yakala",
        "description": "Videonun belirli bir saniyesinden (varsayılan 1. sn) bir kare yakalayıp resim olarak döner.",
        "operationId": "Media_CaptureFrame",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "video": {
                    "type": "string",
                    "format": "binary"
                  },
                  "timestamp": {
                    "type": "string",
                    "default": "00:00:01",
                    "example": "00:00:01"
                  }
                }
              },
              "encoding": {
                "video": {
                  "style": "form"
                },
                "timestamp": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "video": {
                    "type": "string",
                    "format": "binary"
                  },
                  "timestamp": {
                    "type": "string",
                    "default": "00:00:01",
                    "example": "00:00:01"
                  }
                }
              },
              "encoding": {
                "video": {
                  "style": "form"
                },
                "timestamp": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Media/VideoInfo": {
      "post": {
        "tags": [
          "Media"
        ],
        "summary": "Video Bilgisi Al",
        "description": "Videonun çözünürlük, süre, fps ve bitrate gibi teknik verilerini analiz eder.",
        "operationId": "Media_VideoInfo",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "video": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "video": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "video": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "video": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VideoStreamInfoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Ollama/Chat": {
      "post": {
        "tags": [
          "Ollama"
        ],
        "summary": "AI Sohbet",
        "description": "Yapay zeka ile sohbet eder. PDF veya Görsel gönderilirse analiz edip sonuç üzerine sohbeti devam ettirir.",
        "operationId": "Ollama_Chat",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "prompt": {
                    "type": "string",
                    "example": "Bir mesaj yazın..."
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "sessionId": {
                    "type": "string",
                    "default": "default",
                    "example": "default"
                  },
                  "model": {
                    "type": "string",
                    "example": "gpt-oss:20b-cloud"
                  },
                  "systemPrompt": {
                    "type": "string",
                    "example": "Opsiyonel sistem talimatı"
                  }
                }
              },
              "encoding": {
                "prompt": {
                  "style": "form"
                },
                "file": {
                  "style": "form"
                },
                "sessionId": {
                  "style": "form"
                },
                "model": {
                  "style": "form"
                },
                "systemPrompt": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "prompt": {
                    "type": "string",
                    "example": "Bir mesaj yazın..."
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "sessionId": {
                    "type": "string",
                    "default": "default",
                    "example": "default"
                  },
                  "model": {
                    "type": "string",
                    "example": "gpt-oss:20b-cloud"
                  },
                  "systemPrompt": {
                    "type": "string",
                    "example": "Opsiyonel sistem talimatı"
                  }
                }
              },
              "encoding": {
                "prompt": {
                  "style": "form"
                },
                "file": {
                  "style": "form"
                },
                "sessionId": {
                  "style": "form"
                },
                "model": {
                  "style": "form"
                },
                "systemPrompt": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Ollama/Stream": {
      "post": {
        "tags": [
          "Ollama"
        ],
        "summary": "AI Stream Sohbet",
        "description": "Gerçek zamanlı akış (Streaming) modunda AI sohbeti başlatır.",
        "operationId": "Ollama_Stream",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "prompt": {
                    "type": "string",
                    "example": "Bir mesaj yazın..."
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "sessionId": {
                    "type": "string",
                    "default": "default",
                    "example": "default"
                  },
                  "model": {
                    "type": "string",
                    "example": "gpt-oss:20b-cloud"
                  },
                  "systemPrompt": {
                    "type": "string",
                    "example": "Opsiyonel sistem talimatı"
                  }
                }
              },
              "encoding": {
                "prompt": {
                  "style": "form"
                },
                "file": {
                  "style": "form"
                },
                "sessionId": {
                  "style": "form"
                },
                "model": {
                  "style": "form"
                },
                "systemPrompt": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "prompt": {
                    "type": "string",
                    "example": "Bir mesaj yazın..."
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "sessionId": {
                    "type": "string",
                    "default": "default",
                    "example": "default"
                  },
                  "model": {
                    "type": "string",
                    "example": "gpt-oss:20b-cloud"
                  },
                  "systemPrompt": {
                    "type": "string",
                    "example": "Opsiyonel sistem talimatı"
                  }
                }
              },
              "encoding": {
                "prompt": {
                  "style": "form"
                },
                "file": {
                  "style": "form"
                },
                "sessionId": {
                  "style": "form"
                },
                "model": {
                  "style": "form"
                },
                "systemPrompt": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/Ollama/ClearHistory": {
      "delete": {
        "tags": [
          "Ollama"
        ],
        "summary": "Geçmişi Temizle",
        "description": "Belirli bir oturuma ait tüm konuşma geçmişini siler.",
        "operationId": "Ollama_ClearHistory",
        "parameters": [
          {
            "name": "sessionId",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "default"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/OneSignal/SendPush": {
      "post": {
        "tags": [
          "OneSignal"
        ],
        "summary": "OneSignal Bildirim Gönder",
        "description": "Oyunculara veya segmentlere (All, Subscribed Users) anlık bildirim gönderir.",
        "operationId": "OneSignal_SendPush",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendPushRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OneSignalNotificationResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Places/Search": {
      "post": {
        "tags": [
          "Places"
        ],
        "summary": "Mekan Ara",
        "description": "Belirli bir şehir veya ilçede ticari işletme/mekan araması yapar.",
        "operationId": "Places_Search",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PlacesSearchRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlacesSearchResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Places/Details/{placeId}": {
      "get": {
        "tags": [
          "Places"
        ],
        "summary": "Mekan Detayları",
        "description": "ID bilgisi verilen mekanın detaylı iletişim ve adres bilgilerini getirir.",
        "operationId": "Places_Details",
        "parameters": [
          {
            "name": "placeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlaceDetailsResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Profile/Me": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "Profil Bilgilerim",
        "description": "Geçerli JWT token üzerinden kullanıcının kendi profil verilerini döner.",
        "operationId": "Profile_Me",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProfileResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Profile/Update": {
      "post": {
        "tags": [
          "Profile"
        ],
        "summary": "Profili Güncelle",
        "description": "Kullanıcının ad, biyografi ve yaş bilgilerini validasyon kontrolü ile günceller.",
        "operationId": "Profile_Update",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateProfileRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Profile/AdminOnly": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "Admin Verisi",
        "description": "Sadece 'Admin' yetkisine sahip kullanıcılar için özel istatistiksel veri.",
        "operationId": "Profile_AdminOnly",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdminDataResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Province/GetProvinces/Provinces": {
      "get": {
        "tags": [
          "Province"
        ],
        "summary": "İlleri Listele",
        "description": "Türkiye'deki tüm illerin temel bilgilerini döner.",
        "operationId": "Province_GetProvinces",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProvinceListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Province/GetDistricts/Districts": {
      "get": {
        "tags": [
          "Province"
        ],
        "summary": "İlçeleri Listele",
        "description": "Verilen il koduna ait tüm ilçeleri getirir.",
        "operationId": "Province_GetDistricts",
        "parameters": [
          {
            "name": "provinceId",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DistrictListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Province/GetNeighborhoodsByDistrict/Neighborhoods/ByDistrict": {
      "get": {
        "tags": [
          "Province"
        ],
        "summary": "Mahalleleri Listele (İlçe)",
        "description": "Belirli bir ilçeye ait tüm mahalleleri getirir.",
        "operationId": "Province_GetNeighborhoodsByDistrict",
        "parameters": [
          {
            "name": "districtId",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NeighborhoodListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Province/GetNeighborhoodsByProvince/Neighborhoods/ByProvince": {
      "get": {
        "tags": [
          "Province"
        ],
        "summary": "Mahalleleri Listele (İl)",
        "description": "İl genelindeki tüm mahalleleri toplu halde getirir.",
        "operationId": "Province_GetNeighborhoodsByProvince",
        "parameters": [
          {
            "name": "provinceId",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NeighborhoodListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Province/GetVillagesByDistrict/Villages/ByDistrict": {
      "get": {
        "tags": [
          "Province"
        ],
        "summary": "Köyleri Listele (İlçe)",
        "description": "Belirli bir ilçeye bağlı tüm köyleri getirir.",
        "operationId": "Province_GetVillagesByDistrict",
        "parameters": [
          {
            "name": "districtId",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VillageListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Province/GetVillagesByProvince/Villages/ByProvince": {
      "get": {
        "tags": [
          "Province"
        ],
        "summary": "Köyleri Listele (İl)",
        "description": "İl genelindeki tüm köyleri toplu halde getirir.",
        "operationId": "Province_GetVillagesByProvince",
        "parameters": [
          {
            "name": "provinceId",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VillageListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Province/GetProvinceDetails/Details/{provinceId}": {
      "get": {
        "tags": [
          "Province"
        ],
        "summary": "İl Detayları",
        "description": "İl, ilçeler ve bağlı birimlerin hiyerarşik tam detayını döner.",
        "operationId": "Province_GetProvinceDetails",
        "parameters": [
          {
            "name": "provinceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonElementNullableServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetIpInfo": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "IP Bilgisi Al",
        "description": "Verilen IP adresinin coğrafi konum, ISS ve koordinat detaylarını döner.",
        "operationId": "PublicTools_GetIpInfo",
        "parameters": [
          {
            "name": "ip",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "8.8.8.8"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ObjectServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetCryptoPrice": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "Kripto Fiyatı Al",
        "description": "Belirtilen kripto paranın (örn: bitcoin, ethereum) güncel USD değerini canlı olarak getirir.",
        "operationId": "PublicTools_GetCryptoPrice",
        "parameters": [
          {
            "name": "cryptoId",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "bitcoin"
            },
            "example": "bitcoin"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CryptoPriceResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetPublicHolidays": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "Resmi Tatilleri Listele",
        "description": "Belirli bir yıl ve ülke kodu (örn: TR, US) için resmi tatil günlerini getirir.",
        "operationId": "PublicTools_GetPublicHolidays",
        "parameters": [
          {
            "name": "year",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "example": "2024"
          },
          {
            "name": "countryCode",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "TR"
            },
            "example": "TR"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ObjectServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetGithubUserInfo": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "GitHub Kullanıcı Bilgisi",
        "description": "GitHub üzerindeki bir kullanıcının profil detaylarını ve istatistiklerini analiz eder.",
        "operationId": "PublicTools_GetGithubUserInfo",
        "parameters": [
          {
            "name": "username",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "torvalds"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ObjectServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetDnsRecords": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "DNS Kaydı Sorgula",
        "description": "Google DNS üzerinden alan adının A, MX, TXT gibi kayıtlarını sorgular.",
        "operationId": "PublicTools_GetDnsRecords",
        "parameters": [
          {
            "name": "domain",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "google.com"
          },
          {
            "name": "type",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "A"
            },
            "example": "A"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ObjectServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetNasaApod": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "NASA APOD",
        "description": "NASA'nın günlük yayınladığı uzay fotoğraflarını ve açıklamalarını getirir.",
        "operationId": "PublicTools_GetNasaApod",
        "parameters": [
          {
            "name": "apiKey",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "aiqKkflo2HT5BQfNpQPRYnqn4AcmJKTUd5dzabYr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ObjectServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/ValidateEmail": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "E-posta Doğrula",
        "description": "E-posta formatını, alan adını ve geçici posta (disposable) durumunu kontrol eder.",
        "operationId": "PublicTools_ValidateEmail",
        "parameters": [
          {
            "name": "email",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "test@gmail.com"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmailValidationResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetAvatar": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "Avatar Oluştur",
        "description": "Kullanıcı adına göre rastgele renkli, baş harf içeren bir avatar üretir ve Base64 döner.",
        "operationId": "PublicTools_GetAvatar",
        "parameters": [
          {
            "name": "userName",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "Gemma"
          },
          {
            "name": "size",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 128
            },
            "example": "128"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AvatarResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetLocation": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "Konum Bilgisi Getir",
        "description": "Posta kodu ve ülke parametrelerine göre detaylı coğrafi koordinat ve adres bilgilerini getirir.",
        "operationId": "PublicTools_GetLocation",
        "parameters": [
          {
            "name": "zipCode",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "34000"
          },
          {
            "name": "countryRegion",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "tr"
            },
            "example": "tr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GeoLocationDtoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetEarthquakes": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "Son Depremleri Getir",
        "description": "AFAD üzerinden Türkiye'deki son depremleri listeler. Şehir bazlı filtreleme ve adet sınırlaması yapılabilir.",
        "operationId": "PublicTools_GetEarthquakes",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "example": "10"
          },
          {
            "name": "cityCode",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "example": "34"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EarthquakeDtoListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetTaxOffices": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "Vergi Dairelerini Listele",
        "description": "Türkiye'deki vergi dairelerini şehir bazlı veya VD koduyla listeler.",
        "operationId": "PublicTools_GetTaxOffices",
        "parameters": [
          {
            "name": "cityCode",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "example": "1"
          },
          {
            "name": "vdCode",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "01201"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaxOfficeDtoListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/ShortenUrl": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "URL Kısalt",
        "description": "Uzun bir URL adresini is.gd servisi kullanarak kısaltır.",
        "operationId": "PublicTools_ShortenUrl",
        "parameters": [
          {
            "name": "longUrl",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UrlShortDtoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetUrlStats": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "URL İstatistiklerini Getir",
        "description": "Kısaltılmış bir URL'nin (is.gd) tıklanma ve oluşturulma bilgilerini getirir.",
        "operationId": "PublicTools_GetUrlStats",
        "parameters": [
          {
            "name": "shortUrlOrCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UrlStatsDtoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/QueryWhois": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "Domain Whois Sorgula",
        "description": "Bir alan adının (domain) WHOIS bilgilerini, kayıt ve bitiş tarihlerini sorgular.",
        "operationId": "PublicTools_QueryWhois",
        "parameters": [
          {
            "name": "domain",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "google.com"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WhoisDtoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetYurticiShipmentInfo": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "Yurtiçi Kargo Takip",
        "description": "Kargo takip numarasını kullanarak gönderinin güncel durumunu ve hareketlerini sorgular.",
        "operationId": "PublicTools_GetYurticiShipmentInfo",
        "parameters": [
          {
            "name": "trackingCode",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "123456789012"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/YurticiResponseDtoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/ConvertZplToPdf": {
      "post": {
        "tags": [
          "PublicTools"
        ],
        "summary": "ZPL'den PDF'e Dönüştür",
        "description": "Zebra etiket kodunu (ZPL) PDF belgesine dönüştürür. Çıktı olarak doğrudan PDF dosyası döner.",
        "operationId": "PublicTools_ConvertZplToPdf",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ZplConversionRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "PDF Etiketi",
            "content": {
              "application/pdf": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetWeather": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "Hava Durumu Sorgula",
        "description": "Bir şehrin anlık hava durumu bilgisini ve 5 günlük tahminlerini getirir.",
        "operationId": "PublicTools_GetWeather",
        "parameters": [
          {
            "name": "city",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "ISTANBUL"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WeatherDtoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetDutyPharmacies": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "Nöbetçi Eczaneleri Sorgula",
        "description": "Bir şehrin (plaka kodu) ve tarihin nöbetçi eczanelerini listeler. Tarih formatı dd/MM/yyyy olmalıdır.",
        "operationId": "PublicTools_GetDutyPharmacies",
        "parameters": [
          {
            "name": "plateCode",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "34"
          },
          {
            "name": "date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "27.03.2024"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PharmacyResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GetPrayerTimes": {
      "get": {
        "tags": [
          "PublicTools"
        ],
        "summary": "Namaz Vakitlerini Getir",
        "description": "Belirtilen şehir ID'sine göre namazvakti.com'dan günlük namaz vakitlerini çeker.",
        "operationId": "PublicTools_GetPrayerTimes",
        "parameters": [
          {
            "name": "cityId",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 16741
            },
            "example": "16741"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PrayerTimeResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/PublicTools/GenerateIcs": {
      "post": {
        "tags": [
          "PublicTools"
        ],
        "summary": "iCalendar (.ics) Oluştur",
        "description": "Verilen etkinlik detaylarına göre standart bir .ics takvim dosyası üretir. Doğrudan indirilebilir.",
        "operationId": "PublicTools_GenerateIcs",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IcsRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "iCalendar Dosyası",
            "content": {
              "text/calendar": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          }
        }
      }
    },
    "/api/Scraper/Social": {
      "get": {
        "tags": [
          "Scraper"
        ],
        "summary": "Sosyal Linkleri Kazı",
        "description": "Verilen web sayfasındaki tüm sosyal medya linklerini (FB, IG, TW vb.) bulur.",
        "operationId": "Scraper_Social",
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SocialScrapeResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Scraper/Contact": {
      "get": {
        "tags": [
          "Scraper"
        ],
        "summary": "İletişim Bilgilerini Kazı",
        "description": "Web sayfasındaki telefon, e-posta ve adres gibi iletişim verilerini analiz eder.",
        "operationId": "Scraper_Contact",
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactScrapeResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Search/Google": {
      "get": {
        "tags": [
          "Search"
        ],
        "summary": "Google Arama",
        "description": "Google Custom Search API kullanarak geniş kapsamlı web araması yapar.",
        "operationId": "Search_Google",
        "parameters": [
          {
            "name": "query",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "num",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 10
            }
          },
          {
            "name": "lr",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "lang_tr"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GoogleSearchItemListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Search/Tavily": {
      "get": {
        "tags": [
          "Search"
        ],
        "summary": "Tavily AI Arama",
        "description": "Yapay zeka odaklı, temizlenmiş ve özetlenmiş web verisi araması yapar.",
        "operationId": "Search_Tavily",
        "parameters": [
          {
            "name": "query",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "basic"
            }
          },
          {
            "name": "includeImages",
            "in": "query",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeAnswer",
            "in": "query",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 5
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TavilySearchResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/SocialMedia/Download": {
      "get": {
        "tags": [
          "SocialMedia"
        ],
        "summary": "Video İndir",
        "description": "Instagram, TikTok, Twitter veya YouTube URL'sinden yüksek kaliteli video indirir.",
        "operationId": "SocialMedia_Download",
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "https://www.instagram.com/p/..."
          },
          {
            "name": "quality",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "best"
            },
            "example": "best"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SocialMediaDownloadResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Socket/Broadcast": {
      "post": {
        "tags": [
          "Socket"
        ],
        "summary": "Genel Duyuru Gönder",
        "description": "Sisteme bağlı olan istisnasız tüm istemcilere mesaj iletir.",
        "operationId": "Socket_Broadcast",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SocketBroadcastRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Socket/SendToUser": {
      "post": {
        "tags": [
          "Socket"
        ],
        "summary": "Kullanıcıya Bildirim Gönder",
        "description": "Belirtilen kullanıcı kimliği (UserId) üzerinden özel veri iletir.",
        "operationId": "Socket_SendToUser",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SocketUserRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Socket/SendToGroup": {
      "post": {
        "tags": [
          "Socket"
        ],
        "summary": "Gruba Mesaj Gönder",
        "description": "Belirtilen grup adına (GroupName) abone olan tüm istemcilere veri iletir.",
        "operationId": "Socket_SendToGroup",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SocketGroupRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Streaming/UploadHls": {
      "post": {
        "tags": [
          "Streaming"
        ],
        "summary": "HLS Dönüştür (Yükle)",
        "description": "Yüklenen videoyu HLS (M3U8) formatına dönüştürüp akışa (stream) hazır hale getirir.",
        "operationId": "Streaming_UploadHls",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "video": {
                    "type": "string",
                    "format": "binary"
                  },
                  "SegmentDuration": {
                    "type": "integer",
                    "format": "int32",
                    "example": "10"
                  },
                  "VideoCodec": {
                    "type": "string",
                    "example": "libx264"
                  },
                  "AudioCodec": {
                    "type": "string",
                    "example": "aac"
                  },
                  "VideoBitrate": {
                    "type": "string",
                    "example": "2000k"
                  },
                  "AudioBitrate": {
                    "type": "string",
                    "example": "128k"
                  },
                  "Resolution": {
                    "type": "string",
                    "example": "1280x720"
                  },
                  "DeleteSourceAfterConversion": {
                    "type": "boolean",
                    "example": "false"
                  }
                }
              },
              "encoding": {
                "video": {
                  "style": "form"
                },
                "SegmentDuration": {
                  "style": "form"
                },
                "VideoCodec": {
                  "style": "form"
                },
                "AudioCodec": {
                  "style": "form"
                },
                "VideoBitrate": {
                  "style": "form"
                },
                "AudioBitrate": {
                  "style": "form"
                },
                "Resolution": {
                  "style": "form"
                },
                "DeleteSourceAfterConversion": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "video": {
                    "type": "string",
                    "format": "binary"
                  },
                  "SegmentDuration": {
                    "type": "integer",
                    "format": "int32",
                    "example": "10"
                  },
                  "VideoCodec": {
                    "type": "string",
                    "example": "libx264"
                  },
                  "AudioCodec": {
                    "type": "string",
                    "example": "aac"
                  },
                  "VideoBitrate": {
                    "type": "string",
                    "example": "2000k"
                  },
                  "AudioBitrate": {
                    "type": "string",
                    "example": "128k"
                  },
                  "Resolution": {
                    "type": "string",
                    "example": "1280x720"
                  },
                  "DeleteSourceAfterConversion": {
                    "type": "boolean",
                    "example": "false"
                  }
                }
              },
              "encoding": {
                "video": {
                  "style": "form"
                },
                "SegmentDuration": {
                  "style": "form"
                },
                "VideoCodec": {
                  "style": "form"
                },
                "AudioCodec": {
                  "style": "form"
                },
                "VideoBitrate": {
                  "style": "form"
                },
                "AudioBitrate": {
                  "style": "form"
                },
                "Resolution": {
                  "style": "form"
                },
                "DeleteSourceAfterConversion": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HlsConversionResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Streaming/ConvertHls": {
      "post": {
        "tags": [
          "Streaming"
        ],
        "summary": "HLS Dönüştür (Dosya)",
        "description": "Sunucudaki mevcut bir video dosyasını HLS (M3U8) formatına dönüştürür.",
        "operationId": "Streaming_ConvertHls",
        "parameters": [
          {
            "name": "path",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/HlsConversionOptions"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HlsConversionResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Streaming/List": {
      "get": {
        "tags": [
          "Streaming"
        ],
        "summary": "Akışları Listele",
        "description": "Sunucuda aktif olan tüm HLS video akışlarının listesini döner.",
        "operationId": "Streaming_List",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StreamInfoListServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Streaming/Delete": {
      "delete": {
        "tags": [
          "Streaming"
        ],
        "summary": "Akışı Sil",
        "description": "Belirtilen ID'ye ait tüm HLS klasörlerini ve segmentlerini fiziksel olarak siler.",
        "operationId": "Streaming_Delete",
        "parameters": [
          {
            "name": "videoId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Streaming/Player/{videoId}": {
      "get": {
        "tags": [
          "Streaming"
        ],
        "summary": "Video Player (HTML)",
        "description": "Belirtilen video ID'si için VideoJS tabanlı HTML player sayfasını döner.",
        "operationId": "Streaming_Player",
        "parameters": [
          {
            "name": "videoId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/Translate/Translate": {
      "post": {
        "tags": [
          "Translate"
        ],
        "summary": "Metni Çevir",
        "description": "Verilen metni kaynak dilden hedef dile yüksek kaliteli bir motor kullanarak asenkron olarak çevirir.",
        "operationId": "Translate_Translate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TranslateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TranslateResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Vision/AnalyzeImage": {
      "post": {
        "tags": [
          "Vision"
        ],
        "summary": "Görsel Analizi",
        "description": "Yüklenen görseli analiz edip etiket, metin ve nesne bilgilerini döner.",
        "operationId": "Vision_AnalyzeImage",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GoogleVisionResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Vision/AnalyzeImageFromUrl": {
      "get": {
        "tags": [
          "Vision"
        ],
        "summary": "Görsel Analizi (URL)",
        "description": "Verilen görsel adresini analiz edip içerik bilgilerini döner.",
        "operationId": "Vision_AnalyzeImageFromUrl",
        "parameters": [
          {
            "name": "imageUrl",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GoogleVisionResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Vision/AnalyzePdf": {
      "post": {
        "tags": [
          "Vision"
        ],
        "summary": "PDF Analizi (OCR)",
        "description": "PDF dosyasının sayfalarını tarayarak metinleri asenkron olarak çıkarır.",
        "operationId": "Vision_AnalyzePdf",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GoogleVisionPdfResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Whatsapp/SendMessage": {
      "post": {
        "tags": [
          "Whatsapp"
        ],
        "summary": "Mesaj Gönder",
        "description": "Belirtilen WhatsApp numarasına metin mesajı gönderir.",
        "operationId": "Whatsapp_SendMessage",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WhatsappSendMessageRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WhatsappSendMessageResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Whatsapp/SendFile": {
      "post": {
        "tags": [
          "Whatsapp"
        ],
        "summary": "Dosya Gönder",
        "description": "Bir veya birden fazla dosyayı/görseli başlık ile gönderir (multipart/form-data).",
        "operationId": "Whatsapp_SendFile",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "To": {
                    "type": "string"
                  },
                  "Caption": {
                    "type": "string"
                  },
                  "Files": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "format": "binary"
                    }
                  }
                }
              },
              "encoding": {
                "To": {
                  "style": "form"
                },
                "Caption": {
                  "style": "form"
                },
                "Files": {
                  "style": "form"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "To": {
                    "type": "string"
                  },
                  "Caption": {
                    "type": "string"
                  },
                  "Files": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "format": "binary"
                    }
                  }
                }
              },
              "encoding": {
                "To": {
                  "style": "form"
                },
                "Caption": {
                  "style": "form"
                },
                "Files": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WhatsappSendFileResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Whatsapp/SendBulk": {
      "post": {
        "tags": [
          "Whatsapp"
        ],
        "summary": "Toplu Mesaj Gönder",
        "description": "Birden fazla alıcıya aynı metin mesajını toplu olarak iletir.",
        "operationId": "Whatsapp_SendBulk",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WhatsappBulkMessageRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WhatsappBulkMessageResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Whatsapp/CheckNumber": {
      "get": {
        "tags": [
          "Whatsapp"
        ],
        "summary": "Numara Kontrolü",
        "description": "Verilen telefon numarasının WhatsApp kullanıp kullanmadığını sorgular.",
        "operationId": "Whatsapp_CheckNumber",
        "parameters": [
          {
            "name": "number",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WhatsappCheckNumberResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/Whatsapp/Status": {
      "get": {
        "tags": [
          "Whatsapp"
        ],
        "summary": "Bağlantı Durumu",
        "description": "WhatsApp servisinin sunucuya bağlılık durumunu (QR/Connected) döner.",
        "operationId": "Whatsapp_Status",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WhatsappStatusResponseServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/YouTube/GetInfo": {
      "get": {
        "tags": [
          "YouTube"
        ],
        "summary": "Video Bilgisi Al",
        "description": "YouTube URL'sinden videonun başlık, süre, resmi ve kanal bilgilerini döner.",
        "operationId": "YouTube_GetInfo",
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/YouTubeVideoInfoServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/YouTube/DownloadMp3": {
      "get": {
        "tags": [
          "YouTube"
        ],
        "summary": "YouTube'dan MP3 İndir",
        "description": "YouTube videosunu MP3 formatına dönüştürüp asenkron olarak indirir.",
        "operationId": "YouTube_DownloadMp3",
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
          },
          {
            "name": "quality",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "192"
            },
            "example": "192"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/YouTubeDownloadResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/YouTube/DownloadVideo": {
      "get": {
        "tags": [
          "YouTube"
        ],
        "summary": "YouTube'dan Video İndir",
        "description": "YouTube videosunu belirtilen kalitede (varsayılan 720p) indirir.",
        "operationId": "YouTube_DownloadVideo",
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
          },
          {
            "name": "quality",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "720"
            },
            "example": "720"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/YouTubeDownloadResultServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/YouTube/AnalyzeVideo": {
      "get": {
        "tags": [
          "YouTube"
        ],
        "summary": "Detaylı Video Analizi",
        "description": "Videonun istatistiklerini, kanal bilgilerini ve öne çıkan yorumlarını döner.",
        "operationId": "YouTube_AnalyzeVideo",
        "parameters": [
          {
            "name": "input",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/YoutubeVideoAnalysisServiceResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/YouTube/AnalyzeChannel": {
      "get": {
        "tags": [
          "YouTube"
        ],
        "summary": "Detaylı Kanal Analizi",
        "description": "Kanalın abone sayısı, toplam izlenme ve video sayısı gibi istatistiklerini döner.",
        "operationId": "YouTube_AnalyzeChannel",
        "parameters": [
          {
            "name": "input",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "example": "@BarisOzcan"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/YoutubeChannelAnalysisServiceResult"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "AdminDataResponse": {
        "type": "object",
        "properties": {
          "Message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AdminDataResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/AdminDataResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AttachmentModel": {
        "type": "object",
        "properties": {
          "FileName": {
            "type": "string",
            "nullable": true,
            "example": "document.pdf"
          },
          "Base64Content": {
            "type": "string",
            "nullable": true,
            "example": "Base64StringHere"
          }
        },
        "additionalProperties": false
      },
      "AuthResponse": {
        "type": "object",
        "properties": {
          "Token": {
            "type": "string",
            "nullable": true
          },
          "User": {
            "$ref": "#/components/schemas/AuthUserResponse"
          }
        },
        "additionalProperties": false
      },
      "AuthResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/AuthResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AuthUserResponse": {
        "type": "object",
        "properties": {
          "Username": {
            "type": "string",
            "nullable": true
          },
          "Role": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AvatarResponse": {
        "type": "object",
        "properties": {
          "UserName": {
            "type": "string",
            "nullable": true
          },
          "AvatarBase64": {
            "type": "string",
            "nullable": true
          },
          "Size": {
            "type": "integer",
            "format": "int32"
          },
          "Success": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AvatarResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/AvatarResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BooleanServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "boolean"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CodeRepoData": {
        "type": "object",
        "properties": {
          "Stars": {
            "type": "integer",
            "format": "int64",
            "example": "72000"
          },
          "Forks": {
            "type": "integer",
            "format": "int64",
            "example": "35000"
          },
          "Subscribers": {
            "type": "integer",
            "format": "int64",
            "example": "3900"
          }
        },
        "additionalProperties": false
      },
      "CoinDataItem": {
        "type": "object",
        "properties": {
          "CoinInfo": {
            "$ref": "#/components/schemas/CoinInfo"
          },
          "DISPLAY": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/DisplayData"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CoinDataItemListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CoinDataItem"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CoinInfo": {
        "type": "object",
        "properties": {
          "Id": {
            "type": "string",
            "nullable": true,
            "example": "1182"
          },
          "FullName": {
            "type": "string",
            "nullable": true,
            "example": "Bitcoin"
          },
          "Internal": {
            "type": "string",
            "nullable": true,
            "example": "BTC"
          },
          "ImageUrl": {
            "type": "string",
            "nullable": true,
            "example": "/media/37746251/btc.png"
          }
        },
        "additionalProperties": false
      },
      "CommitAuthor": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "date": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "CommitDetail": {
        "type": "object",
        "properties": {
          "author": {
            "$ref": "#/components/schemas/CommitAuthor"
          },
          "message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CommodityPriceItem": {
        "type": "object",
        "properties": {
          "Code": {
            "type": "string",
            "nullable": true
          },
          "Name": {
            "type": "string",
            "nullable": true
          },
          "Buy": {
            "type": "string",
            "nullable": true
          },
          "Sell": {
            "type": "string",
            "nullable": true
          },
          "Change": {
            "type": "string",
            "nullable": true
          },
          "Low": {
            "type": "string",
            "nullable": true
          },
          "High": {
            "type": "string",
            "nullable": true
          },
          "Close": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CommodityPricesResponse": {
        "type": "object",
        "properties": {
          "Items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CommodityPriceItem"
            },
            "nullable": true
          },
          "UpdatedAt": {
            "type": "string",
            "nullable": true
          },
          "Date": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CommodityPricesResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/CommodityPricesResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ContactScrapeResponse": {
        "type": "object",
        "properties": {
          "Status": {
            "type": "string",
            "nullable": true
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "Emails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Gsm": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Office": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ContactScrapeResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/ContactScrapeResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CryptoPriceResponse": {
        "type": "object",
        "properties": {
          "CryptoId": {
            "type": "string",
            "nullable": true
          },
          "PriceUsd": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "CryptoPriceResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/CryptoPriceResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CurrencyConvertResult": {
        "type": "object",
        "properties": {
          "Amount": {
            "type": "number",
            "format": "double"
          },
          "From": {
            "type": "string",
            "nullable": true
          },
          "To": {
            "type": "string",
            "nullable": true
          },
          "Result": {
            "type": "number",
            "format": "double"
          },
          "Formatted": {
            "type": "string",
            "nullable": true
          },
          "RateDate": {
            "type": "string",
            "format": "date-time"
          },
          "Provider": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CurrencyConvertResultServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/CurrencyConvertResult"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CurrencyDto": {
        "type": "object",
        "properties": {
          "CurrencyCode": {
            "type": "string",
            "nullable": true
          },
          "Unit": {
            "type": "integer",
            "format": "int32"
          },
          "ForexBuying": {
            "type": "number",
            "format": "double"
          },
          "ForexSelling": {
            "type": "number",
            "format": "double"
          },
          "BanknoteBuying": {
            "type": "number",
            "format": "double"
          },
          "BanknoteSelling": {
            "type": "number",
            "format": "double"
          },
          "Date": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "CurrencyDtoListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CurrencyDto"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CurrencyPriceItem": {
        "type": "object",
        "properties": {
          "Code": {
            "type": "string",
            "nullable": true
          },
          "Name": {
            "type": "string",
            "nullable": true
          },
          "Buy": {
            "type": "string",
            "nullable": true
          },
          "Sell": {
            "type": "string",
            "nullable": true
          },
          "Change": {
            "type": "string",
            "nullable": true
          },
          "Low": {
            "type": "string",
            "nullable": true
          },
          "High": {
            "type": "string",
            "nullable": true
          },
          "Close": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CurrencyPricesResponse": {
        "type": "object",
        "properties": {
          "Items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CurrencyPriceItem"
            },
            "nullable": true
          },
          "UpdatedAt": {
            "type": "string",
            "nullable": true
          },
          "Date": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CurrencyPricesResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/CurrencyPricesResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DisplayData": {
        "type": "object",
        "properties": {
          "PRICE": {
            "type": "string",
            "nullable": true,
            "example": "$ 65,000.00"
          },
          "CHANGEPCT24HOUR": {
            "type": "string",
            "nullable": true,
            "example": "2.45"
          }
        },
        "additionalProperties": false
      },
      "District": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "provinceId": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "DistrictListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/District"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EarthquakeDto": {
        "type": "object",
        "properties": {
          "Yer": {
            "type": "string",
            "nullable": true
          },
          "Tarih": {
            "type": "string",
            "nullable": true
          },
          "Buyukluk": {
            "type": "string",
            "nullable": true
          },
          "DerinlikKm": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EarthquakeDtoListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EarthquakeDto"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ElevenLabsSpeakRequest": {
        "type": "object",
        "properties": {
          "Text": {
            "type": "string",
            "nullable": true,
            "example": "Merhaba, ben ElevenLabs yapay zeka sesi."
          },
          "VoiceId": {
            "type": "string",
            "nullable": true,
            "example": "JEuUn05af8gNmr3xuIvX"
          },
          "ModelId": {
            "type": "string",
            "nullable": true,
            "example": "eleven_multilingual_v2"
          },
          "VoiceSettings": {
            "$ref": "#/components/schemas/ElevenLabsVoiceSettings"
          }
        },
        "additionalProperties": false
      },
      "ElevenLabsVoice": {
        "type": "object",
        "properties": {
          "voice_id": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "labels": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "nullable": true
            },
            "nullable": true
          },
          "high_quality_base_model_ids": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ElevenLabsVoiceListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ElevenLabsVoice"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ElevenLabsVoiceSettings": {
        "type": "object",
        "properties": {
          "stability": {
            "type": "number",
            "format": "double"
          },
          "similarity_boost": {
            "type": "number",
            "format": "double"
          },
          "style": {
            "type": "number",
            "format": "double"
          },
          "use_speaker_boost": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "EmailRequest": {
        "type": "object",
        "properties": {
          "SmtpHost": {
            "type": "string",
            "nullable": true,
            "example": "mail.example.com"
          },
          "SmtpPort": {
            "type": "integer",
            "format": "int32",
            "example": "587"
          },
          "SmtpUsername": {
            "type": "string",
            "nullable": true,
            "example": "user@example.com"
          },
          "SmtpPassword": {
            "type": "string",
            "nullable": true,
            "example": "password"
          },
          "EnableSsl": {
            "type": "boolean",
            "example": "true"
          },
          "ToEmails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "example": "recipient1@example.com,recipient2@example.com"
          },
          "FromEmail": {
            "type": "string",
            "nullable": true,
            "example": "sender@example.com"
          },
          "FromName": {
            "type": "string",
            "nullable": true,
            "example": "Sender Name"
          },
          "Subject": {
            "type": "string",
            "nullable": true,
            "example": "Hello World"
          },
          "ReplyToEmail": {
            "type": "string",
            "nullable": true,
            "example": "reply@example.com"
          },
          "ReplyToName": {
            "type": "string",
            "nullable": true,
            "example": "Reply Name"
          },
          "Body": {
            "type": "string",
            "nullable": true,
            "example": "<h1>Test Message</h1>"
          },
          "IsHtml": {
            "type": "boolean",
            "example": "true"
          },
          "Attachments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AttachmentModel"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EmailResponse": {
        "type": "object",
        "properties": {
          "Success": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EmailResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/EmailResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EmailValidationResponse": {
        "type": "object",
        "properties": {
          "format": {
            "type": "boolean"
          },
          "domain": {
            "type": "string",
            "nullable": true
          },
          "disposable": {
            "type": "boolean"
          },
          "dns": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "EmailValidationResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/EmailValidationResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ExchangeRateDto": {
        "type": "object",
        "properties": {
          "Code": {
            "type": "string",
            "nullable": true
          },
          "Description": {
            "type": "string",
            "nullable": true
          },
          "EffectiveRateBuy": {
            "type": "number",
            "format": "double"
          },
          "EffectiveRateSell": {
            "type": "number",
            "format": "double"
          },
          "FxRateBuy": {
            "type": "number",
            "format": "double"
          },
          "FxRateSell": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "ExchangeRateDtoListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ExchangeRateDto"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ExchangeRateDtoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/ExchangeRateDto"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "FngDataItem": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "nullable": true,
            "example": "75"
          },
          "value_classification": {
            "type": "string",
            "nullable": true,
            "example": "Greed"
          }
        },
        "additionalProperties": false
      },
      "FngDataItemServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/FngDataItem"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ForecastDto": {
        "type": "object",
        "properties": {
          "Date": {
            "type": "string",
            "nullable": true
          },
          "Time": {
            "type": "string",
            "nullable": true
          },
          "Temperature": {
            "type": "string",
            "nullable": true
          },
          "Description": {
            "type": "string",
            "nullable": true
          },
          "Icon": {
            "type": "string",
            "nullable": true
          },
          "Emoji": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "FxRateType": {
        "enum": [
          "IS",
          "MB",
          "IB"
        ],
        "type": "string"
      },
      "GeminiImageResponseDto": {
        "type": "object",
        "properties": {
          "Type": {
            "type": "string",
            "nullable": true
          },
          "Prompt": {
            "type": "string",
            "nullable": true
          },
          "Base64": {
            "type": "string",
            "nullable": true
          },
          "MimeType": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GeminiImageResponseDtoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/GeminiImageResponseDto"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GeminiVideoListResponseDto": {
        "type": "object",
        "properties": {
          "Type": {
            "type": "string",
            "nullable": true
          },
          "Prompt": {
            "type": "string",
            "nullable": true
          },
          "Videos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GeminiVideoResponseDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GeminiVideoListResponseDtoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/GeminiVideoListResponseDto"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GeminiVideoResponseDto": {
        "type": "object",
        "properties": {
          "Type": {
            "type": "string",
            "nullable": true
          },
          "Prompt": {
            "type": "string",
            "nullable": true
          },
          "OperationId": {
            "type": "string",
            "nullable": true
          },
          "FileId": {
            "type": "string",
            "nullable": true
          },
          "Uri": {
            "type": "string",
            "nullable": true
          },
          "Base64": {
            "type": "string",
            "nullable": true
          },
          "MimeType": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GeminiVideoResponseDtoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/GeminiVideoResponseDto"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GeoLocationDto": {
        "type": "object",
        "properties": {
          "Address": {
            "type": "string",
            "nullable": true
          },
          "StreetAddress": {
            "type": "string",
            "nullable": true
          },
          "StreetNumber": {
            "type": "string",
            "nullable": true
          },
          "City": {
            "type": "string",
            "nullable": true
          },
          "Region": {
            "type": "string",
            "nullable": true
          },
          "PostalCode": {
            "type": "string",
            "nullable": true
          },
          "Country": {
            "type": "string",
            "nullable": true
          },
          "CountryCode": {
            "type": "string",
            "nullable": true
          },
          "State": {
            "type": "string",
            "nullable": true
          },
          "Latitude": {
            "type": "string",
            "nullable": true
          },
          "Longitude": {
            "type": "string",
            "nullable": true
          },
          "Timezone": {
            "type": "string",
            "nullable": true
          },
          "Elevation": {
            "type": "string",
            "nullable": true
          },
          "Confidence": {
            "type": "string",
            "nullable": true
          },
          "Geocode": {
            "type": "string",
            "nullable": true
          },
          "RemainingCredits": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "Standard": {
            "$ref": "#/components/schemas/StandardAddress"
          },
          "Intersection": {
            "$ref": "#/components/schemas/IntersectionInfo"
          }
        },
        "additionalProperties": false
      },
      "GeoLocationDtoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/GeoLocationDto"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GithubBranch": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GithubBranchListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GithubBranch"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GithubCommentRequest": {
        "type": "object",
        "properties": {
          "Body": {
            "type": "string",
            "nullable": true,
            "example": "Harika bir özellik!"
          }
        },
        "additionalProperties": false
      },
      "GithubCommit": {
        "type": "object",
        "properties": {
          "sha": {
            "type": "string",
            "nullable": true
          },
          "commit": {
            "$ref": "#/components/schemas/CommitDetail"
          },
          "author": {
            "$ref": "#/components/schemas/GithubUser"
          },
          "html_url": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GithubCommitListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GithubCommit"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GithubFileRequest": {
        "type": "object",
        "properties": {
          "Path": {
            "type": "string",
            "nullable": true,
            "example": "test.md"
          },
          "Content": {
            "type": "string",
            "nullable": true,
            "example": "Dosya içeriği..."
          },
          "Message": {
            "type": "string",
            "nullable": true,
            "example": "Commit mesajı"
          }
        },
        "additionalProperties": false
      },
      "GithubIssueRequest": {
        "type": "object",
        "properties": {
          "Title": {
            "type": "string",
            "nullable": true,
            "example": "Issue Başlığı"
          },
          "Body": {
            "type": "string",
            "nullable": true,
            "example": "Issue açıklaması..."
          },
          "Labels": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "example": "bug"
          },
          "Assignees": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "example": "kullaniciadi"
          }
        },
        "additionalProperties": false
      },
      "GithubPullRequest": {
        "type": "object",
        "properties": {
          "number": {
            "type": "integer",
            "format": "int32"
          },
          "state": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "user": {
            "$ref": "#/components/schemas/GithubUser"
          },
          "html_url": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GithubPullRequestListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GithubPullRequest"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GithubRepo": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int64"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "full_name": {
            "type": "string",
            "nullable": true
          },
          "html_url": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "stargazers_count": {
            "type": "integer",
            "format": "int32"
          },
          "language": {
            "type": "string",
            "nullable": true
          },
          "updated_at": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "GithubRepoListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GithubRepo"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GithubSearchResult": {
        "type": "object",
        "properties": {
          "total_count": {
            "type": "integer",
            "format": "int32"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GithubRepo"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GithubSearchResultServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/GithubSearchResult"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GithubUser": {
        "type": "object",
        "properties": {
          "login": {
            "type": "string",
            "nullable": true
          },
          "avatar_url": {
            "type": "string",
            "nullable": true
          },
          "html_url": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GmailComposeRequest": {
        "type": "object",
        "properties": {
          "To": {
            "type": "string",
            "nullable": true,
            "example": "example@gmail.com"
          },
          "Subject": {
            "type": "string",
            "nullable": true,
            "example": "Konu"
          },
          "Body": {
            "type": "string",
            "nullable": true,
            "example": "Mesaj içeriği..."
          }
        },
        "additionalProperties": false
      },
      "GoldPriceItem": {
        "type": "object",
        "properties": {
          "Name": {
            "type": "string",
            "nullable": true
          },
          "Buy": {
            "type": "string",
            "nullable": true
          },
          "Sell": {
            "type": "string",
            "nullable": true
          },
          "Change": {
            "type": "string",
            "nullable": true
          },
          "Low": {
            "type": "string",
            "nullable": true
          },
          "High": {
            "type": "string",
            "nullable": true
          },
          "Close": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoldPricesResponse": {
        "type": "object",
        "properties": {
          "Items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GoldPriceItem"
            },
            "nullable": true
          },
          "UpdatedAt": {
            "type": "string",
            "nullable": true
          },
          "Date": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoldPricesResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/GoldPricesResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoogleFaceAnnotation": {
        "type": "object",
        "properties": {
          "JoyLikelihood": {
            "type": "string",
            "nullable": true
          },
          "SorrowLikelihood": {
            "type": "string",
            "nullable": true
          },
          "AngerLikelihood": {
            "type": "string",
            "nullable": true
          },
          "SurpriseLikelihood": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoogleFullAuthInfoDto": {
        "type": "object",
        "properties": {
          "user_id": {
            "type": "string",
            "nullable": true
          },
          "scope": {
            "type": "string",
            "nullable": true
          },
          "expires_in": {
            "type": "integer",
            "format": "int32"
          },
          "access_type": {
            "type": "string",
            "nullable": true
          },
          "sub": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "given_name": {
            "type": "string",
            "nullable": true
          },
          "family_name": {
            "type": "string",
            "nullable": true
          },
          "picture": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "email_verified": {
            "type": "boolean"
          },
          "locale": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoogleFullAuthInfoDtoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/GoogleFullAuthInfoDto"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoogleNewsModel": {
        "type": "object",
        "properties": {
          "Title": {
            "type": "string",
            "nullable": true
          },
          "Link": {
            "type": "string",
            "nullable": true
          },
          "Published": {
            "type": "string",
            "nullable": true
          },
          "Source": {
            "type": "string",
            "nullable": true
          },
          "Content": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoogleNewsModelListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GoogleNewsModel"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoogleSearchItem": {
        "type": "object",
        "properties": {
          "Title": {
            "type": "string",
            "nullable": true
          },
          "Link": {
            "type": "string",
            "nullable": true
          },
          "Snippet": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoogleSearchItemListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GoogleSearchItem"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoogleTokenInfoDto": {
        "type": "object",
        "properties": {
          "iss": {
            "type": "string",
            "nullable": true
          },
          "sub": {
            "type": "string",
            "nullable": true
          },
          "aud": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "email_verified": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "picture": {
            "type": "string",
            "nullable": true
          },
          "given_name": {
            "type": "string",
            "nullable": true
          },
          "family_name": {
            "type": "string",
            "nullable": true
          },
          "exp": {
            "type": "integer",
            "format": "int64"
          },
          "iat": {
            "type": "integer",
            "format": "int64"
          },
          "azp": {
            "type": "string",
            "nullable": true
          },
          "hd": {
            "type": "string",
            "nullable": true
          },
          "locale": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoogleTokenInfoDtoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/GoogleTokenInfoDto"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoogleUrlRequest": {
        "type": "object",
        "properties": {
          "Title": {
            "type": "string",
            "nullable": true,
            "example": "Toplantı"
          },
          "Start": {
            "type": "string",
            "format": "date-time",
            "example": "2024-01-01T10:00:00"
          },
          "End": {
            "type": "string",
            "format": "date-time",
            "example": "2024-01-01T11:00:00"
          },
          "Details": {
            "type": "string",
            "nullable": true,
            "example": "Toplantı Detayları"
          },
          "Location": {
            "type": "string",
            "nullable": true,
            "example": "İstanbul"
          }
        },
        "additionalProperties": false
      },
      "GoogleVisionPdfPage": {
        "type": "object",
        "properties": {
          "PageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "Text": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoogleVisionPdfResult": {
        "type": "object",
        "properties": {
          "TotalPages": {
            "type": "integer",
            "format": "int32"
          },
          "Pages": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GoogleVisionPdfPage"
            },
            "nullable": true
          },
          "FullText": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "GoogleVisionPdfResultServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/GoogleVisionPdfResult"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoogleVisionResult": {
        "type": "object",
        "properties": {
          "Labels": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Texts": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Objects": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Faces": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GoogleFaceAnnotation"
            },
            "nullable": true
          },
          "Landmarks": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "SafeSearchAdult": {
            "type": "string",
            "nullable": true
          },
          "SafeSearchViolence": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GoogleVisionResultServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/GoogleVisionResult"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "HistoryDataItem": {
        "type": "object",
        "properties": {
          "time": {
            "type": "integer",
            "format": "int64",
            "example": "1700000000"
          },
          "close": {
            "type": "number",
            "format": "double",
            "example": "65000.50"
          }
        },
        "additionalProperties": false
      },
      "HistoryDataItemListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/HistoryDataItem"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "HlsConversionOptions": {
        "type": "object",
        "properties": {
          "SegmentDuration": {
            "type": "integer",
            "format": "int32",
            "example": "10"
          },
          "VideoCodec": {
            "type": "string",
            "nullable": true,
            "example": "libx264"
          },
          "AudioCodec": {
            "type": "string",
            "nullable": true,
            "example": "aac"
          },
          "VideoBitrate": {
            "type": "string",
            "nullable": true,
            "example": "2000k"
          },
          "AudioBitrate": {
            "type": "string",
            "nullable": true,
            "example": "128k"
          },
          "Resolution": {
            "type": "string",
            "nullable": true,
            "example": "1280x720"
          },
          "DeleteSourceAfterConversion": {
            "type": "boolean",
            "example": "false"
          }
        },
        "additionalProperties": false
      },
      "HlsConversionResult": {
        "type": "object",
        "properties": {
          "Success": {
            "type": "boolean"
          },
          "VideoId": {
            "type": "string",
            "nullable": true
          },
          "PlaylistUrl": {
            "type": "string",
            "nullable": true
          },
          "PlayerUrl": {
            "type": "string",
            "nullable": true
          },
          "SegmentCount": {
            "type": "integer",
            "format": "int32"
          },
          "VideoInfo": {
            "$ref": "#/components/schemas/VideoStreamInfo"
          },
          "CreatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "ErrorMessage": {
            "type": "string",
            "nullable": true
          },
          "ProcessOutput": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "HlsConversionResultServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/HlsConversionResult"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "IcsRequest": {
        "type": "object",
        "properties": {
          "Title": {
            "type": "string",
            "nullable": true,
            "example": "Proje Planlama Toplantısı"
          },
          "Description": {
            "type": "string",
            "nullable": true,
            "example": "Yeni yıl hedeflerini konuşacağız."
          },
          "Start": {
            "type": "string",
            "nullable": true,
            "example": "2026-01-20 10:00:00"
          },
          "End": {
            "type": "string",
            "nullable": true,
            "example": "2026-01-20 11:00:00"
          },
          "Location": {
            "type": "string",
            "nullable": true,
            "example": "Online / Microsoft Teams"
          },
          "Organizer": {
            "type": "string",
            "nullable": true,
            "example": "site@upsoft.com.tr"
          },
          "Attendees": {
            "type": "string",
            "nullable": true,
            "example": "velifiliz88@gmail.com, upsofttr@gmail.com"
          }
        },
        "additionalProperties": false
      },
      "InstagramBulkMessageRequest": {
        "type": "object",
        "properties": {
          "Recipients": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "InstagramSendMessageRequest": {
        "type": "object",
        "properties": {
          "To": {
            "type": "string",
            "nullable": true
          },
          "Message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "IntersectionInfo": {
        "type": "object",
        "properties": {
          "Street1": {
            "type": "string",
            "nullable": true
          },
          "Street2": {
            "type": "string",
            "nullable": true
          },
          "Latitude": {
            "type": "string",
            "nullable": true
          },
          "Longitude": {
            "type": "string",
            "nullable": true
          },
          "Distance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "JsonElementNullableServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ModelStateResult": {
        "type": "object",
        "properties": {
          "Field": {
            "type": "string",
            "nullable": true
          },
          "Message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Neighborhood": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "districtId": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "NeighborhoodListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Neighborhood"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "NewsItem": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true,
            "example": "12345"
          },
          "imageurl": {
            "type": "string",
            "nullable": true,
            "example": "https://example.com/image.jpg"
          },
          "title": {
            "type": "string",
            "nullable": true,
            "example": "Crypto Market Update"
          },
          "body": {
            "type": "string",
            "nullable": true,
            "example": "Bitcoin reaches all time high..."
          },
          "url": {
            "type": "string",
            "nullable": true,
            "example": "https://example.com/news/123"
          }
        },
        "additionalProperties": false
      },
      "NewsItemListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NewsItem"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ObjectServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "OfficeTemplateRequest": {
        "type": "object",
        "properties": {
          "TemplateName": {
            "type": "string",
            "nullable": true,
            "example": "exceltemp.xlsx veya wordtemp.docx"
          },
          "Data": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "nullable": true
            },
            "nullable": true,
            "example": {
              "Ad": "Ahmet",
              "Soyad": "Yılmaz"
            }
          }
        },
        "additionalProperties": false
      },
      "OneSignalNotificationResult": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "external_id": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "OneSignalNotificationResultServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/OneSignalNotificationResult"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PdfFileRequest": {
        "type": "object",
        "properties": {
          "FilePath": {
            "type": "string",
            "nullable": true,
            "example": "templates/invoice.html"
          },
          "Data": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "nullable": true
            },
            "nullable": true,
            "example": {
              "No": "12345"
            }
          }
        },
        "additionalProperties": false
      },
      "PdfGenerateRequest": {
        "type": "object",
        "properties": {
          "HtmlContent": {
            "type": "string",
            "nullable": true,
            "example": "<h1>Merhaba {{Isim}}</h1>"
          },
          "Data": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "nullable": true
            },
            "nullable": true,
            "example": {
              "Isim": "Ahmet"
            }
          }
        },
        "additionalProperties": false
      },
      "PdfResponse": {
        "type": "object",
        "properties": {
          "FileName": {
            "type": "string",
            "nullable": true
          },
          "FilePath": {
            "type": "string",
            "nullable": true
          },
          "FileSize": {
            "type": "integer",
            "format": "int64"
          },
          "Base64Data": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PdfResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/PdfResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PharmacyDataItem": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "district": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PharmacyResponse": {
        "type": "object",
        "properties": {
          "status": {
            "type": "boolean"
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PharmacyDataItem"
            },
            "nullable": true
          },
          "error": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PharmacyResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/PharmacyResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PlaceDetailResult": {
        "type": "object",
        "properties": {
          "PlaceId": {
            "type": "string",
            "nullable": true
          },
          "Name": {
            "type": "string",
            "nullable": true
          },
          "City": {
            "type": "string",
            "nullable": true
          },
          "District": {
            "type": "string",
            "nullable": true
          },
          "Locality": {
            "type": "string",
            "nullable": true
          },
          "PostalCode": {
            "type": "string",
            "nullable": true
          },
          "Rating": {
            "type": "number",
            "format": "double"
          },
          "ReviewCount": {
            "type": "integer",
            "format": "int32"
          },
          "PhoneNumber": {
            "type": "string",
            "nullable": true
          },
          "Website": {
            "type": "string",
            "nullable": true
          },
          "PriceLevel": {
            "type": "integer",
            "format": "int32"
          },
          "BusinessStatus": {
            "type": "string",
            "nullable": true
          },
          "Summary": {
            "type": "string",
            "nullable": true
          },
          "Reviews": {
            "nullable": true
          },
          "FullAddress": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PlaceDetailsResponse": {
        "type": "object",
        "properties": {
          "Status": {
            "type": "string",
            "nullable": true
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "Result": {
            "$ref": "#/components/schemas/PlaceDetailResult"
          }
        },
        "additionalProperties": false
      },
      "PlaceDetailsResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/PlaceDetailsResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PlaceResult": {
        "type": "object",
        "properties": {
          "PlaceId": {
            "type": "string",
            "nullable": true
          },
          "Name": {
            "type": "string",
            "nullable": true
          },
          "City": {
            "type": "string",
            "nullable": true
          },
          "Category": {
            "type": "string",
            "nullable": true
          },
          "Rating": {
            "type": "number",
            "format": "double"
          },
          "Reviews": {
            "type": "integer",
            "format": "int32"
          },
          "Address": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PlacesSearchRequest": {
        "type": "object",
        "properties": {
          "BusinessType": {
            "type": "string",
            "nullable": true
          },
          "City": {
            "type": "string",
            "nullable": true
          },
          "District": {
            "type": "string",
            "nullable": true
          },
          "Limit": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PlacesSearchResponse": {
        "type": "object",
        "properties": {
          "Status": {
            "type": "string",
            "nullable": true
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "Places": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PlaceResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PlacesSearchResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/PlacesSearchResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PrayerTimeResult": {
        "type": "object",
        "properties": {
          "City": {
            "type": "string",
            "nullable": true
          },
          "Date": {
            "type": "string",
            "nullable": true
          },
          "Times": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "nullable": true
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PrayerTimeResultServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/PrayerTimeResult"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ProfileResponse": {
        "type": "object",
        "properties": {
          "Message": {
            "type": "string",
            "nullable": true
          },
          "Profile": {
            "$ref": "#/components/schemas/UserProfile"
          }
        },
        "additionalProperties": false
      },
      "ProfileResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/ProfileResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Province": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "population": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ProvinceListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Province"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RedditData": {
        "type": "object",
        "properties": {
          "subscribers": {
            "type": "integer",
            "format": "int64",
            "example": "5000000"
          },
          "active_users": {
            "type": "integer",
            "format": "int64",
            "example": "12000"
          },
          "posts_per_day": {
            "type": "number",
            "format": "double",
            "example": "150.5"
          },
          "comments_per_hour": {
            "type": "number",
            "format": "double",
            "example": "45.2"
          }
        },
        "additionalProperties": false
      },
      "SendPushRequest": {
        "type": "object",
        "properties": {
          "Title": {
            "type": "string",
            "nullable": true,
            "example": "Bildirim Başlığı"
          },
          "Message": {
            "type": "string",
            "nullable": true,
            "example": "Mesaj İçeriği"
          },
          "Recipients": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "example": "All"
          },
          "TargetType": {
            "type": "string",
            "nullable": true,
            "example": "players"
          }
        },
        "additionalProperties": false
      },
      "SentimentData": {
        "type": "object",
        "properties": {
          "score_status": {
            "type": "string",
            "nullable": true,
            "example": "Bullish"
          }
        },
        "additionalProperties": false
      },
      "SentimentDataServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/SentimentData"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ShipmentInfo": {
        "type": "object",
        "properties": {
          "DeliveryDate": {
            "type": "string",
            "nullable": true
          },
          "DeliveryUnitName": {
            "type": "string",
            "nullable": true
          },
          "DeliveryUnitTel": {
            "type": "string",
            "nullable": true
          },
          "ShipmentStatusCount": {
            "type": "integer",
            "format": "int32"
          },
          "DepartureUnitName": {
            "type": "string",
            "nullable": true
          },
          "DocumentNumber": {
            "type": "string",
            "nullable": true
          },
          "LastProcessDate": {
            "type": "string",
            "nullable": true
          },
          "ShipmentDate": {
            "type": "string",
            "nullable": true
          },
          "DeliveryCountyName": {
            "type": "string",
            "nullable": true
          },
          "DepartureCountyName": {
            "type": "string",
            "nullable": true
          },
          "DeliveryCityName": {
            "type": "string",
            "nullable": true
          },
          "DepartureCityName": {
            "type": "string",
            "nullable": true
          },
          "ShipmentStatus": {
            "type": "string",
            "nullable": true
          },
          "ContactToCallCenter": {
            "type": "string",
            "nullable": true
          },
          "Receiver": {
            "type": "string",
            "nullable": true
          },
          "ShipmentStatusDescription": {
            "type": "string",
            "nullable": true
          },
          "RejectStatus": {
            "type": "string",
            "nullable": true
          },
          "ShipmentTotalStatusCount": {
            "type": "integer",
            "format": "int32"
          },
          "DeliveryUnitId": {
            "type": "string",
            "nullable": true
          },
          "ShipmentStatusDescriptionColor": {
            "type": "string",
            "nullable": true
          },
          "DepartureUnitId": {
            "type": "string",
            "nullable": true
          },
          "Sender": {
            "type": "string",
            "nullable": true
          },
          "Title": {
            "type": "string",
            "nullable": true
          },
          "DeliveryCountyId": {
            "type": "integer",
            "format": "int32"
          },
          "DepartureCountyId": {
            "type": "integer",
            "format": "int32"
          },
          "ProductName": {
            "type": "string",
            "nullable": true
          },
          "DeliveryCityId": {
            "type": "integer",
            "format": "int32"
          },
          "DepartureCityId": {
            "type": "integer",
            "format": "int32"
          },
          "IsDelivered": {
            "type": "boolean"
          },
          "CallCenterPhone": {
            "type": "string",
            "nullable": true
          },
          "Id": {
            "type": "integer",
            "format": "int64"
          },
          "EstimatedDeliveryDate": {
            "type": "string",
            "nullable": true
          },
          "IsAddressDelivery": {
            "type": "boolean"
          },
          "DeliveredTo": {
            "type": "string",
            "nullable": true
          },
          "PaymentType": {
            "type": "integer",
            "format": "int32"
          },
          "ErrorMessage": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SocialData": {
        "type": "object",
        "properties": {
          "General": {
            "$ref": "#/components/schemas/SocialGeneral"
          },
          "Reddit": {
            "$ref": "#/components/schemas/RedditData"
          },
          "Twitter": {
            "$ref": "#/components/schemas/TwitterData"
          },
          "CodeRepository": {
            "$ref": "#/components/schemas/CodeRepoData"
          }
        },
        "additionalProperties": false
      },
      "SocialDataServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/SocialData"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SocialGeneral": {
        "type": "object",
        "properties": {
          "Reddit": {
            "type": "string",
            "nullable": true,
            "example": "/r/bitcoin"
          },
          "Twitter": {
            "type": "string",
            "nullable": true,
            "example": "bitcoin"
          }
        },
        "additionalProperties": false
      },
      "SocialMediaDownloadResult": {
        "type": "object",
        "properties": {
          "Success": {
            "type": "boolean"
          },
          "FileName": {
            "type": "string",
            "nullable": true
          },
          "FilePath": {
            "type": "string",
            "nullable": true
          },
          "FileSize": {
            "type": "integer",
            "format": "int64"
          },
          "FileSizeFormatted": {
            "type": "string",
            "nullable": true
          },
          "Platform": {
            "type": "string",
            "nullable": true
          },
          "DownloadedWith": {
            "type": "string",
            "nullable": true
          },
          "ErrorMessage": {
            "type": "string",
            "nullable": true
          },
          "ProcessOutput": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SocialMediaDownloadResultServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/SocialMediaDownloadResult"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SocialScrapeResponse": {
        "type": "object",
        "properties": {
          "Status": {
            "type": "string",
            "nullable": true
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "SocialMedia": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SocialScrapeResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/SocialScrapeResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SocketBroadcastRequest": {
        "type": "object",
        "properties": {
          "Action": {
            "type": "string",
            "nullable": true,
            "example": "ReceiveNotification"
          },
          "Data": {
            "nullable": true,
            "example": {
              "msg": "Sistem Bakımı Başlıyor"
            }
          }
        },
        "additionalProperties": false
      },
      "SocketGroupRequest": {
        "type": "object",
        "properties": {
          "Action": {
            "type": "string",
            "nullable": true,
            "example": "ReceiveNotification"
          },
          "Data": {
            "nullable": true,
            "example": {
              "msg": "Sistem Bakımı Başlıyor"
            }
          },
          "GroupName": {
            "type": "string",
            "nullable": true,
            "example": "AdminGroup"
          }
        },
        "additionalProperties": false
      },
      "SocketUserRequest": {
        "type": "object",
        "properties": {
          "Action": {
            "type": "string",
            "nullable": true,
            "example": "ReceiveNotification"
          },
          "Data": {
            "nullable": true,
            "example": {
              "msg": "Sistem Bakımı Başlıyor"
            }
          },
          "UserId": {
            "type": "string",
            "nullable": true,
            "example": "user_123"
          }
        },
        "additionalProperties": false
      },
      "StandardAddress": {
        "type": "object",
        "properties": {
          "Address": {
            "type": "string",
            "nullable": true
          },
          "StreetAddress": {
            "type": "string",
            "nullable": true
          },
          "StreetNumber": {
            "type": "string",
            "nullable": true
          },
          "City": {
            "type": "string",
            "nullable": true
          },
          "Region": {
            "type": "string",
            "nullable": true
          },
          "PostalCode": {
            "type": "string",
            "nullable": true
          },
          "CountryCode": {
            "type": "string",
            "nullable": true
          },
          "CountryName": {
            "type": "string",
            "nullable": true
          },
          "Latitude": {
            "type": "string",
            "nullable": true
          },
          "Longitude": {
            "type": "string",
            "nullable": true
          },
          "Confidence": {
            "type": "string",
            "nullable": true
          },
          "Distance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StockMarketPriceItem": {
        "type": "object",
        "properties": {
          "Code": {
            "type": "string",
            "nullable": true
          },
          "Name": {
            "type": "string",
            "nullable": true
          },
          "Buy": {
            "type": "string",
            "nullable": true
          },
          "Sell": {
            "type": "string",
            "nullable": true
          },
          "Change": {
            "type": "string",
            "nullable": true
          },
          "Low": {
            "type": "string",
            "nullable": true
          },
          "High": {
            "type": "string",
            "nullable": true
          },
          "Close": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StockMarketPricesResponse": {
        "type": "object",
        "properties": {
          "Items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StockMarketPriceItem"
            },
            "nullable": true
          },
          "UpdatedAt": {
            "type": "string",
            "nullable": true
          },
          "Date": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StockMarketPricesResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/StockMarketPricesResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StreamInfo": {
        "type": "object",
        "properties": {
          "VideoId": {
            "type": "string",
            "nullable": true
          },
          "PlaylistUrl": {
            "type": "string",
            "nullable": true
          },
          "PlayerUrl": {
            "type": "string",
            "nullable": true
          },
          "SegmentCount": {
            "type": "integer",
            "format": "int32"
          },
          "TotalSize": {
            "type": "integer",
            "format": "int64"
          },
          "TotalSizeFormatted": {
            "type": "string",
            "nullable": true
          },
          "CreatedAt": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "StreamInfoListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StreamInfo"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StringObjectIDictionaryListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": { }
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StringServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "string",
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SttRequest": {
        "type": "object",
        "properties": {
          "Base64": {
            "type": "string",
            "nullable": true,
            "example": "Ses dosyasının base64 içeriği"
          },
          "LanguageCode": {
            "type": "string",
            "nullable": true,
            "example": "tr-TR"
          },
          "Encoding": {
            "type": "string",
            "nullable": true,
            "example": "MP3"
          },
          "SampleRateHertz": {
            "type": "integer",
            "format": "int32",
            "example": "16000"
          }
        },
        "additionalProperties": false
      },
      "SttResult": {
        "type": "object",
        "properties": {
          "Transcript": {
            "type": "string",
            "nullable": true
          },
          "Confidence": {
            "type": "number",
            "format": "double"
          },
          "Success": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SttResultServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/SttResult"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TavilyResult": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "nullable": true
          },
          "url": {
            "type": "string",
            "nullable": true
          },
          "content": {
            "type": "string",
            "nullable": true
          },
          "score": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "TavilySearchResponse": {
        "type": "object",
        "properties": {
          "answer": {
            "type": "string",
            "nullable": true
          },
          "query": {
            "type": "string",
            "nullable": true
          },
          "results": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TavilyResult"
            },
            "nullable": true
          },
          "images": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "usage": {
            "$ref": "#/components/schemas/TavilyUsage"
          }
        },
        "additionalProperties": false
      },
      "TavilySearchResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/TavilySearchResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TavilyUsage": {
        "type": "object",
        "properties": {
          "credits": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "TaxOfficeDto": {
        "type": "object",
        "properties": {
          "VD_CODE": {
            "type": "string",
            "nullable": true
          },
          "CITY": {
            "type": "string",
            "nullable": true
          },
          "VD_NAME": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TaxOfficeDtoListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TaxOfficeDto"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TranslateRequest": {
        "type": "object",
        "properties": {
          "Text": {
            "type": "string",
            "nullable": true,
            "example": "Merhaba Dünya"
          },
          "SourceLang": {
            "type": "string",
            "nullable": true,
            "example": "tr"
          },
          "TargetLang": {
            "type": "string",
            "nullable": true,
            "example": "en"
          }
        },
        "additionalProperties": false
      },
      "TranslateResponse": {
        "type": "object",
        "properties": {
          "TranslatedText": {
            "type": "string",
            "nullable": true
          },
          "SourceLang": {
            "type": "string",
            "nullable": true
          },
          "TargetLang": {
            "type": "string",
            "nullable": true
          },
          "ProcessTime": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "TranslateResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/TranslateResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TtsRequest": {
        "type": "object",
        "properties": {
          "Text": {
            "type": "string",
            "nullable": true,
            "example": "Seslendirilecek metin"
          },
          "LanguageCode": {
            "type": "string",
            "nullable": true,
            "example": "tr-TR"
          },
          "VoiceName": {
            "type": "string",
            "nullable": true,
            "example": "tr-TR-Wavenet-C"
          },
          "AudioEncoding": {
            "type": "string",
            "nullable": true,
            "example": "MP3"
          }
        },
        "additionalProperties": false
      },
      "TtsResult": {
        "type": "object",
        "properties": {
          "Base64": {
            "type": "string",
            "nullable": true
          },
          "Success": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TtsResultServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/TtsResult"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TwitterData": {
        "type": "object",
        "properties": {
          "followers": {
            "type": "integer",
            "format": "int64",
            "example": "1000000"
          },
          "lists": {
            "type": "integer",
            "format": "int64",
            "example": "500"
          },
          "statuses": {
            "type": "integer",
            "format": "int64",
            "example": "12000"
          },
          "favourites": {
            "type": "integer",
            "format": "int64",
            "example": "4500"
          }
        },
        "additionalProperties": false
      },
      "UpdateProfileRequest": {
        "type": "object",
        "properties": {
          "FullName": {
            "type": "string",
            "nullable": true,
            "example": "Can Yılmaz"
          },
          "Bio": {
            "type": "string",
            "nullable": true,
            "example": "Yazılım Geliştirici"
          },
          "Age": {
            "type": "integer",
            "format": "int32",
            "example": "30"
          }
        },
        "additionalProperties": false
      },
      "UrlShortDto": {
        "type": "object",
        "properties": {
          "LongUrl": {
            "type": "string",
            "nullable": true
          },
          "ShortUrl": {
            "type": "string",
            "nullable": true
          },
          "StatsUrl": {
            "type": "string",
            "nullable": true
          },
          "Success": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UrlShortDtoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/UrlShortDto"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UrlStatsDto": {
        "type": "object",
        "properties": {
          "ShortUrl": {
            "type": "string",
            "nullable": true
          },
          "StatsPageUrl": {
            "type": "string",
            "nullable": true
          },
          "TotalClicks": {
            "type": "integer",
            "format": "int32"
          },
          "CreatedDate": {
            "type": "string",
            "nullable": true
          },
          "LongUrl": {
            "type": "string",
            "nullable": true
          },
          "Success": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UrlStatsDtoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/UrlStatsDto"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UserProfile": {
        "type": "object",
        "properties": {
          "Username": {
            "type": "string",
            "nullable": true
          },
          "UserId": {
            "type": "string",
            "nullable": true
          },
          "Role": {
            "type": "string",
            "nullable": true
          },
          "LastLogin": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "VideoStreamInfo": {
        "type": "object",
        "properties": {
          "FileName": {
            "type": "string",
            "nullable": true
          },
          "Duration": {
            "type": "integer",
            "format": "int32"
          },
          "DurationFormatted": {
            "type": "string",
            "nullable": true
          },
          "Width": {
            "type": "integer",
            "format": "int32"
          },
          "Height": {
            "type": "integer",
            "format": "int32"
          },
          "Resolution": {
            "type": "string",
            "nullable": true
          },
          "FileSize": {
            "type": "integer",
            "format": "int64"
          },
          "FileSizeFormatted": {
            "type": "string",
            "nullable": true
          },
          "Bitrate": {
            "type": "string",
            "nullable": true
          },
          "Fps": {
            "type": "string",
            "nullable": true
          },
          "Format": {
            "type": "string",
            "nullable": true
          },
          "AspectRatio": {
            "type": "string",
            "nullable": true
          },
          "AudioFormat": {
            "type": "string",
            "nullable": true
          },
          "AudioSampleRate": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "VideoStreamInfoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/VideoStreamInfo"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Village": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "districtId": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "VillageListServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Village"
            },
            "nullable": true
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WeatherDto": {
        "type": "object",
        "properties": {
          "City": {
            "type": "string",
            "nullable": true
          },
          "WeatherDescription": {
            "type": "string",
            "nullable": true
          },
          "Temperature": {
            "type": "string",
            "nullable": true
          },
          "FeelsLike": {
            "type": "string",
            "nullable": true
          },
          "Humidity": {
            "type": "string",
            "nullable": true
          },
          "WindSpeed": {
            "type": "string",
            "nullable": true
          },
          "Pressure": {
            "type": "string",
            "nullable": true
          },
          "Icon": {
            "type": "string",
            "nullable": true
          },
          "Forecasts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ForecastDto"
            },
            "nullable": true
          },
          "FormattedTemperature": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "WeatherIcon": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "WeatherDtoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/WeatherDto"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WhatsappBulkMessageRequest": {
        "type": "object",
        "properties": {
          "Recipients": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WhatsappBulkMessageResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "error": {
            "nullable": true
          },
          "totalRecipients": {
            "type": "integer",
            "format": "int32"
          },
          "successCount": {
            "type": "integer",
            "format": "int32"
          },
          "errorCount": {
            "type": "integer",
            "format": "int32"
          },
          "results": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WhatsappBulkMessageResult"
            },
            "nullable": true
          },
          "timestamp": {
            "type": "integer",
            "format": "int64"
          }
        },
        "additionalProperties": false
      },
      "WhatsappBulkMessageResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/WhatsappBulkMessageResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WhatsappBulkMessageResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "error": {
            "nullable": true
          },
          "recipient": {
            "type": "string",
            "nullable": true
          },
          "index": {
            "type": "integer",
            "format": "int32"
          },
          "messageId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WhatsappCheckNumberResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "error": {
            "nullable": true
          },
          "number": {
            "type": "string",
            "nullable": true
          },
          "formattedNumber": {
            "type": "string",
            "nullable": true
          },
          "isRegistered": {
            "type": "boolean"
          },
          "whatsAppId": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WhatsappCheckNumberResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/WhatsappCheckNumberResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WhatsappSendFileResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "error": {
            "nullable": true
          },
          "to": {
            "type": "string",
            "nullable": true
          },
          "caption": {
            "type": "string",
            "nullable": true
          },
          "totalFiles": {
            "type": "integer",
            "format": "int32"
          },
          "successCount": {
            "type": "integer",
            "format": "int32"
          },
          "errorCount": {
            "type": "integer",
            "format": "int32"
          },
          "results": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WhatsappSendFileResult"
            },
            "nullable": true
          },
          "timestamp": {
            "type": "integer",
            "format": "int64"
          }
        },
        "additionalProperties": false
      },
      "WhatsappSendFileResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/WhatsappSendFileResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WhatsappSendFileResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "error": {
            "nullable": true
          },
          "filename": {
            "type": "string",
            "nullable": true
          },
          "mimetype": {
            "type": "string",
            "nullable": true
          },
          "size": {
            "type": "integer",
            "format": "int64"
          },
          "messageId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WhatsappSendMessageRequest": {
        "type": "object",
        "properties": {
          "To": {
            "type": "string",
            "nullable": true
          },
          "Message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WhatsappSendMessageResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "error": {
            "nullable": true
          },
          "to": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "messageId": {
            "type": "string",
            "nullable": true
          },
          "timestamp": {
            "type": "integer",
            "format": "int64"
          }
        },
        "additionalProperties": false
      },
      "WhatsappSendMessageResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/WhatsappSendMessageResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WhatsappStatusResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "error": {
            "nullable": true
          },
          "isReady": {
            "type": "boolean"
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "credit": {
            "type": "integer",
            "format": "int32"
          },
          "isUnlimitedCredit": {
            "type": "boolean"
          },
          "loadingPercent": {
            "type": "integer",
            "format": "int32"
          },
          "loadingMessage": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WhatsappStatusResponseServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/WhatsappStatusResponse"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WhoisDto": {
        "type": "object",
        "properties": {
          "Domain": {
            "type": "string",
            "nullable": true
          },
          "Raw": {
            "type": "string",
            "nullable": true
          },
          "Status": {
            "type": "integer",
            "format": "int32"
          },
          "ExpirationDate": {
            "type": "string",
            "nullable": true
          },
          "CreatedDate": {
            "type": "string",
            "nullable": true
          },
          "UpdatedDate": {
            "type": "string",
            "nullable": true
          },
          "Registrar": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WhoisDtoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/WhoisDto"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "YouTubeDownloadResult": {
        "type": "object",
        "properties": {
          "Success": {
            "type": "boolean"
          },
          "FileName": {
            "type": "string",
            "nullable": true
          },
          "FilePath": {
            "type": "string",
            "nullable": true
          },
          "FileSize": {
            "type": "integer",
            "format": "int64"
          },
          "FileSizeFormatted": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "ErrorMessage": {
            "type": "string",
            "nullable": true
          },
          "ProcessOutput": {
            "type": "string",
            "nullable": true
          },
          "VideoInfo": {
            "$ref": "#/components/schemas/YouTubeVideoInfo"
          }
        },
        "additionalProperties": false
      },
      "YouTubeDownloadResultServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/YouTubeDownloadResult"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "YouTubeVideoInfo": {
        "type": "object",
        "properties": {
          "Title": {
            "type": "string",
            "nullable": true
          },
          "Duration": {
            "type": "integer",
            "format": "int32"
          },
          "DurationFormatted": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "Channel": {
            "type": "string",
            "nullable": true
          },
          "Thumbnail": {
            "type": "string",
            "nullable": true
          },
          "ViewCount": {
            "type": "integer",
            "format": "int64"
          },
          "UploadDate": {
            "type": "string",
            "nullable": true
          },
          "Description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "YouTubeVideoInfoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/YouTubeVideoInfo"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "YoutubeChannelAnalysis": {
        "type": "object",
        "properties": {
          "Title": {
            "type": "string",
            "nullable": true
          },
          "CustomUrl": {
            "type": "string",
            "nullable": true
          },
          "PublishedAt": {
            "type": "string",
            "nullable": true
          },
          "Thumbnail": {
            "type": "string",
            "nullable": true
          },
          "SubscriberCount": {
            "type": "integer",
            "format": "int64"
          },
          "ViewCount": {
            "type": "integer",
            "format": "int64"
          },
          "VideoCount": {
            "type": "integer",
            "format": "int64"
          }
        },
        "additionalProperties": false
      },
      "YoutubeChannelAnalysisServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/YoutubeChannelAnalysis"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "YoutubeComment": {
        "type": "object",
        "properties": {
          "AuthorName": {
            "type": "string",
            "nullable": true
          },
          "AuthorAvatar": {
            "type": "string",
            "nullable": true
          },
          "Text": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "YoutubeVideoAnalysis": {
        "type": "object",
        "properties": {
          "Title": {
            "type": "string",
            "nullable": true
          },
          "Channel": {
            "type": "string",
            "nullable": true
          },
          "ChannelId": {
            "type": "string",
            "nullable": true
          },
          "PublishedAt": {
            "type": "string",
            "nullable": true
          },
          "Thumbnail": {
            "type": "string",
            "nullable": true
          },
          "ViewCount": {
            "type": "integer",
            "format": "int64"
          },
          "LikeCount": {
            "type": "integer",
            "format": "int64"
          },
          "CommentCount": {
            "type": "integer",
            "format": "int64"
          },
          "EstimatedEarnings": {
            "type": "number",
            "format": "double"
          },
          "TopComments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/YoutubeComment"
            },
            "nullable": true
          },
          "ChannelInfo": {
            "$ref": "#/components/schemas/YoutubeChannelAnalysis"
          }
        },
        "additionalProperties": false
      },
      "YoutubeVideoAnalysisServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/YoutubeVideoAnalysis"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "YurticiResponseDto": {
        "type": "object",
        "properties": {
          "Status": {
            "type": "boolean"
          },
          "Data": {
            "$ref": "#/components/schemas/ShipmentInfo"
          },
          "Error": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "YurticiResponseDtoServiceResult": {
        "type": "object",
        "properties": {
          "Value": {
            "$ref": "#/components/schemas/YurticiResponseDto"
          },
          "Error": {
            "type": "boolean"
          },
          "Message": {
            "type": "string",
            "nullable": true
          },
          "StatusCode": {
            "type": "integer",
            "format": "int32"
          },
          "ModelState": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModelStateResult"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ZplConversionRequest": {
        "type": "object",
        "properties": {
          "ZplCode": {
            "type": "string",
            "nullable": true
          },
          "Size": {
            "type": "string",
            "nullable": true
          },
          "Rotation": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "http",
        "description": "JWT Authorization header using the Bearer scheme. Example: \"Authorization: Bearer {token}\"",
        "scheme": "Bearer"
      }
    }
  },
  "security": [
    {
      "Bearer": [
        "Bearer"
      ]
    }
  ]
}