{ "openapi": "3.0.0", "info": { "title": "Eclassify API", "description": "Eclassify api documentation", "version": "1.0.0" }, "paths": { "/api/get-otp": { "post": { "tags": [ "Auth" ], "summary": "Send OTP for registration", "operationId": "9665576026de3c8975fefbf59380584a", "requestBody": { "required": true, "content": { "application/json": { "schema": { "required": [ "phone", "device_type", "password" ], "properties": { "firstname": { "type": "string", "example": "Devit" }, "lastname": { "type": "string", "example": "Togo" }, "phone": { "type": "string", "example": "901234567" }, "password": { "type": "string", "example": "1234" }, "device_type": { "type": "string", "example": "android" }, "fcm_token": { "type": "string", "example": "token_here" } }, "type": "object" } } } }, "responses": { "200": { "description": "OTP sent successfully" } } } }, "/api/verify-otp": { "post": { "tags": [ "Auth" ], "summary": "Verify OTP code", "operationId": "1f09b8b2173f8afbe842b19937649fbb", "requestBody": { "required": true, "content": { "application/json": { "schema": { "required": [ "phone", "otp" ], "properties": { "phone": { "type": "string", "example": "998901234567" }, "otp": { "type": "integer", "example": 1234 } }, "type": "object" } } } }, "responses": { "200": { "description": "Phone verified successfully" } } } }, "/api/login": { "post": { "tags": [ "Auth" ], "summary": "User login", "operationId": "dcf90ce65219b0ad51fc32e9f7f69843", "requestBody": { "required": true, "content": { "application/json": { "schema": { "required": [ "phone", "password", "device_type" ], "properties": { "phone": { "type": "string", "example": "998901234567" }, "password": { "type": "string", "example": "1234" }, "device_type": { "type": "string", "example": "android" }, "fcm_token": { "type": "string", "example": "token_here" } }, "type": "object" } } } }, "responses": { "200": { "description": "Login successful", "content": { "application/json": { "schema": { "properties": { "token": { "type": "string", "example": "1|abcdefg123456" } }, "type": "object" } } } } } } }, "/api/profile": { "get": { "tags": [ "Auth" ], "summary": "Get user profile", "operationId": "4ed7ca3229d16b0b14785695794359e6", "responses": { "200": { "description": "Profile data", "content": { "application/json": { "schema": { "properties": { "id": { "type": "integer", "example": 1 }, "firstname": { "type": "string", "example": "Ali" }, "lastname": { "type": "string", "example": "Valiyev" }, "phone": { "type": "string", "example": "998901234567" }, "email": { "type": "string", "example": "test@gmail.com" }, "device_type": { "type": "string", "example": "android" } }, "type": "object" } } } } }, "security": [ { "bearerAuth": [] } ] } }, "/api/logout": { "get": { "tags": [ "Auth" ], "summary": "Logout user", "operationId": "edf2b3b2f5fefa33e2fd224d2f2505c4", "responses": { "200": { "description": "Logged out successfully" } }, "security": [ { "bearerAuth": [] } ] } } }, "components": { "securitySchemes": { "bearerAuth": { "type": "http", "bearerFormat": "JWT", "scheme": "bearer" } } }, "tags": [ { "name": "Auth", "description": "Auth" } ] }