249 lines
9.3 KiB
JSON
249 lines
9.3 KiB
JSON
{
|
|
"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"
|
|
}
|
|
]
|
|
} |