배송 API에 오신 것을 환영합니다! 이 API는 응용 프로그램에서 제품 및 판매를 관리하기위한 솔루션입니다. .NET을 사용하여 제작 된이 제품은 제품을 작성하고 관리하고 판매 거래를 처리하기위한 편안한 인터페이스를 제공합니다. 이 문서는 자세한 설명, 요청 매개 변수 및 응답 형식을 포함한 전달 API 엔드 포인트에 대한 개요를 제공합니다. API에는 건강 점검, 제품 관리 및 판매 처리에 대한 엔드 포인트가 포함되어 있습니다.
저장소 복제 :
git clone https://github.com/anthonyvii27/delivery-api저장소 디렉토리로 변경 :
cd delivery-api컨테이너화 된 환경을 시작하려면 명령을 실행하십시오.
make compose-up-v2 API는 컴퓨터에서 항구 :8080 에서 실행됩니다.
선택적으로,이 저장소의 루트에는 구현 된 엔드 포인트를 실행하기위한 사용하기 쉬운 인터페이스를 제공하는 delivery-api.http 라는 파일이 있습니다.
GET /health요약 : API의 건강 상태를 확인합니다.
응답 :
200 OK
" Database connection is healthy. "503 서비스를 사용할 수 없습니다
" Database connection isn't available. "500 내부 서버 오류
" An error occurred while checking the database connection. "GET /products요약 : 모든 제품을 검색합니다.
응답 :
[
{
"id" : 1 ,
"name" : " Product Name " ,
"unitOfMeasurement" : " UN " ,
"price" : 9.99
}
]GET /products/{id}요약 : ID로 제품을 검색합니다.
매개 변수 :
id (Integer) : 검색 할 제품의 ID.응답 :
200 OK
{
"id" : 1 ,
"name" : " Product Name " ,
"unitOfMeasurement" : " UN " ,
"price" : 9.99
}404 찾을 수 없습니다
{
"message" : " Product with ID {id} not found. "
}POST /products요약 : 신제품을 만듭니다.
요청 본문 :
{
"name" : " Product Name " ,
"unitOfMeasurement" : " Unit " ,
"price" : 9.99
}응답 :
201 생성
{
"id" : 1 ,
"name" : " Product Name " ,
"unitOfMeasurement" : " Unit " ,
"price" : 9.99
}400 나쁜 요청
{
"message" : " Validation error messages "
}PUT /products/{id}요약 : 기존 제품을 업데이트합니다.
매개 변수 :
id (Integer) : 업데이트 할 제품의 ID.요청 본문 :
{
"name" : " Updated Product Name " ,
"unitOfMeasurement" : " Updated Unit " ,
"price" : 9.99
}응답 :
200 OK
{
"id" : 1 ,
"name" : " Updated Product Name " ,
"unitOfMeasurement" : " Updated Unit " ,
"price" : 9.99
}400 나쁜 요청
{
"message" : " Validation error messages "
}404 찾을 수 없습니다
{
"message" : " Product with ID {id} not found. "
}DELETE /products/{id}요약 : ID로 제품을 삭제합니다.
매개 변수 :
id (Integer) : 삭제할 제품의 ID.응답 :
204 콘텐츠 없음
400 나쁜 요청
{
"message" : " Error message "
}404 찾을 수 없습니다
{
"message" : " Product with ID {id} not found. "
}409 갈등
{
"message" : " Cannot delete the product as it has associated sale items. "
}GET /sales요약 : 모든 판매 (역사적)를 검색합니다.
응답 :
[
{
"id" : 1 ,
"saleDate" : " 2024-08-14T00:00:00Z " ,
"totalAmount" : 100.00 ,
"saleItems" : [
{
"id" : 1 ,
"productId" : 1 ,
"quantity" : 2 ,
"unitPrice" : 50.00
}
]
}
]GET /sales/{id}요약 : ID로 판매를 검색합니다.
매개 변수 :
id (Integer) : 검색 할 판매 ID.응답 :
200 OK
{
"id" : 1 ,
"saleDate" : " 2024-08-14T00:00:00Z " ,
"totalAmount" : 100.00 ,
"saleItems" : [
{
"id" : 1 ,
"productId" : 1 ,
"quantity" : 2 ,
"unitPrice" : 50.00
}
]
}404 찾을 수 없습니다
{
"message" : " Sale with ID {id} not found. "
}POST /sales요약 : 새로운 판매를 만듭니다.
요청 본문 :
{
"saleDate" : " 2024-08-14T00:00:00Z " ,
"zipCode" : " 12345678 " ,
"saleItems" : [
{
"productId" : 1 ,
"quantity" : 2
}
]
}응답 :
201 생성
{
"id" : 1 ,
"saleDate" : " 2024-08-14T00:00:00Z " ,
"totalAmount" : 100.00 ,
"saleItems" : [
{
"id" : 1 ,
"productId" : 1 ,
"quantity" : 2 ,
"unitPrice" : 50.00 ,
"product" : {
"id" : 1 ,
"name" : " Product Name " ,
"unitOfMeasurement" : " Unit " ,
"price" : 50.00
}
}
]
}400 나쁜 요청
{
"message" : " Validation error messages "
}DELETE /sales/{id}요약 : ID로 판매를 삭제 (취소).
매개 변수 :
id (Integer) : 삭제할 판매 ID.응답 :
204 콘텐츠 없음
400 나쁜 요청
{
"message" : " Error message "
}404 찾을 수 없습니다
{
"message" : " Sale with ID {id} not found. "
}