{
    "openapi": "3.0.3",
    "info": {
        "title": "NetEsnaf ERP REST API",
        "version": "1.0.0",
        "description": "NetEsnaf ERP genel API'si. Kimlik dogrulama JWT Bearer Token ile. Once /auth/login ile token alin, sonra Authorization: Bearer <token> gonderin. Tarihler YYYY-MM-DD, tutarlar nokta ondalikli. Liste uclari sayfa/limit query destekler.",
        "contact": {
            "email": "destek@datanetbilisim.com"
        }
    },
    "servers": [
        {
            "url": "https://netesnaf.net/api/v1"
        }
    ],
    "components": {
        "securitySchemes": {
            "bearerAuth": {
                "type": "http",
                "scheme": "bearer",
                "bearerFormat": "JWT"
            }
        }
    },
    "paths": {
        "/musteritedarikci/liste": {
            "get": {
                "tags": [
                    "Cari (Musteri / Tedarikci)"
                ],
                "summary": "Cari listesi",
                "operationId": "musteritedarikci_liste",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "arama",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "durum",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "grup_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/musteritedarikci/detay": {
            "get": {
                "tags": [
                    "Cari (Musteri / Tedarikci)"
                ],
                "summary": "Tek cari detayi",
                "operationId": "musteritedarikci_detay",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/musteritedarikci/kaydet": {
            "post": {
                "tags": [
                    "Cari (Musteri / Tedarikci)"
                ],
                "summary": "Cari ekle/guncelle (id ile guncelleme; yalniz gonderilen alanlar)",
                "operationId": "musteritedarikci_kaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "unvan": {
                                        "type": "string"
                                    },
                                    "id": {
                                        "type": "integer"
                                    },
                                    "kod": {
                                        "type": "string"
                                    },
                                    "ad": {
                                        "type": "string"
                                    },
                                    "soyad": {
                                        "type": "string"
                                    },
                                    "vkn": {
                                        "type": "string"
                                    },
                                    "vdaire": {
                                        "type": "string"
                                    },
                                    "grup_id": {
                                        "type": "integer"
                                    },
                                    "il": {
                                        "type": "string"
                                    },
                                    "ilce": {
                                        "type": "string"
                                    },
                                    "adres": {
                                        "type": "string"
                                    },
                                    "ceptel": {
                                        "type": "string"
                                    },
                                    "eposta": {
                                        "type": "string"
                                    },
                                    "durum": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "unvan"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/musteritedarikci/sil": {
            "post": {
                "tags": [
                    "Cari (Musteri / Tedarikci)"
                ],
                "summary": "Cari sil",
                "operationId": "musteritedarikci_sil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/musteritedarikci/bakiye": {
            "get": {
                "tags": [
                    "Cari (Musteri / Tedarikci)"
                ],
                "summary": "Cari bakiye (borc/alacak/net)",
                "operationId": "musteritedarikci_bakiye",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "cari_id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/musteritedarikci/bakiyerapor": {
            "get": {
                "tags": [
                    "Cari (Musteri / Tedarikci)"
                ],
                "summary": "Tum cariler bakiye raporu",
                "operationId": "musteritedarikci_bakiyerapor",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "arama",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ]
            }
        },
        "/musteritedarikci/hareketler": {
            "get": {
                "tags": [
                    "Cari (Musteri / Tedarikci)"
                ],
                "summary": "Cari hareket ekstresi",
                "operationId": "musteritedarikci_hareketler",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "baslangic",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "bitis",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "evrak_tip",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/musteritedarikci/gruplar": {
            "get": {
                "tags": [
                    "Cari (Musteri / Tedarikci)"
                ],
                "summary": "Cari gruplari",
                "operationId": "musteritedarikci_gruplar",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": []
            }
        },
        "/musteritedarikci/grupkaydet": {
            "post": {
                "tags": [
                    "Cari (Musteri / Tedarikci)"
                ],
                "summary": "Grup ekle/guncelle",
                "operationId": "musteritedarikci_grupkaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "ad": {
                                        "type": "string"
                                    },
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "ad"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/musteritedarikci/grupsil": {
            "post": {
                "tags": [
                    "Cari (Musteri / Tedarikci)"
                ],
                "summary": "Grup sil (bagli cari yoksa)",
                "operationId": "musteritedarikci_grupsil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/musteritedarikci/yetkililer": {
            "get": {
                "tags": [
                    "Cari (Musteri / Tedarikci)"
                ],
                "summary": "Cari yetkilileri",
                "operationId": "musteritedarikci_yetkililer",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "cari_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/musteritedarikci/yetkiliekle": {
            "post": {
                "tags": [
                    "Cari (Musteri / Tedarikci)"
                ],
                "summary": "Yetkili ekle",
                "operationId": "musteritedarikci_yetkiliekle",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "cari_id": {
                                        "type": "integer"
                                    },
                                    "adsoyad": {
                                        "type": "string"
                                    },
                                    "gorev": {
                                        "type": "string"
                                    },
                                    "tel": {
                                        "type": "string"
                                    },
                                    "eposta": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "cari_id",
                                    "adsoyad"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/musteritedarikci/yetkilisil": {
            "post": {
                "tags": [
                    "Cari (Musteri / Tedarikci)"
                ],
                "summary": "Yetkili sil",
                "operationId": "musteritedarikci_yetkilisil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/liste": {
            "get": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Urun/stok listesi",
                "operationId": "urunhizmet_liste",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "arama",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "durum",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "grup_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "tip",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ]
            }
        },
        "/urunhizmet/detay": {
            "get": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Tek urun detayi",
                "operationId": "urunhizmet_detay",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/urunhizmet/kaydet": {
            "post": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Urun ekle/guncelle",
                "operationId": "urunhizmet_kaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "ad": {
                                        "type": "string"
                                    },
                                    "id": {
                                        "type": "integer"
                                    },
                                    "kod": {
                                        "type": "string"
                                    },
                                    "tip": {
                                        "type": "string"
                                    },
                                    "barkod": {
                                        "type": "string"
                                    },
                                    "grup_id": {
                                        "type": "integer"
                                    },
                                    "birim_id": {
                                        "type": "integer"
                                    },
                                    "alis_fiyat": {
                                        "type": "number"
                                    },
                                    "satis_fiyat": {
                                        "type": "number"
                                    },
                                    "alis_kdv": {
                                        "type": "integer"
                                    },
                                    "satis_kdv": {
                                        "type": "integer"
                                    },
                                    "durum": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "ad"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/sil": {
            "post": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Urun sil",
                "operationId": "urunhizmet_sil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/bakiye": {
            "get": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Urun stok bakiyesi",
                "operationId": "urunhizmet_bakiye",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "depo_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/urunhizmet/hareketler": {
            "get": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Stok hareketleri",
                "operationId": "urunhizmet_hareketler",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "baslangic",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "bitis",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "depo_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "evrak_tip",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/urunhizmet/fiskaydet": {
            "post": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Stok fisi (giris/cikis)",
                "operationId": "urunhizmet_fiskaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "evrak_tip": {
                                        "type": "integer"
                                    },
                                    "evrak_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "satirlar": {
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "depo_id": {
                                        "type": "integer"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    },
                                    "cari_id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "evrak_tip",
                                    "evrak_tarih",
                                    "satirlar"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/fisdetay": {
            "get": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Stok fisi detayi",
                "operationId": "urunhizmet_fisdetay",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/urunhizmet/fissil": {
            "post": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Stok fisi sil",
                "operationId": "urunhizmet_fissil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/gruplar": {
            "get": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Stok gruplari",
                "operationId": "urunhizmet_gruplar",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": []
            }
        },
        "/urunhizmet/grupkaydet": {
            "post": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Grup ekle/guncelle",
                "operationId": "urunhizmet_grupkaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "ad": {
                                        "type": "string"
                                    },
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "ad"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/grupsil": {
            "post": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Grup sil",
                "operationId": "urunhizmet_grupsil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/birimler": {
            "get": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Birim listesi",
                "operationId": "urunhizmet_birimler",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": []
            }
        },
        "/urunhizmet/birimkaydet": {
            "post": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Birim ekle/guncelle",
                "operationId": "urunhizmet_birimkaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "ad": {
                                        "type": "string"
                                    },
                                    "id": {
                                        "type": "integer"
                                    },
                                    "kisa_ad": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "ad"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/birimsil": {
            "post": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Birim sil",
                "operationId": "urunhizmet_birimsil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/depolar": {
            "get": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Depo listesi",
                "operationId": "urunhizmet_depolar",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": []
            }
        },
        "/urunhizmet/depokaydet": {
            "post": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Depo ekle/guncelle",
                "operationId": "urunhizmet_depokaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "ad": {
                                        "type": "string"
                                    },
                                    "id": {
                                        "type": "integer"
                                    },
                                    "kod": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "ad"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/deposil": {
            "post": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Depo sil",
                "operationId": "urunhizmet_deposil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/serino": {
            "get": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Seri no sorgu",
                "operationId": "urunhizmet_serino",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "stok_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "seri_no",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ]
            }
        },
        "/urunhizmet/aboneliklistele": {
            "get": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Abonelik listesi",
                "operationId": "urunhizmet_aboneliklistele",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "arama",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "durum",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cari_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/urunhizmet/abonelikdetay": {
            "get": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Tek abonelik detayi",
                "operationId": "urunhizmet_abonelikdetay",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/urunhizmet/abonelikkaydet": {
            "post": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Abonelik ekle/guncelle. Tarihler ISO (YYYY-MM-DD). periyot_tip 1=gun,2=ay,3=yil. Guncellemede yalniz gonderilen alanlar; bitis_tarih degisince hareket islenir",
                "operationId": "urunhizmet_abonelikkaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "cari_id": {
                                        "type": "integer"
                                    },
                                    "stok_id": {
                                        "type": "integer"
                                    },
                                    "baslangic_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "bitis_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "periyot_tip": {
                                        "type": "integer"
                                    },
                                    "periyot_deger": {
                                        "type": "integer"
                                    },
                                    "id": {
                                        "type": "integer"
                                    },
                                    "detay": {
                                        "type": "string"
                                    },
                                    "hatirlatma_gun": {
                                        "type": "integer"
                                    },
                                    "birim_fiyat": {
                                        "type": "number"
                                    },
                                    "para_birim": {
                                        "type": "integer"
                                    },
                                    "islem_yeri_id": {
                                        "type": "integer"
                                    },
                                    "notlar": {
                                        "type": "string"
                                    },
                                    "durum": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "cari_id",
                                    "stok_id",
                                    "baslangic_tarih",
                                    "bitis_tarih",
                                    "periyot_tip",
                                    "periyot_deger"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/aboneliksil": {
            "post": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Abonelik sil (soft delete)",
                "operationId": "urunhizmet_aboneliksil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/abonelikyenile": {
            "post": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Faturasiz abonelik yenile (periyot kadar uzat)",
                "operationId": "urunhizmet_abonelikyenile",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/urunhizmet/abonelikyaklasan": {
            "get": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Bitisi yaklasan abonelikler",
                "operationId": "urunhizmet_abonelikyaklasan",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "gun",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/urunhizmet/abonelikistatistik": {
            "get": {
                "tags": [
                    "Urun / Hizmet / Stok"
                ],
                "summary": "Abonelik ozet istatistik",
                "operationId": "urunhizmet_abonelikistatistik",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": []
            }
        },
        "/fatura/liste": {
            "get": {
                "tags": [
                    "Fatura"
                ],
                "summary": "Fatura listesi",
                "operationId": "fatura_liste",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "arama",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "baslangic",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "bitis",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "evrak_tip",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cari_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/fatura/detay": {
            "get": {
                "tags": [
                    "Fatura"
                ],
                "summary": "Fatura detayi (satirlariyla)",
                "operationId": "fatura_detay",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/fatura/kaydet": {
            "post": {
                "tags": [
                    "Fatura"
                ],
                "summary": "Fatura olustur/guncelle. evrak_tip 301=satis, 302=alis. satirlar[] icinde: stok_id, miktar, birim_fiyat, kdv_oran, iskonto_oran, birim_id, birim_kod, depo_id",
                "operationId": "fatura_kaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "evrak_tip": {
                                        "type": "integer"
                                    },
                                    "fatura_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "cari_id": {
                                        "type": "integer"
                                    },
                                    "satirlar": {
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "id": {
                                        "type": "integer"
                                    },
                                    "cari_kod": {
                                        "type": "string"
                                    },
                                    "cari_unvan": {
                                        "type": "string"
                                    },
                                    "parabirimi": {
                                        "type": "string"
                                    },
                                    "kur_katsayi": {
                                        "type": "number"
                                    },
                                    "vade_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "depo_id": {
                                        "type": "integer"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "evrak_tip",
                                    "fatura_tarih",
                                    "cari_id",
                                    "satirlar"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/fatura/sil": {
            "post": {
                "tags": [
                    "Fatura"
                ],
                "summary": "Fatura sil (stok/cari geri alinir)",
                "operationId": "fatura_sil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/kasa/kasalar": {
            "get": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Kasa/banka listesi",
                "operationId": "kasa_kasalar",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": []
            }
        },
        "/kasa/gunceldurum": {
            "get": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Tum kasalarin guncel bakiyesi",
                "operationId": "kasa_gunceldurum",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": []
            }
        },
        "/kasa/kasadetay": {
            "get": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Kasa detay + bakiye",
                "operationId": "kasa_kasadetay",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/kasa/kasakaydet": {
            "post": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Kasa/banka ekle/guncelle. tip 1=kasa, 2=banka",
                "operationId": "kasa_kasakaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "ad": {
                                        "type": "string"
                                    },
                                    "tip": {
                                        "type": "string"
                                    },
                                    "id": {
                                        "type": "integer"
                                    },
                                    "kod": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "ad",
                                    "tip"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/kasa/kasasil": {
            "post": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Kasa sil",
                "operationId": "kasa_kasasil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/kasa/hareketler": {
            "get": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Kasa hareketleri",
                "operationId": "kasa_hareketler",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "kasa_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "baslangic",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "bitis",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ]
            }
        },
        "/kasa/fiskaydet": {
            "post": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Tahsilat/Odeme fisi. evrak_tip 201=tahsilat, 202=odeme",
                "operationId": "kasa_fiskaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "kasa_id": {
                                        "type": "integer"
                                    },
                                    "evrak_tip": {
                                        "type": "integer"
                                    },
                                    "evrak_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "tutar": {
                                        "type": "number"
                                    },
                                    "cari_id": {
                                        "type": "integer"
                                    },
                                    "cari_kod": {
                                        "type": "string"
                                    },
                                    "cari_unvan": {
                                        "type": "string"
                                    },
                                    "parabirimi": {
                                        "type": "string"
                                    },
                                    "kur_katsayi": {
                                        "type": "number"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    },
                                    "vade_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    }
                                },
                                "required": [
                                    "kasa_id",
                                    "evrak_tip",
                                    "evrak_tarih",
                                    "tutar"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/kasa/fissil": {
            "post": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Kasa fisi sil",
                "operationId": "kasa_fissil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/kasa/virman": {
            "post": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Kasalar arasi virman",
                "operationId": "kasa_virman",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "kaynak_kasa_id": {
                                        "type": "integer"
                                    },
                                    "hedef_kasa_id": {
                                        "type": "integer"
                                    },
                                    "evrak_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "tutar": {
                                        "type": "number"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    },
                                    "parabirimi": {
                                        "type": "string"
                                    },
                                    "kur_katsayi": {
                                        "type": "number"
                                    }
                                },
                                "required": [
                                    "kaynak_kasa_id",
                                    "hedef_kasa_id",
                                    "evrak_tarih",
                                    "tutar"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/kasa/islemtipleri": {
            "get": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Islem tipleri",
                "operationId": "kasa_islemtipleri",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": []
            }
        },
        "/kasa/masraffisler": {
            "get": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Masraf fisleri",
                "operationId": "kasa_masraffisler",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "baslangic",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "bitis",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ]
            }
        },
        "/kasa/masraffiskaydet": {
            "post": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Masraf fisi (odendiyse kasa cikisi)",
                "operationId": "kasa_masraffiskaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "masraf_id": {
                                        "type": "integer"
                                    },
                                    "tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "tutar": {
                                        "type": "number"
                                    },
                                    "odeme_durum": {
                                        "type": "integer"
                                    },
                                    "kasa_id": {
                                        "type": "integer"
                                    },
                                    "cari_id": {
                                        "type": "integer"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    },
                                    "parabirimi": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "masraf_id",
                                    "tarih",
                                    "tutar"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/kasa/masraffissil": {
            "post": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Masraf fisi sil",
                "operationId": "kasa_masraffissil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/kasa/masrafkartlar": {
            "get": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Masraf kartlari",
                "operationId": "kasa_masrafkartlar",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": []
            }
        },
        "/kasa/masrafkartkaydet": {
            "post": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Masraf karti ekle/guncelle",
                "operationId": "kasa_masrafkartkaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "ad": {
                                        "type": "string"
                                    },
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "ad"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/kasa/masrafkartsil": {
            "post": {
                "tags": [
                    "Kasa / Banka"
                ],
                "summary": "Masraf karti sil",
                "operationId": "kasa_masrafkartsil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/siparis/liste": {
            "get": {
                "tags": [
                    "Siparis"
                ],
                "summary": "Siparis listesi",
                "operationId": "siparis_liste",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "arama",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "baslangic",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "bitis",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "islem_tip",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cari_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "durum_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/siparis/detay": {
            "get": {
                "tags": [
                    "Siparis"
                ],
                "summary": "Siparis detayi",
                "operationId": "siparis_detay",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/siparis/kaydet": {
            "post": {
                "tags": [
                    "Siparis"
                ],
                "summary": "Siparis olustur/guncelle. islem_tip 0=Alinan, 1=Verilen. satirlar[]: stok_id, miktar, birim_fiyat, kdv_oran",
                "operationId": "siparis_kaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "islem_tip": {
                                        "type": "integer"
                                    },
                                    "siparis_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "cari_id": {
                                        "type": "integer"
                                    },
                                    "satirlar": {
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "id": {
                                        "type": "integer"
                                    },
                                    "depo_id": {
                                        "type": "integer"
                                    },
                                    "vade_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "teslimat_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "islem_tip",
                                    "siparis_tarih",
                                    "cari_id",
                                    "satirlar"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/siparis/durumdegistir": {
            "post": {
                "tags": [
                    "Siparis"
                ],
                "summary": "Siparis durum degistir",
                "operationId": "siparis_durumdegistir",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    },
                                    "durum_id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id",
                                    "durum_id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/siparis/durumlar": {
            "get": {
                "tags": [
                    "Siparis"
                ],
                "summary": "Siparis durum tanimlari",
                "operationId": "siparis_durumlar",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": []
            }
        },
        "/siparis/sil": {
            "post": {
                "tags": [
                    "Siparis"
                ],
                "summary": "Siparis sil (rezerve stok geri alinir)",
                "operationId": "siparis_sil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/servis/servisler": {
            "get": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Is emri listesi",
                "operationId": "servis_servisler",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "baslangic",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "bitis",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "durum",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "ana_position",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "kategori_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "musteri_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "personel_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/servis/servisdetay": {
            "get": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Is emri detayi",
                "operationId": "servis_servisdetay",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/servis/serviskaydet": {
            "post": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Is emri olustur. ana_position 1-5",
                "operationId": "servis_serviskaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "musteri_id": {
                                        "type": "integer"
                                    },
                                    "kategori_id": {
                                        "type": "integer"
                                    },
                                    "cihaz_id": {
                                        "type": "integer"
                                    },
                                    "ana_position": {
                                        "type": "string"
                                    },
                                    "servis_tipi": {
                                        "type": "string"
                                    },
                                    "oncelik": {
                                        "type": "string"
                                    },
                                    "personel_id": {
                                        "type": "integer"
                                    },
                                    "anlasma_id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "musteri_id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/servis/servisdurumguncelle": {
            "post": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Is emri durum guncelle. ana_position 1=Yeni,2=Baslandi,3=Inceleniyor,4=Tamamlandi,5=Iptal",
                "operationId": "servis_servisdurumguncelle",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    },
                                    "ana_position": {
                                        "type": "string"
                                    },
                                    "alt_position": {
                                        "type": "string"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "id",
                                    "ana_position"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/servis/servissil": {
            "post": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Is emri sil",
                "operationId": "servis_servissil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/servis/talepler": {
            "get": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Servis talepleri",
                "operationId": "servis_talepler",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "musteri_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/servis/talepkaydet": {
            "post": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Talep olustur (yer: CARI/CRM/MANUEL, varsayilan CARI). musteri_id yalniz yer=CARI'da zorunlu; durum her zaman YENI.",
                "operationId": "servis_talepkaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "konu": {
                                        "type": "string"
                                    },
                                    "musteri_id": {
                                        "type": "integer"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    },
                                    "cihaz_id": {
                                        "type": "integer"
                                    },
                                    "kaynak": {
                                        "type": "string"
                                    },
                                    "yer": {
                                        "type": "string"
                                    },
                                    "ilgilenen_id": {
                                        "type": "integer"
                                    },
                                    "manuel_ad": {
                                        "type": "string"
                                    },
                                    "manuel_tel": {
                                        "type": "string"
                                    },
                                    "kategori_id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "konu"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/servis/talepsil": {
            "post": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Talep sil",
                "operationId": "servis_talepsil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/servis/cihazlar": {
            "get": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Cihaz listesi",
                "operationId": "servis_cihazlar",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "musteri_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/servis/cihazkaydet": {
            "post": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Cihaz ekle",
                "operationId": "servis_cihazkaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "musteri_id": {
                                        "type": "integer"
                                    },
                                    "ad": {
                                        "type": "string"
                                    },
                                    "marka": {
                                        "type": "string"
                                    },
                                    "model": {
                                        "type": "string"
                                    },
                                    "seri_no": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "musteri_id",
                                    "ad"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/servis/cihazsil": {
            "post": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Cihaz sil",
                "operationId": "servis_cihazsil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/servis/kategoriler": {
            "get": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Servis kategorileri",
                "operationId": "servis_kategoriler",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": []
            }
        },
        "/servis/kategorikaydet": {
            "post": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Kategori ekle",
                "operationId": "servis_kategorikaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "ad": {
                                        "type": "string"
                                    },
                                    "parent_id": {
                                        "type": "integer"
                                    },
                                    "sla_sure": {
                                        "type": "number"
                                    }
                                },
                                "required": [
                                    "ad"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/servis/kategorisil": {
            "post": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Kategori sil",
                "operationId": "servis_kategorisil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/servis/anlasmalar": {
            "get": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Bakim anlasmalari",
                "operationId": "servis_anlasmalar",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "musteri_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/servis/anlasmadetay": {
            "get": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Anlasma detayi",
                "operationId": "servis_anlasmadetay",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/servis/anlasmakaydet": {
            "post": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Anlasma ekle",
                "operationId": "servis_anlasmakaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "musteri_id": {
                                        "type": "integer"
                                    },
                                    "baslik": {
                                        "type": "string"
                                    },
                                    "baslangic_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "bitis_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "tutar": {
                                        "type": "number"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "musteri_id",
                                    "baslik",
                                    "baslangic_tarih",
                                    "bitis_tarih"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/servis/anlasmasil": {
            "post": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Anlasma sil",
                "operationId": "servis_anlasmasil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/servis/zamanekle": {
            "post": {
                "tags": [
                    "Servis (Teknik Servis)"
                ],
                "summary": "Is emrine zaman/iscilik ekle",
                "operationId": "servis_zamanekle",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "servis_id": {
                                        "type": "integer"
                                    },
                                    "personel_id": {
                                        "type": "integer"
                                    },
                                    "sure": {
                                        "type": "number"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "servis_id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/istakip/ilgilenenkaydet": {
            "post": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Aday olustur/guncelle (UPSERT). ZORUNLU: ad VEYA firma (en az biri dolu olmali). Ayni tenantta telefonu eslesen silinmemis aday varsa (hangi asamada olursa olsun) GUNCELLENIR, yoksa olusturulur; telefon yoksa eposta ile eslesir. Yanit: id + olusturuldu(true=yeni). Gonderilmeyen VEYA bos gonderilen alan mevcut degerini korur (alan API ile temizlenemez)",
                "operationId": "istakip_ilgilenenkaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "ad": {
                                        "type": "string"
                                    },
                                    "soyad": {
                                        "type": "string"
                                    },
                                    "firma": {
                                        "type": "string"
                                    },
                                    "telefon": {
                                        "type": "string"
                                    },
                                    "eposta": {
                                        "type": "string"
                                    },
                                    "adres": {
                                        "type": "string"
                                    },
                                    "kaynak": {
                                        "type": "string"
                                    },
                                    "ne_istiyor": {
                                        "type": "string"
                                    },
                                    "grup_id": {
                                        "type": "integer"
                                    },
                                    "atanan_kullanici": {
                                        "type": "string"
                                    },
                                    "not_genel": {
                                        "type": "string"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/istakip/ilgilenenler": {
            "get": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Aday listesi. durum filtresi verilmezse tum aktif adaylar",
                "operationId": "istakip_ilgilenenler",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "durum",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "grup_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "kaynak",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "telefon",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "baslangic",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "bitis",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "arama",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ]
            }
        },
        "/istakip/ilgilenendetay": {
            "get": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Aday detayi + son 20 gorusme + firsatlar",
                "operationId": "istakip_ilgilenendetay",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/istakip/gorusmekaydet": {
            "post": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Gorusme/not kaydi. ZORUNLU: ilgilenen_id VEYA cari_id (en az biri). tur: telefon,ziyaret,tekrar_ara,hatirlatma,not (varsayilan not)",
                "operationId": "istakip_gorusmekaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "ilgilenen_id": {
                                        "type": "integer"
                                    },
                                    "cari_id": {
                                        "type": "integer"
                                    },
                                    "tur": {
                                        "type": "string"
                                    },
                                    "konu": {
                                        "type": "string"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    },
                                    "gorusme_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "hatirlatma_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/istakip/firsatkaydet": {
            "post": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Firsat olustur. ZORUNLU: ilgilenen_id VEYA cari_id VEYA musteri_ad (en az biri). asama 1-6 (varsayilan 1)",
                "operationId": "istakip_firsatkaydet",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "ilgilenen_id": {
                                        "type": "integer"
                                    },
                                    "cari_id": {
                                        "type": "integer"
                                    },
                                    "musteri_ad": {
                                        "type": "string"
                                    },
                                    "is_konusu": {
                                        "type": "string"
                                    },
                                    "tahmini_tutar": {
                                        "type": "number"
                                    },
                                    "parabirimi": {
                                        "type": "string"
                                    },
                                    "asama": {
                                        "type": "string"
                                    },
                                    "baslangic_tarih": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    },
                                    "atanan_kullanici": {
                                        "type": "string"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/istakip/ilgilenendurumguncelle": {
            "post": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Aday durum guncelle. durum 1=Yeni Geldi,2=Gorusuldu,3=Teklif Konusuluyor,4=Olmadi,5=Musteri Oldu",
                "operationId": "istakip_ilgilenendurumguncelle",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    },
                                    "durum": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id",
                                    "durum"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/istakip/firsatasamaguncelle": {
            "post": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Firsat asama guncelle. asama 1-6; 5=Kazanildi kapanis tarihi yazar",
                "operationId": "istakip_firsatasamaguncelle",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    },
                                    "asama": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "id",
                                    "asama"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/istakip/firsatolmadi": {
            "post": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Firsati kaybedildi olarak kapat (asama 6). olmadi_neden: fiyat,rakip,zamanlama,vazgecti,diger",
                "operationId": "istakip_firsatolmadi",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    },
                                    "olmadi_neden": {
                                        "type": "string"
                                    },
                                    "olmadi_aciklama": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "id",
                                    "olmadi_neden"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/istakip/gorusmeyapildi": {
            "post": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Gorusmeyi yapildi isaretle",
                "operationId": "istakip_gorusmeyapildi",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    },
                                    "yapildi_notu": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/istakip/firsatlar": {
            "get": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Firsat listesi",
                "operationId": "istakip_firsatlar",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "asama",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "ilgilenen_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cari_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "baslangic",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "bitis",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ]
            }
        },
        "/istakip/gorusmeler": {
            "get": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Gorusme listesi",
                "operationId": "istakip_gorusmeler",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "ilgilenen_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cari_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "yapildi",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "baslangic",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "bitis",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "hatirlatma_baslangic",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "hatirlatma_bitis",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ]
            }
        },
        "/istakip/gruplar": {
            "get": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Aday grup tanimlari",
                "operationId": "istakip_gruplar",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": []
            }
        },
        "/istakip/durumlar": {
            "get": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Gecerli kod sozlukleri: kaynaklar, ilgilenen_durumlari, firsat_asamalari, gorusme_turleri. Entegrasyon once bunu okumali",
                "operationId": "istakip_durumlar",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": []
            }
        },
        "/istakip/ilgilenensil": {
            "post": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Aday sil (soft delete)",
                "operationId": "istakip_ilgilenensil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/istakip/firsatsil": {
            "post": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Firsat sil (soft delete)",
                "operationId": "istakip_firsatsil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/istakip/gorusmesil": {
            "post": {
                "tags": [
                    "Is Takip (CRM)"
                ],
                "summary": "Gorusme sil (soft delete)",
                "operationId": "istakip_gorusmesil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/personel/liste": {
            "get": {
                "tags": [
                    "Personel"
                ],
                "summary": "Personel listesi",
                "operationId": "personel_liste",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "arama",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "kod",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/takvim/liste": {
            "get": {
                "tags": [
                    "Takvim"
                ],
                "summary": "Takvim etkinlikleri (manuel/harici olaylar). Modul kaynakli olaylar (fatura vadesi vb.) bu ucta donmez",
                "operationId": "takvim_liste",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "parameters": [
                    {
                        "name": "sayfa",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "arama",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "baslangic",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "bitis",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "tip",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ]
            }
        },
        "/takvim/ekle": {
            "post": {
                "tags": [
                    "Takvim"
                ],
                "summary": "Takvime etkinlik ekle. tip: 1=Gorev, 2=Hatirlatma, 3=Bilgi Notu. baslama/bitis: 'YYYY-MM-DD HH:MM'. Donen data.id ile guncelle/sil edilir",
                "operationId": "takvim_ekle",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "baslik": {
                                        "type": "string"
                                    },
                                    "baslama": {
                                        "type": "string"
                                    },
                                    "bitis": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "tip": {
                                        "type": "string"
                                    },
                                    "renk": {
                                        "type": "string"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    },
                                    "kullanici_id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "baslik",
                                    "baslama"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/takvim/guncelle": {
            "post": {
                "tags": [
                    "Takvim"
                ],
                "summary": "Etkinlik guncelle (kismi; yalniz gonderilen alanlar). Sadece manuel etkinlikler, modul kaynakli olaylar degistirilemez",
                "operationId": "takvim_guncelle",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    },
                                    "baslik": {
                                        "type": "string"
                                    },
                                    "baslama": {
                                        "type": "string"
                                    },
                                    "bitis": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "tip": {
                                        "type": "string"
                                    },
                                    "renk": {
                                        "type": "string"
                                    },
                                    "aciklama": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/takvim/sil": {
            "post": {
                "tags": [
                    "Takvim"
                ],
                "summary": "Etkinlik sil (soft delete). Sadece manuel etkinlikler, modul kaynakli olaylar silinemez",
                "operationId": "takvim_sil",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Basarili"
                    },
                    "401": {
                        "description": "Yetkisiz / gecersiz token"
                    },
                    "422": {
                        "description": "Eksik veya gecersiz alan"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "id"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/auth/login": {
            "post": {
                "tags": [
                    "Kimlik Dogrulama"
                ],
                "summary": "Token al (12 saat)",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "required": [
                                    "kullaniciadi",
                                    "sifre"
                                ],
                                "properties": {
                                    "kullaniciadi": {
                                        "type": "string"
                                    },
                                    "sifre": {
                                        "type": "string"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "token + user"
                    },
                    "401": {
                        "description": "Hatali giris"
                    }
                }
            }
        },
        "/auth/refresh": {
            "post": {
                "tags": [
                    "Kimlik Dogrulama"
                ],
                "summary": "Token yenile (suresi dolmamis)",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "yeni token"
                    },
                    "401": {
                        "description": "Yenilenmez, tekrar login"
                    }
                }
            }
        },
        "/health/check": {
            "get": {
                "tags": [
                    "Sistem"
                ],
                "summary": "Baglanti testi (token gerekmez)",
                "responses": {
                    "200": {
                        "description": "API ayakta"
                    }
                }
            }
        }
    }
}