[미소 클론코딩 프로젝트] 2-8. 이용자 서비스 API 설계 - 협력업체 관리

2023. 8. 12. 02:17초기 과업/BackEnd

작성자알 수 없는 사용자

728x90
반응형

2023.08.12 - [초기 과업/BackEnd] - [미소 클론코딩 프로젝트] 2-7. 이용자 서비스 API 설계 - 광고용 서비스

 

[미소 클론코딩 프로젝트] 2-7. 이용자 서비스 API 설계 - 광고용 서비스

2023.08.11 - [초기 과업/BackEnd] - [미소 클론코딩 프로젝트] 2-6. 이용자 서비스 API 설계 - 계약서 서비스 [미소 클론코딩 프로젝트] 2-6. 이용자 서비스 API 설계 - 계약서 서비스 2023.08.11 - [초기 과업/Bac

giggal-people.tistory.com

 

안녕하세요. 기깔나는 사람들에서 백엔드를 맡고있는 황시아입니다.

저번 시간에 협력업체에서 등록한 광고를 확인할 수 있는 API들을 설계해 보았습니다.

이번 시간엔 협력업체를 관리할 수 있는 API를 설계해 보겠습니다.

 


협력업체 관리 API

협력업체를 등록하고 계약을 진행할 수 있는 서비스입니다.

 


협력업체 목록 조회

Request

API 호출 방식

요청 URL 메서드
/api/vendors GET

 

Request Header

Request Header에 대한 상세는 다음과 같습니다.

파라미터 타입 필수 여부 설명
Authorization String 필수 Bearer {JWT_TOKEN} - {JWT_TOKEN} : 로그인 JWT 토큰
Content-Type String 필수 application/json이어야 함

 

Request Syntax

curl -X GET http://{BASE_URL}/api/vendors \
    -H "Content-Type: application/json;charset=utf-8" \
    -H "Authorization: Bearer {JWT_TOKEN}"

 

Response

Response Elements

Response Elements에 대한 상세는 다음과 같습니다.

필드 상위 필드 타입 필수 여부 설명
statusCode   Integer 필수 API 공통 가이드 - 공통 Response 참조
message
  String 필수 API 공통 가이드 - 공통 Response 참조
data
  Object[] 필수 협력업체 목록
id data Integer 필수 협력업체 고유번호
name data String 필수 협력업체명

 

Response Syntax

{
	"statusCode": 200,
	"message": "성공"
	"data": [
		    {
		      "id": 1,
		      "name": "협력업체명1"
		    },
				{
		      "id": 2,
		      "name": "협력업체명2"
		    }
		      ]
}

특정 협력업체 조회

Request

API 호출 방식

요청 URL 메서드
/api/vendors/{id} GET

 

Request Header

Request Header에 대한 상세는 다음과 같습니다.

파라미터 타입 필수 여부 설명
Authorization String 필수 Bearer {JWT_TOKEN} - {JWT_TOKEN} : 로그인 JWT 토큰
Content-Type String 필수 application/json이어야 함

 

Request Syntax

curl -X GET http://{BASE_URL}/api/vendors/{id} \
    -H "Content-Type: application/json;charset=utf-8" \
    -H "Authorization: Bearer {JWT_TOKEN}"

 

Response

Response Elements

Response Elements에 대한 상세는 다음과 같습니다.

필드 상위 필드 타입 필수 여부 설명
statusCode   Integer 필수 API 공통 가이드 - 공통 Response 참조
message
  String 필수 API 공통 가이드 - 공통 Response 참조
data
  Object 필수 협력업체 정보
id data Integer 필수 협력업체 고유번호
name data String 필수 협력업체명
representative data String 필수 대표자명
contact
data String 필수 연락처
email data String 필수 이메일
corporationNumber data String 필수 사업자등록번호
since data String 필수 업력
businessRegistrationCopy data String 필수 사업자등록증 사본 업로드 URL
accountCopy data String 필수 통장 사본 업로드 URL

 

Response Syntax

{
  "statusCode": 200,
  "message": "성공"
  "data": {
            "id": 1,
            "name": "협력업체명",
            "representative": "대표자명",
            "contact": "연락처",
            "email": "이메일",
            "corporationNumber": "사업자등록번호",
            "since": "업력",
            "businessRegistrationCopy": "사업자등록증 사본 업로드 URL",
            "accountCopy": "통장 사본 업로드 URL"
          }
}

등록

Request

API 호출 방식

요청 URL 메서드
/api/vendors POST

 

Request Header

Request Header에 대한 상세는 다음과 같습니다.

파라미터 타입 필수 여부 설명
Authorization String 필수 Bearer {JWT_TOKEN} - {JWT_TOKEN} : 로그인 JWT 토큰
Content-Type String 필수 multipart/form-data이어야 함

 

Request Elements

Request Elements에 대한 상세는 다음과 같습니다.

필드 타입 필수 여부 설명
name String 필수 협력업체명
representative String 필수 대표자명
contact
String 필수 연락처
email String 필수 이메일
corporationNumber String 필수 사업자등록번호
since String 필수 업력
businessRegistrationCopy
MultipartFile 필수 사업자등록증 사본 파일
accountCopy MultipartFile 필수 통장사본 파일

 

Request Syntax

curl -X POST http://{BASE_URL}/api/vendors \
    -H "Content-Type: multipart/form-data" \
    -H "Authorization: Bearer {JWT_TOKEN}"

 

Response

Response Elements

Response Elements에 대한 상세는 다음과 같습니다.

필드 상위 필드 타입 필수 여부 설명
statusCode   Integer 필수 API 공통 가이드 - 공통 Response 참조
message
  String 필수 API 공통 가이드 - 공통 Response 참조
data
  Object 필수 협력업체 정보
id data Integer 필수 협력업체 고유번호

 

Response Syntax

{
  "statusCode": 200,
  "message": "성공"
  "data": {
            "id": 1
          }
}

수정

Request

API 호출 방식

요청 URL 메서드
/api/vendors/{id} PUT

 

Request Header

Request Header에 대한 상세는 다음과 같습니다.

파라미터 타입 필수 여부 설명
Authorization String 필수 Bearer {JWT_TOKEN} - {JWT_TOKEN} : 로그인 JWT 토큰
Content-Type String 필수 multipart/form-data이어야 함

 

Request Elements

Request Elements에 대한 상세는 다음과 같습니다.

필드 타입 필수 여부 설명
name String 필수 협력업체명
representative String 필수 대표자명
contact
String 필수 연락처
email String 필수 이메일
corporationNumber String 필수 사업자등록번호
since String 필수 업력
businessRegistrationCopy
MultipartFile 필수 사업자등록증 사본 파일
accountCopy MultipartFile 필수 통장사본 파일

 

Request Syntax

curl -X PUT http://{BASE_URL}/api/vendors/{id} \
    -H "Content-Type: multipart/form-data" \
    -H "Authorization: Bearer {JWT_TOKEN}"

 

Response

Response Elements

Response Elements에 대한 상세는 다음과 같습니다.

필드 상위 필드 타입 필수 여부 설명
statusCode   Integer 필수 API 공통 가이드 - 공통 Response 참조
message
  String 필수 API 공통 가이드 - 공통 Response 참조
data
  Object 필수 협력업체 정보
id data Integer 필수 협력업체 고유번호

 

Response Syntax

{
  "statusCode": 200,
  "message": "성공"
  "data": {
            "id": 1
          }
}

삭제

Request

API 호출 방식

요청 URL 메서드
/api/vendors/{id} DELETE

 

Request Header

Request Header에 대한 상세는 다음과 같습니다.

파라미터 타입 필수 여부 설명
Authorization String 필수 Bearer {JWT_TOKEN} - {JWT_TOKEN} : 로그인 JWT 토큰
Content-Type String 필수 application/json이어야 함

 

Request Elements

없음

 

Request Syntax

curl -X PUT http://{BASE_URL}/api/vendors/{id} \
    -H "Content-Type: application/json;charset=utf-8" \
    -H "Authorization: Bearer {JWT_TOKEN}"

 

Response

Response Elements

Response Elements에 대한 상세는 다음과 같습니다.

필드 상위 필드 타입 필수 여부 설명
statusCode   Integer 필수 API 공통 가이드 - 공통 Response 참조
message
  String 필수 API 공통 가이드 - 공통 Response 참조

 

Response Syntax

{
  "statusCode": 200,
  "message": "성공"
}

 

 

 

 

 

728x90
반응형