318 lines
7.7 KiB
YAML
318 lines
7.7 KiB
YAML
basePath: /api/v1
|
|
definitions:
|
|
models.Warehouse:
|
|
properties:
|
|
address:
|
|
type: string
|
|
createdAt:
|
|
type: string
|
|
description:
|
|
type: string
|
|
id:
|
|
type: integer
|
|
name:
|
|
type: string
|
|
updatedAt:
|
|
type: string
|
|
type: object
|
|
requests.BodyRegisterRequest:
|
|
properties:
|
|
email:
|
|
type: string
|
|
fullName:
|
|
type: string
|
|
password:
|
|
minLength: 8
|
|
type: string
|
|
username:
|
|
type: string
|
|
required:
|
|
- email
|
|
- password
|
|
- username
|
|
type: object
|
|
requests.CUWarehouseRequest:
|
|
properties:
|
|
address:
|
|
type: string
|
|
description:
|
|
type: string
|
|
name:
|
|
type: string
|
|
required:
|
|
- address
|
|
- name
|
|
type: object
|
|
response.ErrorResponse:
|
|
properties:
|
|
code:
|
|
type: integer
|
|
message:
|
|
type: string
|
|
now:
|
|
type: integer
|
|
status:
|
|
type: integer
|
|
type: object
|
|
response.SuccessResponse:
|
|
properties:
|
|
data: {}
|
|
message:
|
|
type: string
|
|
option: {}
|
|
reason_status_code:
|
|
type: string
|
|
status:
|
|
type: integer
|
|
type: object
|
|
responses.BodyRegisterResponse:
|
|
properties:
|
|
id:
|
|
type: string
|
|
type: object
|
|
responses.CreateWarehouseResponse:
|
|
properties:
|
|
id:
|
|
type: integer
|
|
type: object
|
|
responses.UpdateWarehouseResponse:
|
|
properties:
|
|
address:
|
|
type: string
|
|
description:
|
|
type: string
|
|
id:
|
|
type: integer
|
|
name:
|
|
type: string
|
|
type: object
|
|
host: localhost:3000
|
|
info:
|
|
contact: {}
|
|
description: This is the Warehouse Management API server.
|
|
title: Warehouse Management API
|
|
version: "1.0"
|
|
paths:
|
|
/auth/register:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Register with email, username and password
|
|
parameters:
|
|
- description: Register request
|
|
in: body
|
|
name: body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/requests.BodyRegisterRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
allOf:
|
|
- $ref: '#/definitions/response.SuccessResponse'
|
|
- properties:
|
|
data:
|
|
$ref: '#/definitions/responses.BodyRegisterResponse'
|
|
type: object
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/response.ErrorResponse'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/response.ErrorResponse'
|
|
"500":
|
|
description: Internal Server Error
|
|
schema:
|
|
$ref: '#/definitions/response.ErrorResponse'
|
|
summary: Register a new user
|
|
tags:
|
|
- auth
|
|
/ping:
|
|
get:
|
|
consumes:
|
|
- application/json
|
|
description: Check server is running
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
additionalProperties:
|
|
type: string
|
|
type: object
|
|
summary: Health check
|
|
tags:
|
|
- health
|
|
/v1/warehouses:
|
|
get:
|
|
consumes:
|
|
- application/json
|
|
description: Retrieve a list of all warehouses ordered by creation date
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
allOf:
|
|
- $ref: '#/definitions/response.SuccessResponse'
|
|
- properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/models.Warehouse'
|
|
type: array
|
|
type: object
|
|
"500":
|
|
description: Internal Server Error
|
|
schema:
|
|
$ref: '#/definitions/response.ErrorResponse'
|
|
summary: List all warehouses
|
|
tags:
|
|
- warehouse
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a new warehouse with the provided details
|
|
parameters:
|
|
- description: Warehouse request body
|
|
in: body
|
|
name: body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/requests.CUWarehouseRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
allOf:
|
|
- $ref: '#/definitions/response.SuccessResponse'
|
|
- properties:
|
|
data:
|
|
$ref: '#/definitions/responses.CreateWarehouseResponse'
|
|
type: object
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/response.ErrorResponse'
|
|
"500":
|
|
description: Internal Server Error
|
|
schema:
|
|
$ref: '#/definitions/response.ErrorResponse'
|
|
summary: Create a new warehouse
|
|
tags:
|
|
- warehouse
|
|
/v1/warehouses/{id}:
|
|
delete:
|
|
consumes:
|
|
- application/json
|
|
description: Delete a warehouse by its unique identifier
|
|
parameters:
|
|
- description: Warehouse ID
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/response.SuccessResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/response.ErrorResponse'
|
|
"500":
|
|
description: Internal Server Error
|
|
schema:
|
|
$ref: '#/definitions/response.ErrorResponse'
|
|
summary: Delete warehouse
|
|
tags:
|
|
- warehouse
|
|
get:
|
|
consumes:
|
|
- application/json
|
|
description: Retrieve a single warehouse using its unique identifier
|
|
parameters:
|
|
- description: Warehouse ID
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
allOf:
|
|
- $ref: '#/definitions/response.SuccessResponse'
|
|
- properties:
|
|
data:
|
|
$ref: '#/definitions/models.Warehouse'
|
|
type: object
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/response.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/response.ErrorResponse'
|
|
"500":
|
|
description: Internal Server Error
|
|
schema:
|
|
$ref: '#/definitions/response.ErrorResponse'
|
|
summary: Get warehouse by ID
|
|
tags:
|
|
- warehouse
|
|
put:
|
|
consumes:
|
|
- application/json
|
|
description: Update an existing warehouse by its ID with the provided details
|
|
parameters:
|
|
- description: Warehouse ID
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: integer
|
|
- description: Warehouse request body
|
|
in: body
|
|
name: body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/requests.CUWarehouseRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
allOf:
|
|
- $ref: '#/definitions/response.SuccessResponse'
|
|
- properties:
|
|
data:
|
|
$ref: '#/definitions/responses.UpdateWarehouseResponse'
|
|
type: object
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/response.ErrorResponse'
|
|
"500":
|
|
description: Internal Server Error
|
|
schema:
|
|
$ref: '#/definitions/response.ErrorResponse'
|
|
summary: Update warehouse
|
|
tags:
|
|
- warehouse
|
|
swagger: "2.0"
|