{
    "openapi": "3.0.0",
    "info": {
        "title": "Umram API Dokümantasyonu",
        "description": "Umram API dokümantasyonu",
        "contact": {
            "email": "teknoloji@umranoto.com"
        },
        "license": {
            "name": "Apache 2.0",
            "url": "http://www.apache.org/licenses/LICENSE-2.0.html"
        },
        "version": "1.0.0"
    },
    "servers": [
        {
            "url": "https://umram.online",
            "description": "API Server"
        }
    ],
    "paths": {
        "/api/v1/customer/{id}": {
            "delete": {
                "tags": [
                    "Customer"
                ],
                "summary": "Müşteriyi sil",
                "description": "Verilen ID'ye ait müşteriyi siler.",
                "operationId": "94009c4ba986bf7da62d70c2d2973fed",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Silinecek müşterinin ID'si",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Müşteri başarıyla silindi",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "string",
                                            "example": "Başarılı"
                                        },
                                        "error": {
                                            "type": "string",
                                            "example": null,
                                            "nullable": true
                                        },
                                        "provider": {
                                            "type": "string",
                                            "example": ""
                                        },
                                        "responseTime": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "fromCache": {
                                            "type": "boolean",
                                            "example": false
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Müşteri bulunamadı",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "data": {
                                            "type": "string",
                                            "example": null,
                                            "nullable": true
                                        },
                                        "error": {
                                            "type": "string",
                                            "example": "Cari bulunamadı."
                                        },
                                        "provider": {
                                            "type": "string",
                                            "example": ""
                                        },
                                        "responseTime": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "fromCache": {
                                            "type": "boolean",
                                            "example": false
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/v1/customer/expertise-warranty/{uuid}": {
            "get": {
                "tags": [
                    "ExpertiseWarranty"
                ],
                "summary": "Check if expertise has warranty",
                "description": "Check whether an expertise has an otoranti (warranty) campaign.",
                "operationId": "b1d2546618580fc7f4f2dad80a9084eb",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Warranty status"
                    },
                    "404": {
                        "description": "Not found"
                    }
                }
            }
        },
        "/api/v1/customer/expertise-warranty/{uuid}/pdf": {
            "get": {
                "tags": [
                    "ExpertiseWarranty"
                ],
                "summary": "Download warranty PDF",
                "description": "Stream the warranty document as a PDF for the given expertise UUID.",
                "operationId": "473d3692d179a343196a4dcd14bc0d4f",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "download",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "PDF document"
                    },
                    "404": {
                        "description": "Not found"
                    },
                    "422": {
                        "description": "Expertise does not have warranty"
                    }
                }
            }
        },
        "/api/v1/customer/{customerId}/plus-cards/list": {
            "get": {
                "tags": [
                    "PlusCards"
                ],
                "summary": "Müşterinin Plus Card listesini getirir",
                "description": "Belirtilen müşteri için tüm Plus Card kayıtlarını listeler.",
                "operationId": "60f37526620aca40e6393452dbbe6e25",
                "parameters": [
                    {
                        "name": "customerId",
                        "in": "path",
                        "description": "Müşteri ID",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": "1"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Başarılı yanıt",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "properties": {
                                                "plusCards": {
                                                    "type": "array",
                                                    "items": {
                                                        "$ref": "#/components/schemas/PlusCard"
                                                    }
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "IP access denied",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "IP access denied"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Doğrulama hatası",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "The given data was invalid."
                                        },
                                        "errors": {
                                            "properties": {
                                                "customerId": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string",
                                                        "example": "The customer id field is required."
                                                    }
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/v1/customer/plus-cards/assign": {
            "post": {
                "tags": [
                    "PlusCards"
                ],
                "summary": "Assign a PlusCard to a customer",
                "description": "Assigns a PlusCard to the specified customer and branch. Returns success if the operation is valid.",
                "operationId": "e7f08ddabd37d1986b93985d34f5d7ca",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "customerId",
                                    "branchId"
                                ],
                                "properties": {
                                    "customerId": {
                                        "description": "ID of the customer",
                                        "type": "integer"
                                    },
                                    "branchId": {
                                        "description": "ID of the branch",
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "PlusCard assigned successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "object",
                                            "example": []
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "IP access denied",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "IP access denied"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "data": {
                                            "type": "string",
                                            "example": null
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "The given data was invalid."
                                        },
                                        "errors": {
                                            "properties": {
                                                "customerId": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string",
                                                        "example": "The customer id field is required."
                                                    }
                                                },
                                                "branchId": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string",
                                                        "example": "The branch id field is required."
                                                    }
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/v1/customer/promotion-code/create-for-customer": {
            "post": {
                "tags": [
                    "PromotionCodes"
                ],
                "summary": "Create a new promotion code for a customer",
                "description": "Creates a new promotion code for the specified customer with default values. The promotion code will have a fixed discount of 10, a minimum amount of 500, a maximum discount of 200, and will expire in 1 year.",
                "operationId": "90fcd1d18657e6a08cbfcd324ee8977c",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "customerId"
                                ],
                                "properties": {
                                    "customerId": {
                                        "description": "ID of the customer",
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Promotion code created successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "properties": {
                                                "promotionCode": {
                                                    "description": "Created promotion code object",
                                                    "type": "object"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "IP access denied",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "IP access denied"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "data": {
                                            "type": "string",
                                            "example": null
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "The given data was invalid."
                                        },
                                        "errors": {
                                            "properties": {
                                                "customerId": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string",
                                                        "example": "The customer id field is required."
                                                    }
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/v1/customer/{customerId}/promotion-code/list": {
            "get": {
                "tags": [
                    "PromotionCodes"
                ],
                "summary": "Promosyon kodu listesi",
                "description": "List all promotion codes for a customer",
                "operationId": "1143d1212d3ace7590a6c6fa11db580f",
                "parameters": [
                    {
                        "name": "customerId",
                        "in": "path",
                        "description": "Müşteri ID",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": "1"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Başarılı yanıt",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "properties": {
                                                "promotionCodes": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object"
                                                    }
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "IP access denied",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "IP access denied"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "The given data was invalid."
                                        },
                                        "errors": {
                                            "properties": {
                                                "customerId": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string",
                                                        "example": "The customer id field is required."
                                                    }
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/v1/customer/turassist/certificate-image": {
            "get": {
                "tags": [
                    "TurAssist"
                ],
                "summary": "TurAssist sertifika görselini getir",
                "description": "Ekspertiz ID veya UUID'ye göre TurAssist tablosundan sertifika görselini (sertifikagorseli) getirir",
                "operationId": "getTurAssistCertificateImage",
                "parameters": [
                    {
                        "name": "expertise_id",
                        "in": "query",
                        "description": "Ekspertiz ID",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "example": 123
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Ekspertiz UUID",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "example": "abc-123-def-456"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Başarılı işlem",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Sertifika görseli başarıyla getirildi."
                                        },
                                        "data": {
                                            "properties": {
                                                "expertise_id": {
                                                    "type": "integer",
                                                    "example": 123
                                                },
                                                "expertise_uuid": {
                                                    "type": "string",
                                                    "example": "abc-123-def"
                                                },
                                                "sertifika_no": {
                                                    "type": "string",
                                                    "example": "CERT123456"
                                                },
                                                "sertifikagorseli": {
                                                    "type": "string",
                                                    "example": "https://example.com/certificate.jpg"
                                                },
                                                "baslangic_tarihi": {
                                                    "type": "string",
                                                    "format": "date",
                                                    "example": "2026-01-28"
                                                },
                                                "bitis_tarihi": {
                                                    "type": "string",
                                                    "format": "date",
                                                    "example": "2027-01-28"
                                                },
                                                "certificate_id": {
                                                    "type": "string",
                                                    "example": "215"
                                                },
                                                "created_at": {
                                                    "type": "string",
                                                    "format": "datetime",
                                                    "example": "2026-01-28 10:00:00"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Geçersiz istek",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Ekspertiz ID veya UUID belirtilmelidir."
                                        },
                                        "data": {
                                            "type": "null"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Kayıt bulunamadı",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "TurAssist kaydı bulunamadı."
                                        },
                                        "data": {
                                            "type": "null"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Sunucu hatası",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Sertifika görseli getirilirken bir hata oluştu."
                                        },
                                        "data": {
                                            "type": "null"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/v1/customer/turassist/details": {
            "get": {
                "tags": [
                    "TurAssist"
                ],
                "summary": "TurAssist sertifika detaylarını getir",
                "description": "Ekspertiz ID veya UUID'ye göre TurAssist tablosundan tam sertifika bilgilerini (tüm response_data dahil) getirir",
                "operationId": "getTurAssistCertificateDetails",
                "parameters": [
                    {
                        "name": "expertise_id",
                        "in": "query",
                        "description": "Ekspertiz ID",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "example": 123
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Ekspertiz UUID",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "example": "abc-123-def-456"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Başarılı işlem",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Sertifika bilgileri başarıyla getirildi."
                                        },
                                        "data": {
                                            "properties": {
                                                "id": {
                                                    "type": "integer",
                                                    "example": 1
                                                },
                                                "expertise_id": {
                                                    "type": "integer",
                                                    "example": 123
                                                },
                                                "expertise_uuid": {
                                                    "type": "string",
                                                    "example": "abc-123-def"
                                                },
                                                "sertifika_no": {
                                                    "type": "string",
                                                    "example": "CERT123456"
                                                },
                                                "certificate_id": {
                                                    "type": "string",
                                                    "example": "215"
                                                },
                                                "baslangic_tarihi": {
                                                    "type": "string",
                                                    "format": "date",
                                                    "example": "2026-01-28"
                                                },
                                                "bitis_tarihi": {
                                                    "type": "string",
                                                    "format": "date",
                                                    "example": "2027-01-28"
                                                },
                                                "status": {
                                                    "type": "string",
                                                    "example": "success"
                                                },
                                                "error_type": {
                                                    "type": "string",
                                                    "example": null,
                                                    "nullable": true
                                                },
                                                "error_message": {
                                                    "type": "string",
                                                    "example": null,
                                                    "nullable": true
                                                },
                                                "status_code": {
                                                    "type": "integer",
                                                    "example": 200,
                                                    "nullable": true
                                                },
                                                "attempt": {
                                                    "type": "integer",
                                                    "example": 1
                                                },
                                                "response_data": {
                                                    "description": "TurAssist API'den dönen tam yanıt verisi",
                                                    "type": "object"
                                                },
                                                "created_at": {
                                                    "type": "string",
                                                    "format": "datetime",
                                                    "example": "2026-01-28 10:00:00"
                                                },
                                                "updated_at": {
                                                    "type": "string",
                                                    "format": "datetime",
                                                    "example": "2026-01-28 10:00:00"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Geçersiz istek",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Ekspertiz ID veya UUID belirtilmelidir."
                                        },
                                        "data": {
                                            "type": "null"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Kayıt bulunamadı",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "TurAssist kaydı bulunamadı."
                                        },
                                        "data": {
                                            "type": "null"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Sunucu hatası",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Sertifika bilgileri getirilirken bir hata oluştu."
                                        },
                                        "data": {
                                            "type": "null"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/v1/customer/turassist/all": {
            "get": {
                "tags": [
                    "TurAssist"
                ],
                "summary": "Ekspertiz için tüm TurAssist kayıtlarını getir",
                "description": "Bir ekspertize ait tüm TurAssist denemelerini/kayıtlarını getirir (başarılı ve başarısız tüm denemeler)",
                "operationId": "getAllTurAssistRecords",
                "parameters": [
                    {
                        "name": "expertise_id",
                        "in": "query",
                        "description": "Ekspertiz ID",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "example": 123
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Ekspertiz UUID",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "example": "abc-123-def-456"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Başarılı işlem",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "TurAssist kayıtları başarıyla getirildi."
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "id": {
                                                        "type": "integer",
                                                        "example": 1
                                                    },
                                                    "expertise_id": {
                                                        "type": "integer",
                                                        "example": 123
                                                    },
                                                    "expertise_uuid": {
                                                        "type": "string",
                                                        "example": "abc-123-def"
                                                    },
                                                    "sertifika_no": {
                                                        "type": "string",
                                                        "example": "CERT123456"
                                                    },
                                                    "certificate_id": {
                                                        "type": "string",
                                                        "example": "215"
                                                    },
                                                    "baslangic_tarihi": {
                                                        "type": "string",
                                                        "format": "date",
                                                        "example": "2026-01-28"
                                                    },
                                                    "bitis_tarihi": {
                                                        "type": "string",
                                                        "format": "date",
                                                        "example": "2027-01-28"
                                                    },
                                                    "status": {
                                                        "description": "Status: success, failed, pending",
                                                        "type": "string",
                                                        "example": "success"
                                                    },
                                                    "error_type": {
                                                        "type": "string",
                                                        "example": null,
                                                        "nullable": true
                                                    },
                                                    "error_message": {
                                                        "type": "string",
                                                        "example": null,
                                                        "nullable": true
                                                    },
                                                    "attempt": {
                                                        "type": "integer",
                                                        "example": 1
                                                    },
                                                    "has_certificate_image": {
                                                        "description": "Sertifika görseli var mı?",
                                                        "type": "boolean",
                                                        "example": true
                                                    },
                                                    "created_at": {
                                                        "type": "string",
                                                        "format": "datetime",
                                                        "example": "2026-01-28 10:00:00"
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        },
                                        "count": {
                                            "description": "Toplam kayıt sayısı",
                                            "type": "integer",
                                            "example": 3
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Geçersiz istek",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Ekspertiz ID veya UUID belirtilmelidir."
                                        },
                                        "data": {
                                            "type": "null"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Kayıt bulunamadı",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "TurAssist kaydı bulunamadı."
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {}
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Sunucu hatası",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "TurAssist kayıtları getirilirken bir hata oluştu."
                                        },
                                        "data": {
                                            "type": "null"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/v1/customer/turassist/activate": {
            "patch": {
                "tags": [
                    "TurAssist"
                ],
                "summary": "TurAssist sertifikasını aktifleştir",
                "description": "Ekspertiz ID veya UUID'ye göre TurAssist kaydının status durumunu 'active' olarak günceller",
                "operationId": "activateTurAssist",
                "parameters": [
                    {
                        "name": "expertise_id",
                        "in": "query",
                        "description": "Ekspertiz ID",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "example": 123
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Ekspertiz UUID",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "example": "abc-123-def-456"
                        }
                    },
                    {
                        "name": "registration_serial_no",
                        "in": "query",
                        "description": "Araç ruhsat seri numarası (opsiyonel). Gönderilirse araça ait vehicle_registrations tablosuna kaydedilir veya güncellenir.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "example": "A123456789"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Başarılı işlem",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "TurAssist sertifikası başarıyla aktifleştirildi."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Geçersiz istek",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Ekspertiz ID veya UUID belirtilmelidir."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Kayıt bulunamadı",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "TurAssist kaydı bulunamadı."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Sunucu hatası",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "TurAssist aktifleştirme sırasında bir hata oluştu."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/v1/customer/vehicle-queries": {
            "get": {
                "tags": [
                    "VehicleQuery"
                ],
                "summary": "Araç sorgulama listesi",
                "operationId": "402dac86310dcf52b9c4ffbdf9467b72",
                "responses": {
                    "200": {
                        "description": "Araç sorgulama listesi",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {}
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Unauthorized"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Forbidden"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/v1/customer/vehicle-queries/has-query": {
            "post": {
                "tags": [
                    "VehicleQuery"
                ],
                "summary": "Araç sorgulama dogrulama",
                "operationId": "179cc35b1ab7d21a119660d5d9b765b3",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "type",
                                    "value"
                                ],
                                "properties": {
                                    "type": {
                                        "type": "string",
                                        "enum": [
                                            "vin",
                                            "plate"
                                        ],
                                        "example": "plate"
                                    },
                                    "value": {
                                        "type": "string",
                                        "example": "34ABC123"
                                    },
                                    "customerId": {
                                        "type": "integer",
                                        "example": "1"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Başarılı sorgu",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "properties": {
                                                "damage": {
                                                    "description": "Whether damage query exists",
                                                    "type": "boolean",
                                                    "example": false
                                                },
                                                "replacement": {
                                                    "description": "Whether replacement query exists",
                                                    "type": "boolean",
                                                    "example": false
                                                },
                                                "detail": {
                                                    "description": "Whether detail query exists",
                                                    "type": "boolean",
                                                    "example": false
                                                },
                                                "kilometer": {
                                                    "description": "Whether kilometer query exists",
                                                    "type": "boolean",
                                                    "example": false
                                                },
                                                "debt": {
                                                    "description": "Whether debt query exists",
                                                    "type": "boolean",
                                                    "example": false
                                                },
                                                "license": {
                                                    "description": "Whether license query exists",
                                                    "type": "boolean",
                                                    "example": false
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Geçersiz sorgu",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string",
                                            "example": "Hata mesajı"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "IP access denied",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "IP access denied"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/v1/customer/vehicle-queries/{customerId}/list": {
            "get": {
                "tags": [
                    "VehicleQuery"
                ],
                "summary": "Müşteriye ait sorgu geçmişini sayfalı, sıralı ve filtreli getir",
                "description": "Müşteriye ait tüm araç sorgu kayıtlarını sayfalama, sıralama ve filtreleme desteğiyle listeler.",
                "operationId": "5b2cbae767cae877b4c59e4c19d494cb",
                "parameters": [
                    {
                        "name": "customerId",
                        "in": "path",
                        "description": "Müşteri ID",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    },
                    {
                        "name": "type",
                        "in": "query",
                        "description": "Sorgu tipi filtresi",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "damage",
                                "replacement",
                                "detail",
                                "kilometer",
                                "debt",
                                "license"
                            ]
                        }
                    },
                    {
                        "name": "vehicle",
                        "in": "query",
                        "description": "Plaka veya şasi no (kısmi eşleşme)",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "example": "34ABC"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Başlangıç tarihi (Y-m-d)",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date",
                            "example": "2025-01-01"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Bitiş tarihi (Y-m-d)",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date",
                            "example": "2025-12-31"
                        }
                    },
                    {
                        "name": "sort_by",
                        "in": "query",
                        "description": "Sıralama alanı",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "default": "created_at",
                            "enum": [
                                "created_at",
                                "vehicle"
                            ]
                        }
                    },
                    {
                        "name": "sort_direction",
                        "in": "query",
                        "description": "Sıralama yönü",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "default": "desc",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Sayfa başına kayıt sayısı (1-100)",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "default": 15,
                            "maximum": 100,
                            "minimum": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Sorgu geçmişi başarıyla getirildi",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "properties": {
                                                "items": {
                                                    "type": "array",
                                                    "items": {
                                                        "properties": {
                                                            "id": {
                                                                "type": "integer",
                                                                "example": 42
                                                            },
                                                            "vehicle": {
                                                                "type": "string",
                                                                "example": "34ABC123"
                                                            },
                                                            "queriedAt": {
                                                                "type": "string",
                                                                "format": "date-time",
                                                                "example": "2025-11-23T13:14:50+00:00"
                                                            },
                                                            "queries": {
                                                                "properties": {
                                                                    "damage": {
                                                                        "type": "boolean",
                                                                        "example": true
                                                                    },
                                                                    "replacement": {
                                                                        "type": "boolean",
                                                                        "example": false
                                                                    },
                                                                    "detail": {
                                                                        "type": "boolean",
                                                                        "example": true
                                                                    },
                                                                    "kilometer": {
                                                                        "type": "boolean",
                                                                        "example": false
                                                                    },
                                                                    "debt": {
                                                                        "type": "boolean",
                                                                        "example": false
                                                                    },
                                                                    "license": {
                                                                        "type": "boolean",
                                                                        "example": false
                                                                    }
                                                                },
                                                                "type": "object"
                                                            }
                                                        },
                                                        "type": "object"
                                                    }
                                                },
                                                "pagination": {
                                                    "properties": {
                                                        "currentPage": {
                                                            "type": "integer",
                                                            "example": 1
                                                        },
                                                        "perPage": {
                                                            "type": "integer",
                                                            "example": 15
                                                        },
                                                        "total": {
                                                            "type": "integer",
                                                            "example": 42
                                                        },
                                                        "lastPage": {
                                                            "type": "integer",
                                                            "example": 3
                                                        }
                                                    },
                                                    "type": "object"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Doğrulama hatası",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "errors": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Yetkisiz erişim",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "API anahtarınız geçersiz veya eksik."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "IP erişimi reddedildi",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "IP access denied"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/v1/customer/vehicle-queries/{customerId}": {
            "get": {
                "tags": [
                    "VehicleQuery"
                ],
                "summary": "Daha önce yapılan sorgu geçmişini getir",
                "description": "Müşteriye ve araca göre daha önce yapılmış tüm sorgu sonuçlarını (hasar, kilometre, borç, detay, değişen parça, ruhsat) getirir.",
                "operationId": "9a087cdfa7c506a1015a170924be408f",
                "parameters": [
                    {
                        "name": "customerId",
                        "in": "path",
                        "description": "Müşteri ID",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    },
                    {
                        "name": "type",
                        "in": "query",
                        "description": "Sorgu tipi: plaka veya şasi no",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "vin",
                                "plate"
                            ],
                            "example": "plate"
                        }
                    },
                    {
                        "name": "value",
                        "in": "query",
                        "description": "Plaka veya şasi no değeri",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "example": "34ABC123"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Sorgu geçmişi başarıyla getirildi",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "properties": {
                                                "damage": {
                                                    "description": "Hasar sorgu sonucu",
                                                    "type": "object",
                                                    "nullable": true
                                                },
                                                "replacement": {
                                                    "description": "Değişen parça sorgu sonucu",
                                                    "type": "object",
                                                    "nullable": true
                                                },
                                                "detail": {
                                                    "description": "Detay sorgu sonucu",
                                                    "type": "object",
                                                    "nullable": true
                                                },
                                                "kilometer": {
                                                    "description": "Kilometre sorgu sonucu",
                                                    "type": "object",
                                                    "nullable": true
                                                },
                                                "debt": {
                                                    "description": "Borç sorgu sonucu",
                                                    "type": "object",
                                                    "nullable": true
                                                },
                                                "license": {
                                                    "description": "Ruhsat sorgu sonucu",
                                                    "type": "object",
                                                    "nullable": true
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Doğrulama hatası",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "errors": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Yetkisiz erişim",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "API anahtarınız geçersiz veya eksik."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "IP erişimi reddedildi",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "IP access denied"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/v1/customer/vehicle-queries/damage": {
            "post": {
                "tags": [
                    "VehicleQuery"
                ],
                "summary": "Araç hasar sorgulama",
                "operationId": "ee05a339bdf64a26fe7d5b57632dbf36",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "type",
                                    "value"
                                ],
                                "properties": {
                                    "type": {
                                        "type": "string",
                                        "enum": [
                                            "vin",
                                            "plate"
                                        ],
                                        "example": "plate"
                                    },
                                    "value": {
                                        "type": "string",
                                        "example": "34ABC123"
                                    },
                                    "customerId": {
                                        "type": "integer",
                                        "example": "1"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Başarılı sorgu",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "properties": {
                                                "id": {
                                                    "type": "integer",
                                                    "example": 138997
                                                },
                                                "uniqueId": {
                                                    "type": "string",
                                                    "example": "91706748-3695-49ce-9d39-31fa6e16b3c6"
                                                },
                                                "query": {
                                                    "type": "string",
                                                    "example": "Hasar Sorgu Şasi"
                                                },
                                                "date": {
                                                    "type": "string",
                                                    "format": "date-time",
                                                    "example": "2025-11-23T13:14:50.226554Z"
                                                },
                                                "data": {
                                                    "type": "string",
                                                    "example": "34NU1405"
                                                },
                                                "userid": {
                                                    "type": "integer",
                                                    "example": 1
                                                },
                                                "result": {
                                                    "type": "string",
                                                    "example": "Sorgulama başarılı"
                                                },
                                                "amount": {
                                                    "type": "number",
                                                    "format": "float",
                                                    "example": 183
                                                },
                                                "model": {
                                                    "type": "string",
                                                    "example": ""
                                                },
                                                "imageurl": {
                                                    "type": "string",
                                                    "format": "uri",
                                                    "example": "https://mars-contents.fra1.digitaloceanspaces.com/tramer/prod/damage/34NU1405_40033792.png"
                                                },
                                                "branchCode": {
                                                    "type": "string",
                                                    "example": ""
                                                },
                                                "damageDateList": {
                                                    "properties": {
                                                        "success": {
                                                            "type": "boolean",
                                                            "example": true
                                                        },
                                                        "code": {
                                                            "type": "string",
                                                            "example": "00"
                                                        },
                                                        "message": {
                                                            "type": "string",
                                                            "example": "Sorgulama başarılı"
                                                        },
                                                        "total": {
                                                            "type": "integer",
                                                            "example": 4
                                                        },
                                                        "data": {
                                                            "type": "array",
                                                            "items": {
                                                                "properties": {
                                                                    "id": {
                                                                        "type": "integer",
                                                                        "example": 138997
                                                                    },
                                                                    "queryid": {
                                                                        "type": "integer",
                                                                        "example": 138997
                                                                    },
                                                                    "date": {
                                                                        "type": "string",
                                                                        "example": "25.06.2017"
                                                                    },
                                                                    "changingparts": {
                                                                        "type": "boolean",
                                                                        "example": false
                                                                    },
                                                                    "damageDateKeyValue": {
                                                                        "type": "string",
                                                                        "example": ""
                                                                    }
                                                                },
                                                                "type": "object"
                                                            }
                                                        }
                                                    },
                                                    "type": "object"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Geçersiz sorgu",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string",
                                            "example": "Hata mesajı"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "IP access denied",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "IP access denied"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Doğrulama hatası"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/v1/customer/vehicle-queries/detail": {
            "post": {
                "tags": [
                    "VehicleQuery"
                ],
                "summary": "Araç detay sorgulama",
                "operationId": "c2c7e967aec689d7f80f489b4a740c17",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "type",
                                    "value"
                                ],
                                "properties": {
                                    "type": {
                                        "type": "string",
                                        "enum": [
                                            "vin",
                                            "plate"
                                        ],
                                        "example": "vin"
                                    },
                                    "value": {
                                        "type": "string",
                                        "example": "VF1BG1V0C12345678"
                                    },
                                    "customerId": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Başarılı sorgu",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Geçersiz sorgu",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string",
                                            "example": "Hata mesajı"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "IP access denied",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "IP access denied"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Doğrulama hatası"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/v1/customer/vehicle-queries/replacement": {
            "post": {
                "tags": [
                    "VehicleQuery"
                ],
                "summary": "Araç değişen parça sorgulama",
                "operationId": "96779e22ce2e888afe3f07b4026107ea",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "type",
                                    "value"
                                ],
                                "properties": {
                                    "type": {
                                        "type": "string",
                                        "enum": [
                                            "vin",
                                            "plate"
                                        ],
                                        "example": "plate"
                                    },
                                    "value": {
                                        "type": "string",
                                        "example": "34ABC123"
                                    },
                                    "customerId": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Başarılı sorgu",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Geçersiz sorgu",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string",
                                            "example": "Hata mesajı"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "IP access denied",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "IP access denied"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Doğrulama hatası"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/v1/customer/vehicle-queries/kilometer": {
            "post": {
                "tags": [
                    "VehicleQuery"
                ],
                "summary": "Araç kilometre sorgulama",
                "operationId": "c10224bc538773bfefa76a40985e958d",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "type",
                                    "value"
                                ],
                                "properties": {
                                    "type": {
                                        "type": "string",
                                        "enum": [
                                            "vin",
                                            "plate"
                                        ],
                                        "example": "vin"
                                    },
                                    "value": {
                                        "type": "string",
                                        "example": "VF1BG1V0C12345678"
                                    },
                                    "customerId": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Başarılı sorgu",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Geçersiz sorgu",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string",
                                            "example": "Hata mesajı"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "IP access denied",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "IP access denied"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Doğrulama hatası"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/v1/customer/vehicle-queries/debt": {
            "post": {
                "tags": [
                    "VehicleQuery"
                ],
                "summary": "Araç borç sorgulama",
                "operationId": "cc5b7a2590ead93271ab60a21cf88eaf",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "type",
                                    "value"
                                ],
                                "properties": {
                                    "type": {
                                        "type": "string",
                                        "enum": [
                                            "vin",
                                            "plate"
                                        ],
                                        "example": "plate"
                                    },
                                    "value": {
                                        "type": "string",
                                        "example": "34ABC123"
                                    },
                                    "customerId": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Başarılı sorgu",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Geçersiz sorgu",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string",
                                            "example": "Hata mesajı"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "API anahtarınız geçersiz veya eksik. Lütfen geçerli bir X-API-KEY ile tekrar deneyin."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "IP access denied",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "IP access denied"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Doğrulama hatası"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        }
    },
    "components": {
        "schemas": {
            "PlusCard": {
                "title": "PlusCard",
                "description": "PlusCard Model",
                "properties": {
                    "id": {
                        "description": "Class PlusCard",
                        "type": "integer",
                        "example": 1
                    },
                    "branch_id": {
                        "type": "integer",
                        "example": 2
                    },
                    "customer_id": {
                        "type": "integer",
                        "example": 3
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "example": "2024-01-01T12:00:00Z"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time",
                        "example": "2024-01-01T12:00:00Z"
                    }
                },
                "type": "object"
            },
            "PromotionCode": {
                "title": "Promotion Code",
                "description": "Promotion code model",
                "properties": {
                    "id": {
                        "description": "Promotion code ID",
                        "type": "integer",
                        "format": "int64",
                        "example": 1
                    },
                    "customer_id": {
                        "description": "Customer ID",
                        "type": "integer",
                        "format": "int64",
                        "example": 1
                    },
                    "promo_code": {
                        "description": "Promotion code string",
                        "type": "string",
                        "example": "ABC123"
                    },
                    "discount_type": {
                        "description": "Discount type (fixed or percent)",
                        "type": "string",
                        "example": "fixed"
                    },
                    "discount_value": {
                        "description": "Discount value",
                        "type": "number",
                        "format": "float",
                        "example": 10
                    },
                    "minimum_amount": {
                        "description": "Minimum amount for promotion code usage",
                        "type": "number",
                        "format": "float",
                        "example": 500
                    },
                    "maximum_discount": {
                        "description": "Maximum discount amount",
                        "type": "number",
                        "format": "float",
                        "example": 200
                    },
                    "expires_at": {
                        "description": "Expiration date",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-06-01T00:00:00Z"
                    },
                    "is_used": {
                        "description": "Whether the promotion code is used",
                        "type": "boolean",
                        "example": false
                    },
                    "used_at": {
                        "description": "Date when the promotion code was used",
                        "type": "string",
                        "format": "date-time",
                        "example": null
                    },
                    "used_amount": {
                        "description": "Amount used with the promotion code",
                        "type": "number",
                        "format": "float",
                        "example": null
                    },
                    "usage_details": {
                        "description": "Details about the usage",
                        "type": "string",
                        "example": null
                    },
                    "generated_source": {
                        "description": "Source of the generated code",
                        "type": "string",
                        "example": "system"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PromotionCode"
                }
            }
        },
        "securitySchemes": {
            "bearerAuth": {
                "type": "http",
                "bearerFormat": "JWT",
                "scheme": "bearer"
            }
        }
    },
    "tags": [
        {
            "name": "Customer",
            "description": "Müşteri işlemleri"
        },
        {
            "name": "ExpertiseWarranty",
            "description": "Expertise warranty (otoranti) endpoints"
        },
        {
            "name": "PlusCards",
            "description": "Plus Card endpoints"
        },
        {
            "name": "PromotionCodes",
            "description": "Promotion code endpoints"
        },
        {
            "name": "TurAssist",
            "description": "TurAssist sertifika işlemleri"
        },
        {
            "name": "VehicleQuery",
            "description": "Araç sorgulama işlemleri"
        }
    ]
}