— 공통 —
보호소 로그인
Request
HTTP request
POST /api/auth/shelters/login HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 91
X-CSRF-TOKEN: SlOHpQIjYv3jFQ9_tV7wenZkVvTtNOlmOzGrrDzZD_kEakjGf2DhxGBHAc3Odj1K1HPEQxdce5XbVY1LXleZngm9OchlC3D0
Host: localhost:8080
{
"email" : "email@email.com",
"password" : "password123!",
"deviceToken" : "token"
}
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
보호소 이메일 |
|
|
|
true |
보호소 패스워드 |
|
|
|
fcm device token |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Set-Cookie: shelterRefreshToken=refreshToken; Path=/api/auth; Domain=.anifriends.site; Secure; HttpOnly; SameSite=None
Content-Type: application/json;charset=UTF-8
Content-Length: 78
{
"userId" : 1,
"role" : "ROLE_SHELTER",
"accessToken" : "accessToken"
}
Response fields
Path | Type | Description |
---|---|---|
|
|
사용자 ID |
|
|
사용자 역할 |
|
|
액세스 토큰 |
Response cookies
Name | Description |
---|---|
|
리프레시 토큰 |
봉사자 로그인
Request
HTTP request
POST /api/auth/volunteers/login HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 91
X-CSRF-TOKEN: Q_258L0_YAe1ue5v9uL6Dgo-zzRIsd3K27Ok6f7wxikFvKjpIsyKk4VZATaY3Npbl8_Oa28H4g150rzn7tWW0MqW9h03j5nd
Host: localhost:8080
{
"email" : "email@email.com",
"password" : "password123!",
"deviceToken" : "token"
}
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
봉사자 이메일 |
|
|
|
true |
봉사자 패스워드 |
|
|
|
fcm device token |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Set-Cookie: volunteerRefreshToken=refreshToken; Path=/api/auth; Domain=.anifriends.site; Secure; HttpOnly; SameSite=None
Content-Type: application/json;charset=UTF-8
Content-Length: 80
{
"userId" : 1,
"role" : "ROLE_VOLUNTEER",
"accessToken" : "accessToken"
}
Response fields
Path | Type | Description |
---|---|---|
|
|
사용자 ID |
|
|
사용자 역할 |
|
|
액세스 토큰 |
Response cookies
Name | Description |
---|---|
|
리프레시 토큰 |
봉사자 액세스 토큰 갱신
Request
HTTP request
POST /api/auth/volunteers/refresh HTTP/1.1
X-CSRF-TOKEN: yxR5pWbpLSQfeGe0ShEkeSl1mf5xuZA_V3a5FwHg4sJWGVu4qSEfxl7ZHhcyHleNKTwQHRsTtJ8ViPUSZhLddTaGgfBmKGuI
Host: localhost:8080
Cookie: volunteerRefreshToken=eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTQsInN1YiI6IjEiLCJleHAiOjE3MDI3NDIwMTQsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.u9z8JGbz1B6WfHloLAZpSoXAxh-6Z8RO-nfw1oxzlpda8H0OamkciSsr_KjxXnc7
Content-Type: application/x-www-form-urlencoded
Request cookies
Name | Description |
---|---|
|
봉사자 리프레시 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Set-Cookie: volunteerRefreshToken=eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTQsInN1YiI6IjEiLCJleHAiOjE3MDI3NDIwMTQsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.u9z8JGbz1B6WfHloLAZpSoXAxh-6Z8RO-nfw1oxzlpda8H0OamkciSsr_KjxXnc7; Path=/api/auth; Domain=.anifriends.site; Secure; HttpOnly; SameSite=None
Content-Type: application/json;charset=UTF-8
Content-Length: 267
{
"userId" : 1,
"role" : "ROLE_VOLUNTEER",
"accessToken" : "eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTQsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTQsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.-0K1KegFg4wFr8pYuSpSIiQyhEElUia3kEk9A5Qu1lrPIPlPzUhUaZ-DSor1XAqi"
}
Response cookies
Name | Description |
---|---|
|
갱신된 리프레시 토큰 |
Response fields
Path | Type | Description |
---|---|---|
|
|
사용자 ID |
|
|
사용자 역할 |
|
|
갱신된 액세스 토큰 |
보호소 액세스 토큰 갱신
Request
HTTP request
POST /api/auth/shelters/refresh HTTP/1.1
X-CSRF-TOKEN: X3GMenbZjChDNJXHg9LL0gzU7lF5kdAVBQsvptnSzk3u0LVRbBPoTxLhvBhuAfb3sv__tG-ww2lAoeQ4PW0dnuvi-nvestQy
Host: localhost:8080
Cookie: shelterRefreshToken=eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTQsInN1YiI6IjEiLCJleHAiOjE3MDI3NDIwMTQsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.u9z8JGbz1B6WfHloLAZpSoXAxh-6Z8RO-nfw1oxzlpda8H0OamkciSsr_KjxXnc7
Content-Type: application/x-www-form-urlencoded
Request cookies
Name | Description |
---|---|
|
보호소 리프레시 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Set-Cookie: shelterRefreshToken=eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTQsInN1YiI6IjEiLCJleHAiOjE3MDI3NDIwMTQsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.u9z8JGbz1B6WfHloLAZpSoXAxh-6Z8RO-nfw1oxzlpda8H0OamkciSsr_KjxXnc7; Path=/api/auth; Domain=.anifriends.site; Secure; HttpOnly; SameSite=None
Content-Type: application/json;charset=UTF-8
Content-Length: 267
{
"userId" : 1,
"role" : "ROLE_VOLUNTEER",
"accessToken" : "eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTQsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTQsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.-0K1KegFg4wFr8pYuSpSIiQyhEElUia3kEk9A5Qu1lrPIPlPzUhUaZ-DSor1XAqi"
}
Response cookies
Name | Description |
---|---|
|
갱신된 보호소 리프레시 토큰 |
Response fields
Path | Type | Description |
---|---|---|
|
|
사용자 ID |
|
|
사용자 역할 |
|
|
갱신된 액세스 토큰 |
봉사자 로그아웃
Request
HTTP request
POST /api/auth/volunteers/logout HTTP/1.1
X-CSRF-TOKEN: jSbgfeFiel4dFEVPfsx1_rtYKM1YEddNslrN-KC51gMSAuhJuUXVGNhbS24wcnMtRuFBy9htBaxoJuRgi2z-wcPdsGB0NYt-
Host: localhost:8080
Cookie: volunteerRefreshToken=eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTQsInN1YiI6IjEiLCJleHAiOjE3MDI3NDIwMTQsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.u9z8JGbz1B6WfHloLAZpSoXAxh-6Z8RO-nfw1oxzlpda8H0OamkciSsr_KjxXnc7
Content-Type: application/x-www-form-urlencoded
Request cookies
Name | Description |
---|---|
|
봉사자 리프레시 토큰 쿠키 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Set-Cookie: volunteerRefreshToken=; Path=/api/auth; Domain=.anifriends.site; Max-Age=0; Expires=Thu, 1 Jan 1970 00:00:00 GMT; Secure; HttpOnly; SameSite=None
Response cookies
Name | Description |
---|---|
|
리프레시 토큰 쿠키 무효화 설정 쿠키 |
보호소 로그아웃
Request
HTTP request
POST /api/auth/shelters/logout HTTP/1.1
X-CSRF-TOKEN: MYWVVCe4-yp1I4bYImBJrHgCLEAq3uHQ9HyCLb00zllH65BjU7StYheJzUhYQrPtQU19yh47AXgf79f9wB3jG4hW_WF33qFR
Host: localhost:8080
Cookie: shelterRefreshToken=eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTQsInN1YiI6IjEiLCJleHAiOjE3MDI3NDIwMTQsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.u9z8JGbz1B6WfHloLAZpSoXAxh-6Z8RO-nfw1oxzlpda8H0OamkciSsr_KjxXnc7
Content-Type: application/x-www-form-urlencoded
Request cookies
Name | Description |
---|---|
|
보호소 리프레시 토큰 쿠키 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Set-Cookie: shelterRefreshToken=; Path=/api/auth; Domain=.anifriends.site; Max-Age=0; Expires=Thu, 1 Jan 1970 00:00:00 GMT; Secure; HttpOnly; SameSite=None
Response cookies
Name | Description |
---|---|
|
리프레시 토큰 쿠키 무효화 설정 쿠키 |
— 공통 —
봉사자 이메일 중복 확인
Request
HTTP request
POST /api/volunteers/email HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 32
X-CSRF-TOKEN: MrReIl_aDZTYUt7aejKRG8Kl_a2azgIQyqqHi2AT2BCmoYr8UNZmQWm8b_b1Zey-Qh-lK_LA0JWq-mc9-prhuFUguSWVmbnO
Host: localhost:8080
{
"email" : "asdf@gmail.com"
}
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
@를 포함한 이메일 형식 |
사용자 이메일 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 28
{
"isDuplicated" : false
}
Response fields
Path | Type | Description |
---|---|---|
|
|
이메일 중복 여부 |
봉사자 회원 가입
Request
HTTP request
POST /api/volunteers HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 169
X-CSRF-TOKEN: zrYifKZKy74C56HEvR_EDcRCFiUorcmMZOGs3814yp_hpXg1qtAXHsJ6_ocv3pHyjzLwPqEjO0RKnqihV4PKvfoa8qbUkx4N
Host: localhost:8080
{
"email" : "asdf@gmail.com",
"password" : "asdf1234",
"name" : "김봉사",
"birthDate" : "1999-03-23",
"phoneNumber" : "010-1234-5678",
"gender" : "MALE"
}
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
이메일 |
|
|
|
true |
비밀번호 |
|
|
|
true |
이름 |
|
|
|
true |
생년월일 |
|
|
|
true |
전화번호 |
|
|
|
true |
성별 |
Response
HTTP response
HTTP/1.1 201 Created
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Location: /api/volunteers/1
Content-Type: application/json;charset=UTF-8
Content-Length: 23
{
"volunteerId" : 1
}
Response fields
Path | Type | Description |
---|---|---|
|
|
생성된 봉사자 ID |
Response headers
Name | Description |
---|---|
|
생성된 리소스 위치 |
— 봉사자 —
봉사자 마이 페이지 조회
Request
HTTP request
GET /api/volunteers/me HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjMsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjMsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.dM9azJlTP8qKrQhIKV2UjurRGy9Cq_2XtAjb6zRrXiy6wUoekeDhG4Ge1MF8kJ3z
X-CSRF-TOKEN: cgJzarx2sB_hvYUr7CFcVCKOuNGDCP3ngidLCWzNc14eV0mVQzFADItOhijMj-Qf3wxoZBS7lem3O57K5BN8a1iuRG56M3z2
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
액세스 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 300
{
"volunteerId" : 1,
"volunteerEmail" : "asdf@gmail.com",
"volunteerName" : "김봉사",
"volunteerBirthDate" : "1999-03-23",
"volunteerPhoneNumber" : "010-1234-5678",
"volunteerTemperature" : 36,
"completedVolunteerCount" : 0,
"volunteerImageUrl" : "",
"volunteerGender" : "MALE"
}
Response fields
Path | Type | Description |
---|---|---|
|
|
봉사자 ID |
|
|
이메일 |
|
|
이름 |
|
|
생년월일 |
|
|
전화번호 |
|
|
온도 |
|
|
봉사 횟수 |
|
|
프로필 이미지 URL |
|
|
성별 |
봉사자 비밀번호 변경
Request
HTTP request
PATCH /api/volunteers/me/passwords HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjQsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjQsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.XqcUaWOENeAdsvdXIfL7jRqDTFP7NSMPbiuhnwRhpXYG4vntnPOwU4zwApPZcBiU
Content-Length: 76
X-CSRF-TOKEN: _TyPSSzFNeuwq29eAOckYyyFZXs4vObIJfYN1fPcdCM0CGX3yQ7ufxvyBI6dzV5nMMoQABy1SBld2dflFMU45ZHrRkYHPVHO
Host: localhost:8080
{
"oldPassword" : "oldPassword123!",
"newPassword" : "newPassword123!"
}
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
6자 이상, 16자 이하 |
현재 비밀번호 |
|
|
true |
6자 이상, 16자 이하 |
변경할 비밀번호 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
봉사자 계정 정보 수정
Request
HTTP request
PATCH /api/volunteers/me HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjMsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjMsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.dM9azJlTP8qKrQhIKV2UjurRGy9Cq_2XtAjb6zRrXiy6wUoekeDhG4Ge1MF8kJ3z
Content-Length: 153
X-CSRF-TOKEN: cwAUVJ46TrrjTen_Adp-1AViAib8OcQSGv3Kn3nfDoWlv6NTQ2MiN6gDeo7OL42aOPdK4WBRL0edWqU_eZvyqRznaLPAjsdk
Host: localhost:8080
{
"name" : "새로운이름",
"gender" : "MALE",
"birthDate" : "2023-12-16",
"phoneNumber" : "010-9999-9999",
"imageUrl" : "www.aws.s3.com/2"
}
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
1자 이상, 10자 이하 |
변경할 봉사자 이름 |
|
|
true |
MALE, FEMALE |
변경할 봉사자 성별 |
|
|
true |
yyyy-MM-dd |
변경할 봉사자 생년월일 |
|
|
true |
-을 포함한 전화번호 형식 |
변경할 봉사자 전화번호 |
|
|
true |
변경할 봉사자 이미지 url |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
— 보호소 —
봉사자 프로필 조회
Request
HTTP request
GET /api/shelters/volunteers/1/profile HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjMsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjMsInJvbGUiOiJST0xFX1NIRUxURVIifQ.alOm9VlmcxT9X4GIjtQmlhyoe6P-LBBaiLZjmrWZO8s32oS0bA9kKOj8mdGpl-UC
X-CSRF-TOKEN: p21UZceAgGnpoqXvRfoNDa9I8rMWgNBMkw_-zATLKRUguwvUkFlnVaG5sQzEwZeLdNc5PZoq34sv4-hhp2vHrmD7ESIZgzu1
Host: localhost:8080
Path parameters
Parameter | Description |
---|---|
|
봉사자 ID |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 177
{
"volunteerEmail" : "asdf@gmail.com",
"volunteerName" : "김봉사",
"volunteerTemperature" : 36,
"volunteerPhoneNumber" : "010-1234-5678",
"volunteerImageUrl" : ""
}
Response fields
Path | Type | Description |
---|---|---|
|
|
이메일 |
|
|
이름 |
|
|
온도 |
|
|
전화번호 |
|
|
프로필 이미지 URL |
— 공통 —
보호소 이메일 중복 확인
Request
HTTP request
POST /api/shelters/email HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 33
X-CSRF-TOKEN: Kqjn4WyJdB5H-W7NgqcixqouSpJKli83LcK1kMypacpHK54nHMzW1V3vRChqz1mou4oW_skeZ6t89R0aH6eFpPTIUf1xHfwU
Host: localhost:8080
{
"email" : "email@email.com"
}
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
보호소 이메일 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 27
{
"isDuplicated" : true
}
Response fields
Path | Type | Description |
---|---|---|
|
|
이메일 중복 여부 |
보호소 회원가입
Request
HTTP request
POST /api/shelters HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 305
X-CSRF-TOKEN: NTy-dPHuzDquKKB9AgGlNm5zzFm3oT83akWQieAba_M7A2hgDAuHF8OL_gODSZBKYyyRAg0S4WGPklkaC3zxvoF6CcQMMQpT
Host: localhost:8080
{
"email" : "email@email.com",
"password" : "password123!",
"name" : "보호소 이름",
"address" : "보호소 주소",
"addressDetail" : "보호소 상세 주소",
"phoneNumber" : "보호소 전화번호",
"sparePhoneNumber" : "보호소 임시 전화번호",
"isOpenedAddress" : false
}
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
@ 포함 |
보호소 이메일 |
|
|
true |
6자 이상, 16자 이하 |
보호소 패스워드 |
|
|
true |
1자 이상, 20자 이하 |
보호소 이름 |
|
|
true |
1자 이상, 100자 이하 |
보호소 주소 |
|
|
true |
1자 이상, 100자 이하 |
보호소 상세 주소 |
|
|
true |
- 포함, 전화번호 형식 준수 |
보호소 전화번호 |
|
|
true |
- 포함, 전화번호 형식 준수 |
보호소 임시 전화번호 |
|
|
true |
보호소 주소 공개 여부 |
Response
HTTP response
HTTP/1.1 201 Created
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Location: /api/shelters/1
Content-Type: application/json;charset=UTF-8
Content-Length: 21
{
"shelterId" : 1
}
Response headers
Name | Description |
---|---|
|
생성된 리소스 접근 가능 위치 |
Response fields
Path | Type | Description |
---|---|---|
|
|
생성된 보호소 ID |
보호소 프로필 조회
Request
HTTP request
GET /api/shelters/1/profile HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjMsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjMsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.dM9azJlTP8qKrQhIKV2UjurRGy9Cq_2XtAjb6zRrXiy6wUoekeDhG4Ge1MF8kJ3z
X-CSRF-TOKEN: WrWHo3Wh-2343pltv1egtT5YlHjJ4EJ0dgf1_qDI-4zK2GN5bIS_wE3DylzV7_pa2XqU0FppuRn6giNZT2KWz5X6mLX56ldB
Host: localhost:8080
Path parameters
Parameter | Description |
---|---|
|
보호소 ID |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 304
{
"shelterId" : 1,
"shelterEmail" : "shelterEmail@email.com",
"shelterName" : "shelterName",
"shelterAddress" : "shelterAddress",
"shelterAddressDetail" : "shelterAddressDetail",
"shelterPhoneNumber" : "010-1234-5678",
"shelterSparePhoneNumber" : "010-8765-4321",
"shelterImageUrl" : ""
}
Response fields
Path | Type | Description |
---|---|---|
|
|
보호소 ID |
|
|
보호소 이메일 |
|
|
보호소 이름 |
|
|
보호소 주소 |
|
|
보호소 상세주소 |
|
|
보호소 전화번호 |
|
|
보호소 임시 전화번호 |
|
|
보호소 이미지 Url |
보호소 간단 정보 조회
Request
HTTP request
GET /api/shelters/1/profile/simple HTTP/1.1
Content-Type: application/json;charset=UTF-8
X-CSRF-TOKEN: hfs3BUt7nhTlEjHEAmgduvzi6369ceM5aTToLbdFPgDZeFD6sc4FNX1M_SLIdwXyM0Upg5rbxhyNQdMUCgXbT48gXGLvQWPK
Host: localhost:8080
Path parameters
Parameter | Description |
---|---|
|
보호소 ID |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 145
{
"shelterName" : "shelterName",
"shelterEmail" : "shelterEmail@email.com",
"shelterAddress" : "shelterAddress",
"shelterImageUrl" : ""
}
Response fields
Path | Type | Description |
---|---|---|
|
|
보호소 이름 |
|
|
보호소 이메일 |
|
|
보호소 주소 |
|
|
보호소 이미지 url |
— 보호소 —
보호소 마이 페이지 조회
Request
HTTP request
GET /api/shelters/me HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjMsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjMsInJvbGUiOiJST0xFX1NIRUxURVIifQ.alOm9VlmcxT9X4GIjtQmlhyoe6P-LBBaiLZjmrWZO8s32oS0bA9kKOj8mdGpl-UC
X-CSRF-TOKEN: FnZSKKGRCeWWKA9ZeqhUoEk6jtDF47OHcZgqxBUeHkxGNVFjJBA3HJSmP9y7HT5tG4VgwXwIo-j01NWqR60f8yEufH91AzBS
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 339
{
"shelterId" : 1,
"shelterName" : "shelterName",
"shelterEmail" : "shelterEmail@email.com",
"shelterAddress" : "shelterAddress",
"shelterAddressDetail" : "shelterAddressDetail",
"shelterIsOpenedAddress" : true,
"shelterPhoneNumber" : "010-1234-5678",
"shelterSparePhoneNumber" : "010-8765-4321",
"shelterImageUrl" : ""
}
Response fields
Path | Type | Description |
---|---|---|
|
|
보호소 ID |
|
|
보호소 이름 |
|
|
보호소 이메일 |
|
|
보호소 주소 |
|
|
보호소 상세주소 |
|
|
보호소 상세 주소 공개 여부 |
|
|
보호소 전화번호 |
|
|
보호소 임시 전화번호 |
|
|
보호소 이미지 Url |
보호소 비밀 번호 변경
Request
HTTP request
PATCH /api/shelters/me/passwords HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjMsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjMsInJvbGUiOiJST0xFX1NIRUxURVIifQ.alOm9VlmcxT9X4GIjtQmlhyoe6P-LBBaiLZjmrWZO8s32oS0bA9kKOj8mdGpl-UC
Content-Length: 76
X-CSRF-TOKEN: 4ldi8y9yZM5FDfTW0h9Yyet8CzpepNHsUz12GUuXRqEdYZKM1GYGyh9KUP1oP5Ww4TJs_NlIJlg8nLfBZAlPe3-vcJZ5APTu
Host: localhost:8080
{
"oldPassword" : "oldPassword123!",
"newPassword" : "newPassword123!"
}
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
6자 이상, 16자 이하 |
현재 비밀번호 |
|
|
true |
6자 이상, 16자 이하 |
변경할 비밀번호 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
보호소 상세 주소 공개 여부 변경
Request
HTTP request
PATCH /api/shelters/me/address/status HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjMsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjMsInJvbGUiOiJST0xFX1NIRUxURVIifQ.alOm9VlmcxT9X4GIjtQmlhyoe6P-LBBaiLZjmrWZO8s32oS0bA9kKOj8mdGpl-UC
Content-Length: 31
X-CSRF-TOKEN: s0h33NiHAVtgekkEvTa9o0XbYWUo_VyyyFHAEsPGrgHxHXlAg3lH7uq1NG9NTn813huJm3LvTFxMmT-fqWikI_f-mjaQLU54
Host: localhost:8080
{
"isOpenedAddress" : false
}
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
보호소 상세 주소 공개 여부 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
보호소 정보 수정
Request
HTTP request
PATCH /api/shelters/me HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjMsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjMsInJvbGUiOiJST0xFX1NIRUxURVIifQ.alOm9VlmcxT9X4GIjtQmlhyoe6P-LBBaiLZjmrWZO8s32oS0bA9kKOj8mdGpl-UC
Content-Length: 226
X-CSRF-TOKEN: 2pe9eNY4EqW6fHDSFlIQ9D1O6Wot5fHdORZse42UzUbzqTDU4vTZHOALdsSXShTrLn8kxFl8xAhJ18nwD3UIQ76k-ySRmVW2
Host: localhost:8080
{
"name" : "shelterName",
"imageUrl" : "",
"address" : "shelterAddress",
"addressDetail" : "shelterAddressDetail",
"phoneNumber" : "010-1234-5678",
"sparePhoneNumber" : "010-8765-4321",
"isOpenedAddress" : true
}
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
1자 이상, 20자 이하 |
보호소 이름 |
|
|
보호소 이름 |
||
|
|
true |
1자 이상, 100자 이하 |
보호소 주소 |
|
|
true |
1자 이상, 100자 이하 |
보호소 상세 주소 |
|
|
true |
- 포함, 전화번호 형식 준수 |
보호소 전화번호 |
|
|
true |
- 포함, 전화번호 형식 준수 |
보호소 임시 전화번호 |
|
|
true |
보호소 주소 공개 여부 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
— 공통 —
봉사 모집글 목록 조회 & 검색
Request
HTTP request
GET /api/recruitments?keyword=%EA%B2%85%EC%83%89%EC%96%B4&startDate=2023-12-16&endDate=2023-12-16&closedFilter=IS_OPENED&keywordFilter=IS_CONTENT&pageNumber=0&pageSize=10 HTTP/1.1
X-CSRF-TOKEN: h1xeYJByb6sVgqytQcyefLO7c7gnZgkv-c9VhZdB2K_5PRFfvm1vAqZKW844sc-VduGqSNGDXoAXVToCzfoz5qEj6J_KWHRr
Host: localhost:8080
Query parameters
필드명 | 필수값 | 제약 | 설명 |
---|---|---|---|
|
검색어 |
||
|
yyyy-MM-dd |
검색 시작일 |
|
|
yyyy-MM-dd |
검색 종료일 |
|
|
IS_OPENED, IS_CLOSED |
마감 여부 |
|
|
IS_TITLE, IS_CONTENT, IS_SHELTER_NAME, ALL |
검색 필터 |
|
|
true |
페이지 번호 |
|
|
true |
페이지 사이즈 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 570
{
"recruitments" : [ {
"recruitmentId" : 1,
"recruitmentTitle" : "recruitmentTitle",
"recruitmentStartTime" : "2024-01-16T22:06:52.097171",
"recruitmentEndTime" : "2024-01-17T00:06:52.097171",
"recruitmentDeadline" : "2024-01-15T22:06:52.097171",
"recruitmentIsClosed" : false,
"recruitmentApplicantCount" : 0,
"recruitmentCapacity" : 10,
"shelterName" : "shelterName",
"shelterImageUrl" : "",
"recruitmentCreatedAt" : "2023-12-16T22:06:59.326311"
} ],
"pageInfo" : {
"totalElements" : 1,
"hasNext" : false
}
}
Response fields
Path | Type | Description |
---|---|---|
|
|
봉사 모집글 리스트 |
|
|
봉사 모집글 ID |
|
|
봉사 모집글 제목 |
|
|
봉사 시작 시간 |
|
|
봉사 종료 시간 |
|
|
봉사 모집 마감 시간 |
|
|
봉사 모집 마감 여부 |
|
|
봉사 신청 인원 |
|
|
봉사 정원 |
|
|
보호소 이름 |
|
|
보호소 이미지 url |
|
|
봉사 모집글 생성 시간 |
|
|
페이지 정보 |
|
|
총 요소 개수 |
|
|
다음 페이지 여부 |
봉사 모집글 목록 조회 & 검색 V2
Request
HTTP request
GET /api/v2/recruitments?keyword=%EA%B2%85%EC%83%89%EC%96%B4&startDate=2023-12-16&endDate=2023-12-16&closedFilter=IS_OPENED&keywordFilter=IS_CONTENT&recruitmentId=1&createdAt=2023-12-16T22%3A06%3A59.379521&pageNumber=0&pageSize=10 HTTP/1.1
X-CSRF-TOKEN: MtReGx_-Gcas1JBbQLWP2SwmO9T_hdsEz05oLXHjLVv3LRW9VuJsKXrPLfWB4ac4c5i74R0QFu2esO8pqSxdG0jSFWiVGSOL
Host: localhost:8080
Query parameters
필드명 | 필수값 | 제약 | 설명 |
---|---|---|---|
|
검색어 |
||
|
yyyy-MM-dd |
검색 시작일 |
|
|
yyyy-MM-dd |
검색 종료일 |
|
|
IS_OPENED, IS_CLOSED |
마감 여부 |
|
|
IS_TITLE, IS_CONTENT, IS_SHELTER_NAME, ALL |
검색 필터 |
|
|
true |
보호소 ID |
|
|
true |
보호소 생성 날짜 |
|
|
true |
페이지 번호 |
|
|
true |
페이지 사이즈 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 570
{
"recruitments" : [ {
"recruitmentId" : 1,
"recruitmentTitle" : "recruitmentTitle",
"recruitmentStartTime" : "2024-01-16T22:06:52.097171",
"recruitmentEndTime" : "2024-01-17T00:06:52.097171",
"recruitmentDeadline" : "2024-01-15T22:06:52.097171",
"recruitmentIsClosed" : false,
"recruitmentApplicantCount" : 0,
"recruitmentCapacity" : 10,
"shelterName" : "shelterName",
"shelterImageUrl" : "",
"recruitmentCreatedAt" : "2023-12-16T22:06:59.379598"
} ],
"pageInfo" : {
"totalElements" : 1,
"hasNext" : false
}
}
Response fields
Path | Type | Description |
---|---|---|
|
|
봉사 모집글 리스트 |
|
|
봉사 모집글 ID |
|
|
봉사 모집글 제목 |
|
|
봉사 시작 시간 |
|
|
봉사 종료 시간 |
|
|
봉사 모집 마감 시간 |
|
|
봉사 모집 마감 여부 |
|
|
봉사 신청 인원 |
|
|
봉사 정원 |
|
|
보호소 이름 |
|
|
보호소 이미지 url |
|
|
봉사 모집글 생성 시간 |
|
|
페이지 정보 |
|
|
총 요소 개수 |
|
|
다음 페이지 여부 |
봉사 모집글 상세 조회
Request
HTTP request
GET /api/recruitments/1 HTTP/1.1
Content-Type: application/json;charset=UTF-8
X-CSRF-TOKEN: Iw7ocnD7-abVDqwC1_SNjfSXndaWd1h_U5PbpbeRc4oX-2LRQTiKR0fLyZ74Op4359m5vcbzsO_1E25SMqC-l46iSu5zmVrl
Host: localhost:8080
Path parameters
Parameter | Description |
---|---|
|
봉사 모집글 ID |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 500
{
"recruitmentTitle" : "recruitmentTitle",
"recruitmentApplicantCount" : 0,
"recruitmentCapacity" : 10,
"recruitmentContent" : "recruitmentContent",
"recruitmentStartTime" : "2024-01-16T22:06:52.097171",
"recruitmentEndTime" : "2024-01-17T00:06:52.097171",
"recruitmentIsClosed" : false,
"recruitmentDeadline" : "2024-01-15T22:06:52.097171",
"recruitmentCreatedAt" : null,
"recruitmentUpdatedAt" : null,
"recruitmentImageUrls" : [ "imageUrl1", "imageUrl2" ],
"shelterId" : 1
}
Response fields
Path | Type | Description |
---|---|---|
|
|
모집글 제목 |
|
|
모집글 지원자 수 |
|
|
모집글 정원 |
|
|
모집글 내용 |
|
|
봉사 시작 시간 |
|
|
봉사 종료 시간 |
|
|
마감 여부 |
|
|
마감 시간 |
|
|
모집글 생성 시간 |
|
|
모집글 업데이트 시간 |
|
|
모집글 이미지 url 리스트 |
|
|
보호소 ID |
보호소가 작성한 봉사 모집글 목록 조회
Request
HTTP request
GET /api/shelters/1/recruitments HTTP/1.1
Content-Type: application/json;charset=UTF-8
X-CSRF-TOKEN: dZhKdy9nohY_v9riEC1ie5SCA6_U64yFvtO0AoH10YT7x4zPRKwrExwCkXUS2-6AdABWTaWzLs2w2buojeOCMLTG5-LCo7up
Host: localhost:8080
Path parameters
Parameter | Description |
---|---|
|
보호소 ID |
Query parameters
필드명 | 필수값 | 제약 | 설명 |
---|---|---|---|
|
페이지 크기 |
||
|
페이지 번호 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 356
{
"pageInfo" : {
"totalElements" : 1,
"hasNext" : false
},
"recruitments" : [ {
"recruitmentId" : 1,
"recruitmentTitle" : "recruitmentTitle",
"recruitmentStartTime" : "2024-01-16T22:06:52.097171",
"recruitmentDeadline" : "2024-01-15T22:06:52.097171",
"recruitmentCapacity" : 10,
"recruitmentApplicantCount" : 0
} ]
}
Response fields
Path | Type | Description |
---|---|---|
|
|
총 게시글 수 |
|
|
다음 페이지 여부 |
|
|
모집 게시글 리스트 |
|
|
모집 ID |
|
|
모집 제목 |
|
|
봉사 시작 시간 |
|
|
모집 마감 시간 |
|
|
모집 정원 |
|
|
현재 지원자 수 |
— 보호소 —
내(보호소)가 작성한 봉사 모집글 목록 조회 & 검색
Request
HTTP request
GET /api/shelters/recruitments?keyword=%EA%B2%85%EC%83%89%EC%96%B4&startDate=2023-12-16&endDate=2023-12-16&closedFilter=IS_OPENED&keywordFilter=IS_SHELTER_NAME&pageNumber=0&pageSize=10 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTksInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTksInJvbGUiOiJST0xFX1NIRUxURVIifQ.x0FfgnjMmL-dQFHIv4wCjmXhw-m9eWWWvD0db_9YicbageImq2_C32SGZRLqeNFF
X-CSRF-TOKEN: 2iFWCmsOLBuTft-zk9UnL1vZt8o7NMj9f5Dl-j6NEQyByzPw6RJkPwpsTyK-Se6HpvgTH2vhmqhdA_7QHPaHzFy5Imrnr1XA
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
액세스 토큰 |
Query parameters
필드명 | 필수값 | 제약 | 설명 |
---|---|---|---|
|
검색어 |
||
|
yyyy-MM-dd |
검색 시작 날짜 |
|
|
yyyy-MM-dd |
검색 종료 날짜 |
|
|
기본값 null |
마감 여부 |
|
|
IS_TITLE, IS_CONTENT |
검색 필터 |
|
|
페이지 크기 |
||
|
페이지 번호 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 448
{
"pageInfo" : {
"totalElements" : 1,
"hasNext" : false
},
"recruitments" : [ {
"recruitmentId" : 1,
"recruitmentTitle" : "recruitmentTitle",
"recruitmentStartTime" : "2024-01-16T22:06:52.097171",
"recruitmentEndTime" : "2024-01-17T00:06:52.097171",
"recruitmentDeadline" : "2024-01-15T22:06:52.097171",
"recruitmentIsClosed" : false,
"recruitmentApplicantCount" : 0,
"recruitmentCapacity" : 10
} ]
}
Response fields
Path | Type | Description |
---|---|---|
|
|
총 게시글 수 |
|
|
다음 페이지 여부 |
|
|
모집 게시글 리스트 |
|
|
모집 ID |
|
|
모집 제목 |
|
|
봉사 시작 시간 |
|
|
봉사 끝난 시간 |
|
|
모집 마감 시간 |
|
|
모집 마감 여부 |
|
|
현재 지원자 수 |
|
|
모집 정원 |
봉사 모집글 등록
Request
HTTP request
POST /api/shelters/recruitments HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTksInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTksInJvbGUiOiJST0xFX1NIRUxURVIifQ.x0FfgnjMmL-dQFHIv4wCjmXhw-m9eWWWvD0db_9YicbageImq2_C32SGZRLqeNFF
Content-Length: 223
X-CSRF-TOKEN: pCasoKY_leo-LdpLARfCQGriqRpOPQEY0uEgvu6FCt6G7BmNkRTKlJdZpN8TSLsqODr2eAvahHgqWzQ14YIVj9-waeq01Hu9
Host: localhost:8080
{
"title" : "title",
"startTime" : "2023-12-17T22:06:59.437298",
"endTime" : "2023-12-17T23:06:59.437298",
"deadline" : "2023-12-17T03:06:59.437298",
"capacity" : 10,
"content" : "content",
"imageUrls" : [ ]
}
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
1자 이상, 50자 이하 |
봉사 모집글 제목 |
|
|
true |
yyyy-MM-dd’T’HH:mm:ss |
봉사 시작 시간 |
|
|
true |
yyyy-MM-dd’T’HH:mm:ss |
봉사 종료 시간 |
|
|
true |
yyyy-MM-dd’T’HH:mm:ss |
봉사 모집 마감 시간 |
|
|
true |
1명 이상, 99명 이하 |
봉사 모집 정원 |
|
|
true |
1자 이상, 1000자 이하 |
봉사 모집글 본문 |
|
|
0장 이상, 5장 이하 |
봉사 모집글 이미지 |
Response
HTTP response
HTTP/1.1 201 Created
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Location: /api/recruitments/1
Content-Type: application/json;charset=UTF-8
Content-Length: 25
{
"recruitmentId" : 1
}
Response headers
Name | Description |
---|---|
|
생성된 리소스에 대한 접근 api |
봉사 모집글 마감
Request
HTTP request
PATCH /api/shelters/recruitments/1/close HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTksInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTksInJvbGUiOiJST0xFX1NIRUxURVIifQ.x0FfgnjMmL-dQFHIv4wCjmXhw-m9eWWWvD0db_9YicbageImq2_C32SGZRLqeNFF
X-CSRF-TOKEN: GHEOpZOn7rfRLMJfo2ZORZJ6xlYABh4jItPFoHRrX6s1sEwVL0A7nffC2dX8T6Y-kEt6caRC6zQ4ZyYOF7KkmUUKaZ0DiC0s
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
봉사 모집글 ID |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
봉사 모집글 수정
Request
HTTP request
PATCH /api/shelters/recruitments/1 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTksInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTksInJvbGUiOiJST0xFX1NIRUxURVIifQ.x0FfgnjMmL-dQFHIv4wCjmXhw-m9eWWWvD0db_9YicbageImq2_C32SGZRLqeNFF
Content-Length: 231
X-CSRF-TOKEN: 5IuMSji-PDsaqstak06T_m2ij69Dz6l6N9wn9loGn-GhRB9n0rm6clyNXQ03kvg59WOnzguRopcgq5BXU7lBzmxjqNSXd35X
Host: localhost:8080
{
"title" : "title",
"startTime" : "2024-01-16T22:06:59.40488",
"endTime" : "2024-01-16T23:06:59.40488",
"deadline" : "2024-01-15T22:06:59.40488",
"capacity" : 10,
"content" : "content",
"imageUrls" : [ "a1", "a2" ]
}
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
봉사 모집글 ID |
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
1자 이상, 100자 이하 |
봉사 모집글 제목 |
|
|
|
yyyy-MM-dd’T’HH:mm:ss |
봉사 시작 시간 |
|
|
|
yyyy-MM-dd’T’HH:mm:ss |
봉사 종료 시간 |
|
|
|
yyyy-MM-dd’T’HH:mm:ss |
봉사 마감 시간 |
|
|
|
1명 이상, 99명 이하 |
봉사 정원 |
|
|
|
1자 이상, 1000자 이하 |
봉사 모집글 내용 |
|
|
|
5장 이하 |
봉사 모집글 이미지 리스트 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
봉사 모집글 삭제
Request
HTTP request
DELETE /api/shelters/recruitments/1 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTksInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTksInJvbGUiOiJST0xFX1NIRUxURVIifQ.x0FfgnjMmL-dQFHIv4wCjmXhw-m9eWWWvD0db_9YicbageImq2_C32SGZRLqeNFF
X-CSRF-TOKEN: 7SYaWmYuQQi3vusY_crdtavJFB_RrSeS5iaUw96AqzpPll0fjhV_P1NMcDCah91-nufphZ_5OX7hyEa_1kCg8b-wkgl-pDwq
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
봉사 모집글 ID |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
봉사자가 완료한 봉사 모집글 조회
Request
HTTP request
GET /api/shelters/volunteers/1/recruitments/completed?pageNumber=0&pageSize=10 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTksInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTksInJvbGUiOiJST0xFX1NIRUxURVIifQ.x0FfgnjMmL-dQFHIv4wCjmXhw-m9eWWWvD0db_9YicbageImq2_C32SGZRLqeNFF
X-CSRF-TOKEN: 3bFHWN3TWGM9rFcF-_cbvG2wWCQZXdcq_9YqN7XCGDsmSPOZv4MmO763alAQyTJjytov2AnRdR0vO-YHxrVPDtP1K1kRKZH8
Host: localhost:8080
Path parameters
Parameter | Description |
---|---|
|
봉사자 ID |
Query parameters
필드명 | 필수값 | 제약 | 설명 |
---|---|---|---|
|
true |
페이지 번호 |
|
|
true |
페이지 사이즈 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 264
{
"recruitments" : [ {
"recruitmentId" : 1,
"recruitmentTitle" : "recruitmentTitle",
"recruitmentStartTime" : "2024-01-16T22:06:52.097171",
"shelterName" : "shelterName"
} ],
"pageInfo" : {
"totalElements" : 1,
"hasNext" : false
}
}
Response fields
Path | Type | Description |
---|---|---|
|
|
봉사 모집글 리스트 |
|
|
봉사 모집글 ID |
|
|
봉사 모집글 제목 |
|
|
봉사 날짜 |
|
|
보호소 이름 |
|
|
페이지 정보 |
|
|
총 요소 개수 |
|
|
다음 페이지 여부 |
— 봉사자 —
봉사 신청
Request
HTTP request
POST /api/volunteers/recruitments/1/apply HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTIsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.teZ1kadzvOUa_Fy-PYGLzoNjl7eqOZhLt-5MMaGXHOARFS6ttCuv7QQp02hBWf-_
X-CSRF-TOKEN: 2E0q5swv6ZJ_-hzx95Jx_TqhapW7lToJV5tZyYM8EfsRlsGE6ytJgv0c36BSzX_Gzr9FzliQR62K8Qskbq44rbANIZ8lrvTg
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
봉사 모집글 ID |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
봉사 신청 여부 조회
Request
HTTP request
GET /api/volunteers/recruitments/1/apply HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTIsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.teZ1kadzvOUa_Fy-PYGLzoNjl7eqOZhLt-5MMaGXHOARFS6ttCuv7QQp02hBWf-_
X-CSRF-TOKEN: HrcDeaxfEsgsNBC8XJWDZA91TcbaElPGlp54748XxnKn3tPPetRgSs1rJ_8BAymNa7i3AD8RYKTqJ2frpvoaiux2oBTD6er_
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
봉사 모집글 ID |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 35
{
"isAppliedRecruitment" : true
}
Response fields
Path | Type | Description |
---|---|---|
|
|
봉사 신청 여부 |
내(봉사자)가 신청한 봉사 신청 목록 조회
Request
HTTP request
GET /api/volunteers/applicants?pageNumber=0&pageSize=10 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTIsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.teZ1kadzvOUa_Fy-PYGLzoNjl7eqOZhLt-5MMaGXHOARFS6ttCuv7QQp02hBWf-_
X-CSRF-TOKEN: bUbZ784Cw2EiV_JvHmzxSxpAWA2LSJSWDHQ9w6ZvMEBiabfPDCTq3a878lcPYJMMe0HFfCJzdTS4Lay7NRVcoJRXAnRaD4H8
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 387
{
"pageInfo" : {
"totalElements" : 20,
"hasNext" : true
},
"applicants" : [ {
"shelterId" : 1,
"recruitmentId" : 1,
"applicantId" : 1,
"recruitmentTitle" : "모집글 제목",
"shelterName" : "보호소 이름",
"applicantStatus" : "ATTENDANCE",
"applicantIsWritedReview" : true,
"recruitmentStartTime" : "2023-12-16T22:06:52.449827"
} ]
}
Response fields
Path | Type | Description |
---|---|---|
|
|
페이지 정보 |
|
|
총 요소 개수 |
|
|
다음 페이지 여부 |
|
|
신청한 봉사 리스트 |
|
|
보호소 ID |
|
|
봉사 모집글 ID |
|
|
봉사 신청자 ID |
|
|
모집글 제목 |
|
|
보호소 이름 |
|
|
승인 상태 |
|
|
후기 작성 가능 여부 |
|
|
봉사 날짜 |
— 보호소 —
봉사 신청자 목록 조회
Request
HTTP request
GET /api/shelters/recruitments/1/applicants HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTIsInJvbGUiOiJST0xFX1NIRUxURVIifQ.PUe95oj6ryAkER3VQYZYhpuqsGkdgv4yWOJ3h2oVsL97szQVYNmxgBL2aeLhE1xJ
X-CSRF-TOKEN: hSnKs-Yg-1snQPEHGtkeCBJ6_DutSebEoVvQROI3EWn1u_rq4RH6hoAWwjgKI5MwfvQqbCZL0QKecdXplzi1cttUd1DC3cPe
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
모집글 ID |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 324
{
"applicants" : [ {
"volunteerId" : 1,
"applicantId" : 1,
"volunteerName" : "봉사자 이름",
"volunteerBirthDate" : "2023-12-16",
"volunteerGender" : "MALE",
"completedVolunteerCount" : 5,
"volunteerTemperature" : 36,
"applicantStatus" : "APPROVED"
} ],
"recruitmentCapacity" : 10
}
Response fields
Path | Type | Description |
---|---|---|
|
|
모집 정원 |
|
|
봉사 신청자 리스트 |
|
|
봉사자 ID |
|
|
봉사 신청 ID |
|
|
봉사자 이름 |
|
|
봉사자 생일 |
|
|
봉사자 성별 |
|
|
봉사 횟수 |
|
|
봉사자 온도 |
|
|
신청 상태 |
봉사 신청 승인자 목록 조회
Request
HTTP request
GET /api/shelters/recruitments/1/approval HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTIsInJvbGUiOiJST0xFX1NIRUxURVIifQ.PUe95oj6ryAkER3VQYZYhpuqsGkdgv4yWOJ3h2oVsL97szQVYNmxgBL2aeLhE1xJ
X-CSRF-TOKEN: 5W456HmS8faCbb4Yrm5VTyR6eNeQyG8g28tBkSLPXPWbjN3r0VlcihrxyJSvX9goyENhfB0cVbbzrFwNvf1wpUP2OsP4vbjS
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
모집글 ID |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 24
{
"applicants" : [ ]
}
Response fields
Path | Type | Description |
---|---|---|
|
|
봉사 신청자 리스트 |
|
|
봉사 신청 ID |
|
|
봉사자 ID |
|
|
봉사자 생일 |
|
|
봉사자 성별 |
|
|
봉사자 전화번호 |
|
|
출석 현황 |
봉사 신청자 승인 여부 수정
Request
HTTP request
PATCH /api/shelters/recruitments/1/applicants/1 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTIsInJvbGUiOiJST0xFX1NIRUxURVIifQ.PUe95oj6ryAkER3VQYZYhpuqsGkdgv4yWOJ3h2oVsL97szQVYNmxgBL2aeLhE1xJ
Content-Length: 25
X-CSRF-TOKEN: wOGsHXmvMO6M2Gn9YpJfbMeK-abEZpYgbz_4GF-G6bugZHx69dadeE-fVteh6FvIUL9rXKW81J71AqINVg7Oejnk0I6TVkpC
Host: localhost:8080
{
"isApproved" : true
}
Request headers
Name | Description |
---|---|
|
액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
모집글 ID |
|
봉사 신청 ID |
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
승인 상태 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
봉사 신청 승인자 출석 상태 수정
Request
HTTP request
PATCH /api/shelters/recruitments/1/approval HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTIsInJvbGUiOiJST0xFX1NIRUxURVIifQ.PUe95oj6ryAkER3VQYZYhpuqsGkdgv4yWOJ3h2oVsL97szQVYNmxgBL2aeLhE1xJ
Content-Length: 77
X-CSRF-TOKEN: uQo_BWB4vtH_n9pKY-zPKa-JxbXr2LI8ketGGYUKVAFLbB63iDoHPAMb2uPSre1-UsH7TJ6w6NfZuYYRpthwf-BpZ2J-CCmC
Host: localhost:8080
{
"applicants" : [ {
"applicantId" : 1,
"isAttended" : true
} ]
}
Request headers
Name | Description |
---|---|
|
액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
모집글 ID |
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
봉사 승인자 출석 리스트 |
|
|
|
true |
봉사 신청 ID |
|
|
|
true |
출석 상태 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
— 공통 —
보호소의 봉사 리뷰 목록 조회
Request
HTTP request
GET /api/shelters/1/reviews?pageNumber=0&pageSize=10 HTTP/1.1
X-CSRF-TOKEN: lfaMM3jxgDjskMLPfhaqyDaL_mCDPsCIs9SEb2eY6IlCpAZDrJXuVkrBsQzBoPT8Gzue_QS501iwD_Klg-3nDAGtju0hwWVy
Host: localhost:8080
Path parameters
Parameter | Description |
---|---|
|
보호소 ID |
Query parameters
필드명 | 필수값 | 제약 | 설명 |
---|---|---|---|
|
true |
페이지 번호 |
|
|
true |
페이지 사이즈 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 330
{
"reviews" : [ {
"reviewId" : 1,
"volunteerTemperature" : 36,
"reviewCreatedAt" : "2023-12-16T22:07:02.727672",
"reviewContent" : "reviewContent",
"volunteerEmail" : "asdf****",
"reviewImageUrls" : [ "imageUrl1", "imageUrl2" ]
} ],
"pageInfo" : {
"totalElements" : 1,
"hasNext" : false
}
}
Response fields
Path | Type | Description |
---|---|---|
|
|
리뷰 리스트 |
|
|
리뷰 ID |
|
|
리뷰 생성일 |
|
|
리뷰 내용 |
|
|
리뷰 이미지 url 리스트 |
|
|
봉사자 이메일 |
|
|
봉사자 온도 |
|
|
페이지 정보 |
|
|
총 요소 개수 |
|
|
다음 페이지 여부 |
— 봉사자 —
봉사 후기 등록
Request
HTTP request
POST /api/volunteers/reviews HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjIsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.dQiLY94KZn3KCgiLJySZOh4IgBexRZtzjW0FjxN1hxY-orpKBKCbyS7hk2-Z1BDK
Content-Length: 100
X-CSRF-TOKEN: chsXNjDPJMbDPT7FLtEufqspoyV5xFi0CMdaLFY0S50aWV0oEClxU1T_EaXuXlz1SPwaT5kfjh1P9zuZMPE-FG4BcqwrYGxK
Host: localhost:8080
{
"applicantId" : 1,
"content" : "reviewContent",
"imageUrls" : [ "imageUrl1", "imageUrl2" ]
}
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
봉사 신청 ID |
|
|
|
true |
org.springframework.restdocs.snippet.Attributes$Attribute@24558048 |
|
|
|
org.springframework.restdocs.snippet.Attributes$Attribute@51d5d835 |
Response
HTTP response
HTTP/1.1 201 Created
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Location: /api/volunteers/reviews/1
Content-Type: application/json;charset=UTF-8
Content-Length: 20
{
"reviewId" : 1
}
봉사 후기 상세 조회
Request
HTTP request
GET /api/volunteers/reviews/1 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjIsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.dQiLY94KZn3KCgiLJySZOh4IgBexRZtzjW0FjxN1hxY-orpKBKCbyS7hk2-Z1BDK
X-CSRF-TOKEN: 4Z0u8S14utRbXgAMubGhVUAPCEu8f1gASuBa2TnNhRTBMkTv1fwfkEtB3-N2ajU02JyVNyE3JSqEGW4tf9hj7Fr05yGjB3HZ
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
리뷰 ID |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 109
{
"reviewId" : 1,
"reviewContent" : "reviewContent",
"reviewImageUrls" : [ "imageUrl1", "imageUrl2" ]
}
Response fields
Path | Type | Description |
---|---|---|
|
|
리뷰 ID |
|
|
리뷰 내용 |
|
|
리뷰 이미지 url 리스트 |
봉사 후기 수정
Request
HTTP request
PATCH /api/volunteers/reviews/1 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjIsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.dQiLY94KZn3KCgiLJySZOh4IgBexRZtzjW0FjxN1hxY-orpKBKCbyS7hk2-Z1BDK
Content-Length: 66
X-CSRF-TOKEN: divJYDsQUKxHYZll0BeMA3wXzC9nBIBkKpJJLQwtDXowKfoeRB2oUl5zMpRqB64E4jq4Mhgv4U1WZ7JJE6UvSTpLPkJRTZ59
Host: localhost:8080
{
"content" : "글 내용",
"imageUrls" : [ "url1", "url2" ]
}
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
리뷰 ID |
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
org.springframework.restdocs.snippet.Attributes$Attribute@6f312e96 |
|
|
|
org.springframework.restdocs.snippet.Attributes$Attribute@64378a6 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
봉사 후기 삭제
Request
HTTP request
DELETE /api/volunteers/reviews/1 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjIsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.dQiLY94KZn3KCgiLJySZOh4IgBexRZtzjW0FjxN1hxY-orpKBKCbyS7hk2-Z1BDK
X-CSRF-TOKEN: SpZHr8rr14z4mO-ikqwQSXXKl1_SgYSb6wsc7EtKuoU8lz0VcvVxzfOPsb7V_Nebq4EkfkD-umbnsby2iWh_3H57g-EPpl8t
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
봉사 후기 ID |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
내(봉사자)가 작성한 후기 리스트 조회
Request
HTTP request
GET /api/volunteers/me/reviews?pageNumber=0&pageSize=10 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjIsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.dQiLY94KZn3KCgiLJySZOh4IgBexRZtzjW0FjxN1hxY-orpKBKCbyS7hk2-Z1BDK
X-CSRF-TOKEN: ONgHF6LHmNzbKDjRPkYrDzc-nh56GFc068rDlql1RPj--YbzAb0_J5Gk_ur2Hg_gDmsfOA8PsyYfKWEZ2fOho8wQJcucneDK
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Query parameters
필드명 | 필수값 | 제약 | 설명 |
---|---|---|---|
|
true |
페이지 번호 |
|
|
true |
페이지 사이즈 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 317
{
"pageInfo" : {
"totalElements" : 1,
"hasNext" : false
},
"reviews" : [ {
"reviewId" : 1,
"shelterId" : 1,
"shelterName" : "shelterName",
"reviewCreatedAt" : "2023-12-16T22:07:02.70462",
"reviewContent" : "reviewContent",
"reviewImageUrls" : [ "imageUrl1", "imageUrl2" ]
} ]
}
Response fields
Path | Type | Description |
---|---|---|
|
|
페이지 정보 |
|
|
총 요소 개수 |
|
|
다음 페이지 여부 |
|
|
리뷰 리스트 |
|
|
리뷰 ID |
|
|
보호소 ID |
|
|
보호소 이름 |
|
|
리뷰 생성일 |
|
|
리뷰 내용 |
|
|
리뷰 이미지 url 리스트 |
— 보호소 —
봉사자가 작성한 후기 리스트 조회
Request
HTTP request
GET /api/shelters/volunteers/1/reviews?pageNumber=0&pageSize=10 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjIsInJvbGUiOiJST0xFX1NIRUxURVIifQ.wLPypunbxu9iwQn-E2FRNOubn_3_dOSoI8KtvDzVnh858Hg9--mSWdpWZN_vN9ms
X-CSRF-TOKEN: gPe74S9z61b0ulMmyWDKkc3kxK5KZaGCj2xx2UT_ZrtM6x4osMKI2UxE02HZjTZErE3-p_2H6c8oBpCvulhE7SHOX44u331N
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
봉사자 ID |
Query parameters
필드명 | 필수값 | 제약 | 설명 |
---|---|---|---|
|
true |
페이지 번호 |
|
|
true |
페이지 사이즈 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 318
{
"pageInfo" : {
"totalElements" : 1,
"hasNext" : false
},
"reviews" : [ {
"reviewId" : 1,
"shelterId" : 1,
"shelterName" : "shelterName",
"reviewCreatedAt" : "2023-12-16T22:07:02.633237",
"reviewContent" : "reviewContent",
"reviewImageUrls" : [ "imageUrl1", "imageUrl2" ]
} ]
}
Response fields
Path | Type | Description |
---|---|---|
|
|
페이지 정보 |
|
|
총 요소 개수 |
|
|
다음 페이지 여부 |
|
|
리뷰 리스트 |
|
|
리뷰 ID |
|
|
보호소 ID |
|
|
보호소 이름 |
|
|
리뷰 생성일 |
|
|
리뷰 내용 |
|
|
리뷰 이미지 url 리스트 |
내(보호소)가 받은 후기 리스트 조회
Request
HTTP request
GET /api/shelters/me/reviews?pageNumber=0&pageSize=10 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMjIsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMjIsInJvbGUiOiJST0xFX1NIRUxURVIifQ.wLPypunbxu9iwQn-E2FRNOubn_3_dOSoI8KtvDzVnh858Hg9--mSWdpWZN_vN9ms
X-CSRF-TOKEN: hD3MN1w26z-7SsTP1lOUiGA6zPMeoyQLvwwzX-yl9nlY3F8AtwiqBG4H012WePaus36gsFIK4ZIulUcm2jtWZ9uRkE9ouT05
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Query parameters
필드명 | 필수값 | 제약 | 설명 |
---|---|---|---|
|
true |
페이지 번호 |
|
|
true |
페이지 사이즈 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 416
{
"reviews" : [ {
"reviewId" : 1,
"reviewCreatedAt" : "2023-12-16T22:07:02.577982",
"reviewContent" : "리뷰 본문",
"reviewImageUrls" : [ "imageUrl" ],
"volunteerId" : 1,
"volunteerName" : "봉사자 이름",
"volunteerTemperature" : 36,
"volunteerImageUrl" : "imageUrl",
"volunteerReviewCount" : 1
} ],
"pageInfo" : {
"totalElements" : 1,
"hasNext" : false
}
}
Response fields
Path | Type | Description |
---|---|---|
|
|
리뷰 리스트 |
|
|
리뷰 ID |
|
|
리뷰 생성일 |
|
|
리뷰 내용 |
|
|
리뷰 이미지 url 리스트 |
|
|
봉사자 ID |
|
|
봉사자 이름 |
|
|
봉사자 온도 |
|
|
봉사자 프로필 이미지 url |
|
|
봉사자 리뷰 수 |
|
|
페이지 정보 |
|
|
총 요소 개수 |
|
|
다음 페이지 여부 |
— 공통 —
보호 동물 검색 & 조회
Request
HTTP request
GET /api/animals?type=DOG&gender=FEMALE&neuteredFilter=IS_NEUTERED&active=ACTIVE&animalSize=SMALL&animalSize=10&age=ADULT&page=0 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMDQsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMDQsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.ANCNuMkQ-oaNNSBeMzIm4XNcRDflDptjsjsviBacievBgoei88XdyyKE_yWZv2SM
X-CSRF-TOKEN: knVHbwkzQV-dAebAFMThfra4RbGyt8Gw-4x7720ad_-0mb_6okF3WWoGJzqwMdGhJOnVStSKaNOCh_ednblK21h_Q8eHqIaf
Host: localhost:8080
Query parameters
필드명 | 필수값 | 제약 | 설명 |
---|---|---|---|
|
DOG, CAT, ETC |
보호 동물 종류 |
|
|
MALE, FEMALE |
보호 동물 성별 |
|
|
true, false |
보호 동물 중성화 여부 |
|
|
QUIET, NORMAL, ACTIVE, VERY_ACTIVE |
보호 동물 성격 |
|
|
true |
페이지 사이즈 |
|
|
BABY, JUNIOR, ADULT, SENIOR |
보호 동물 나이 |
|
|
true |
페이지 번호 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 259
{
"pageInfo" : {
"totalElements" : 1,
"hasNext" : false
},
"animals" : [ {
"animalId" : 1,
"animalName" : "animalName",
"shelterName" : "shelterName",
"shelterAddress" : "shelterAddress",
"animalImageUrl" : "imageUrl"
} ]
}
Response fields
Path | Type | Description |
---|---|---|
|
|
페이지 정보 |
|
|
총 요소 개수 |
|
|
다음 페이지 여부 |
|
|
보호 동물 리스트 |
|
|
보호 동물 ID |
|
|
보호 동물 이름 |
|
|
보호소 이름 |
|
|
보호소 주소 |
|
|
보호 동물 이미지 url |
보호 동물 검색 & 조회 v2
Request
HTTP request
GET /api/v2/animals?type=DOG&gender=FEMALE&neuteredFilter=IS_NEUTERED&active=ACTIVE&animalSize=SMALL&animalSize=10&age=ADULT&animalId=1&createdAt=2023-12-16T22%3A06%3A44.354131&page=0 HTTP/1.1
X-CSRF-TOKEN: TWGdAfyqviob18jnnk1sKBvibIEjEb-W90W2Oh9bTtabYrQLeVmvN8qdjRk25a7SrGBYSX2DQeAXJ9u7k3KDCX5if7SvVtFq
Host: localhost:8080
Query parameters
필드명 | 필수값 | 제약 | 설명 |
---|---|---|---|
|
DOG, CAT, ETC |
보호 동물 종류 |
|
|
MALE, FEMALE |
보호 동물 성별 |
|
|
true, false |
보호 동물 중성화 여부 |
|
|
QUIET, NORMAL, ACTIVE, VERY_ACTIVE |
보호 동물 성격 |
|
|
true |
페이지 사이즈 |
|
|
BABY, JUNIOR, ADULT, SENIOR |
보호 동물 나이 |
|
|
페이지 마지막 보호 동물 ID |
||
|
페이지 마지막 보호 동물 생일 |
||
|
true |
페이지 번호 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 267
{
"pageInfo" : {
"totalElements" : 1,
"hasNext" : false
},
"animals" : [ {
"animalId" : 1,
"animalName" : "animalName",
"shelterName" : "shelterName",
"shelterAddress" : "shelterAddress",
"animalImageUrl" : "www.aws.s3.com/2"
} ]
}
Response fields
Path | Type | Description |
---|---|---|
|
|
페이지 정보 |
|
|
총 요소 개수 |
|
|
다음 페이지 여부 |
|
|
보호 동물 리스트 |
|
|
보호 동물 ID |
|
|
보호 동물 이름 |
|
|
보호소 이름 |
|
|
보호소 주소 |
|
|
보호 동물 이미지 url |
보호 동물 상세 조회
Request
HTTP request
GET /api/animals/1 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMDQsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMDQsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.ANCNuMkQ-oaNNSBeMzIm4XNcRDflDptjsjsviBacievBgoei88XdyyKE_yWZv2SM
X-CSRF-TOKEN: RgMd1OIsvol0ggjVVk_HQONblYqXIkYpLiEckEarP3Qn_0KFI2d744dK3btZu2nhbmLzJYI4uOuvESIESBV9pHbKDhIUnXuz
Host: localhost:8080
Path parameters
Parameter | Description |
---|---|
|
보호 동물 ID |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 395
{
"animalId" : 1,
"animalName" : "animalName",
"animalBirthDate" : "2023-12-16",
"animalType" : "DOG",
"animalBreed" : "animalBreed",
"animalGender" : "FEMALE",
"animalIsNeutered" : true,
"animalActive" : "NORMAL",
"animalWeight" : 1.2,
"animalInformation" : "animalInformation",
"animalImageUrls" : [ "www.aws.s3.com/2", "www.aws.s3.com/3" ],
"animalIsAdopted" : false
}
Response fields
Path | Type | Description |
---|---|---|
|
|
보호 동물 ID |
|
|
보호 동물 이름 |
|
|
보호 동물 출생 날짜 |
|
|
보호 동물 종류 |
|
|
보호 동물 품종 |
|
|
보호 동물 성별 |
|
|
보호 동물 중성화 유무 |
|
|
보호 동물 활동성 |
|
|
보호 동물 몸무게 |
|
|
보호 동물 기타 정보 |
|
|
보호 동물 이미지 url 리스트 |
|
|
보호 동물 입양 여부 |
— 보호소 —
보호 동물 등록
Request
HTTP request
POST /api/shelters/animals HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMDQsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMDQsInJvbGUiOiJST0xFX1NIRUxURVIifQ.3K_Ji5WAd7xpzz9-lBNZ7ynEAtJcbCU5ClSanVNH605wv8kB9V0GULsuk9t0sX-g
Content-Length: 253
X-CSRF-TOKEN: i9rGlCMagRdHTp7WD52B98CNzdBOJrP22s4w9iC3nrFIS46R7ev_phUi4HJqLaflarC1x_no4LEsFdbbuPkGlxKC_Iksf-qm
Host: localhost:8080
{
"name" : "name",
"birthDate" : "2023-12-16",
"type" : "DOG",
"breed" : "품종",
"gender" : "FEMALE",
"isNeutered" : false,
"active" : "QUIET",
"weight" : 0.7,
"information" : "기타 정보",
"imageUrls" : [ "www.aws.s3.com/2" ]
}
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Response
HTTP response
HTTP/1.1 201 Created
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Location: /api/shelters/animals/1
Content-Type: application/json;charset=UTF-8
Content-Length: 20
{
"animalId" : 1
}
내(보호소)가 작성한 보호 동물 목록 조회
Request
HTTP request
GET /api/shelters/animals?keyword=%EA%B2%80%EC%83%89%EC%96%B4&type=DOG&gender=MALE&neuteredFilter=IS_NEUTERED&active=ACTIVE&animalSize=SMALL&age=BABY&page=0&size=10 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMDQsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMDQsInJvbGUiOiJST0xFX1NIRUxURVIifQ.3K_Ji5WAd7xpzz9-lBNZ7ynEAtJcbCU5ClSanVNH605wv8kB9V0GULsuk9t0sX-g
X-CSRF-TOKEN: tAejQ5L-Ef6ZM2uKL-AZbPDIc-7lLKVLR9eTHR3uD2gu9glJ0TfCIfSYIci0Al7rG80tX8bxXtbXH5BmdOKifn_daVpLwjEv
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
액세스 토큰 |
Response
HTTP request
GET /api/shelters/animals?keyword=%EA%B2%80%EC%83%89%EC%96%B4&type=DOG&gender=MALE&neuteredFilter=IS_NEUTERED&active=ACTIVE&animalSize=SMALL&age=BABY&page=0&size=10 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMDQsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMDQsInJvbGUiOiJST0xFX1NIRUxURVIifQ.3K_Ji5WAd7xpzz9-lBNZ7ynEAtJcbCU5ClSanVNH605wv8kB9V0GULsuk9t0sX-g
X-CSRF-TOKEN: tAejQ5L-Ef6ZM2uKL-AZbPDIc-7lLKVLR9eTHR3uD2gu9glJ0TfCIfSYIci0Al7rG80tX8bxXtbXH5BmdOKifn_daVpLwjEv
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
액세스 토큰 |
보호 동물 수정
Request
HTTP request
PATCH /api/shelters/animals/1 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMDMsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMDMsInJvbGUiOiJST0xFX1NIRUxURVIifQ._jkCzcS7L4KbV0JPGbOjW3S5QAQz7llELcV55CPvp4MOLp0KMkFnEBHuQEfZ4lbX
Content-Length: 266
X-CSRF-TOKEN: WaZh1X75C5gRvs2fmbydNIz6yKoKuhi5ppR26fIdK712pxcIbZcD4EqYOa88ia6ooZGpV7WZ5ZM8iCCUk6ZE35d_E99GlSY6
Host: localhost:8080
{
"name" : "animalName",
"birthDate" : "2023-12-16",
"type" : "DOG",
"breed" : "animalBreed",
"gender" : "MALE",
"isNeutered" : true,
"active" : "ACTIVE",
"weight" : 1.2,
"information" : "animalInformation",
"imageUrls" : [ "www.aws.s3.com/2" ]
}
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
보호 동물 입양 상태 변경
Request
HTTP request
PATCH /api/shelters/animals/1/status HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMDQsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMDQsInJvbGUiOiJST0xFX1NIRUxURVIifQ.3K_Ji5WAd7xpzz9-lBNZ7ynEAtJcbCU5ClSanVNH605wv8kB9V0GULsuk9t0sX-g
Content-Length: 24
X-CSRF-TOKEN: fBgkUd9Li2xKs02TOfNVONCk-VYFb47GtVYgmt-1IBVGcLNGRXwWZ74u6Fhn1i_2Wt5hWuCc1G83CuvrgTQYr73XEyJ_QtZ2
Host: localhost:8080
{
"isAdopted" : true
}
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
보호 동물 삭제
Request
HTTP request
DELETE /api/shelters/animals/1 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMDQsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMDQsInJvbGUiOiJST0xFX1NIRUxURVIifQ.3K_Ji5WAd7xpzz9-lBNZ7ynEAtJcbCU5ClSanVNH605wv8kB9V0GULsuk9t0sX-g
X-CSRF-TOKEN: 4it2qbctNgOkVHbYkt9cPLDIdy4KmIS-UDvJz5Fxf6AFgkzP1BJAmdYfBDaJZBXvpPJoBIiqWk8_qOeTNQ-q-aJHSpA1si37
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
보호 동물 ID |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
— 공통 —
채팅방 메시지 목록 조회
Request
HTTP request
GET /api/chat/rooms/1/messages?pageNumber=0&pageSize=10 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTUsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTUsInJvbGUiOiJST0xFX1NIRUxURVIifQ.X2leR1Fnf0OsKKbtjULEj8wpSXS2eEFiBH8ny8-bcNGQm9FmTl8cYmkaomKJlqMD
X-CSRF-TOKEN: OI5S1YtF4TurRE3vXQYtctRNCNhYtRtDswZ61Pu1AVEtCCSTDrtj4-p11Q6GcS_aPysZQ-V5JbpujHlugmdJ7J3XZ2cVPRWq
Host: localhost:8080
Path parameters
Parameter | Description |
---|---|
|
채팅방 ID |
Query parameters
필드명 | 필수값 | 제약 | 설명 |
---|---|---|---|
|
true |
페이지 번호 |
|
|
true |
페이지 사이즈 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 244
{
"chatMessages" : [ {
"chatSenderId" : 1,
"chatSenderRole" : "ROLE_VOLUNTEER",
"chatMessage" : "message",
"createdAt" : "2023-12-16T22:06:55.675083"
} ],
"pageInfo" : {
"totalElements" : 1,
"hasNext" : false
}
}
Response fields
Path | Type | Description |
---|---|---|
|
|
채팅방 메시지 목록 |
|
|
채팅 메시지 발송자 ID |
|
|
채팅 메시지 발송자 역할 |
|
|
채팅 메시지 내용 |
|
|
채팅 메시지 발송 시점 |
|
|
페이지 정보 |
|
|
총 요소 개수 |
|
|
다음 페이지 존재 여부 |
— 봉사자 —
채팅방 ID 조회
Request
HTTP request
GET /api/volunteers/chat/rooms/shelters/1 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTUsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTUsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.ou-8kCNqWMVh2W0ebXYNHHBRlzCthyiBsq8Nn7SPJj4GqNOVqVoyrnR5ERkn8hl2
X-CSRF-TOKEN: E9nllfafTADSnPgB_sUiciaBvXjNArb6GCbqoGNVHuiXwaRSIL_SpJL7LzH_pc4zz-gWSkKxkEGpYI7XKB_Tk1Q2fNHz-cY3
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
보호소 ID |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 25
{
"chatRoomId" : null
}
Response fields
Path | Type | Description |
---|---|---|
|
|
채팅방 ID |
채팅방 생성
Request
HTTP request
POST /api/volunteers/chat/rooms HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTUsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTUsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.ou-8kCNqWMVh2W0ebXYNHHBRlzCthyiBsq8Nn7SPJj4GqNOVqVoyrnR5ERkn8hl2
Content-Length: 21
X-CSRF-TOKEN: cerEeKeJ47afbEiQUnxK1nu_jz6-9GBFJ-kA279dmx2B8NH_RtygT5661dOyCSnzYlF-5EzZol-MzFloFNgwud1s_i3ixOGd
Host: localhost:8080
{
"shelterId" : 1
}
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Request fields
필드명 | 타입 | 필수값 | 제약 | 설명 |
---|---|---|---|---|
|
|
true |
보호소 ID |
Response
HTTP response
HTTP/1.1 201 Created
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Location: /api/volunteers/chat/rooms/1
Content-Type: application/json;charset=UTF-8
Content-Length: 22
{
"chatRoomId" : 1
}
Response headers
Name | Description |
---|---|
|
생성된 채팅방의 URI |
Response fields
Path | Type | Description |
---|---|---|
|
|
생성된 채팅방 ID |
채팅방 목록 조회
Request
HTTP request
GET /api/volunteers/chat/rooms HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTUsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTUsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.ou-8kCNqWMVh2W0ebXYNHHBRlzCthyiBsq8Nn7SPJj4GqNOVqVoyrnR5ERkn8hl2
X-CSRF-TOKEN: 1s-orH8QtjNBAo9icyMKRfWXcYICIubPdyBuaFmFV9kIvrsf462dz0Z21VFsY7cHRg4-d8SjXLpmR9fiFRVcCTvgYexthoor
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 284
{
"chatRooms" : [ {
"chatRoomId" : 1,
"chatRecentMessage" : "최근 메시지",
"chatPartnerName" : "채팅 상대방 이름",
"charPartnerImageUrl" : "채팅 상대방 이미지 url",
"createdAt" : "2023-12-16T22:06:55.591352",
"chatUnReadCount" : 5
} ]
}
Response fields
Path | Type | Description |
---|---|---|
|
|
채팅방 목록 |
|
|
채팅방 ID |
|
|
채팅방 최근 메시지 |
|
|
채팅방 상대방 이름 |
|
|
채팅방 상대방 이미지 URL |
|
|
채팅방 최근 메시지 발송 시간 |
|
|
채팅방 최근 메시지 발송 시간 |
채팅방 상세 조회
Request
HTTP request
GET /api/volunteers/chat/rooms/1 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTUsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTUsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.ou-8kCNqWMVh2W0ebXYNHHBRlzCthyiBsq8Nn7SPJj4GqNOVqVoyrnR5ERkn8hl2
X-CSRF-TOKEN: _UWRgvcIw7yh9H_pyvvo8-mD8N4a9k4lay8m6Z6_9NXlqzZ_zXeh45Y79IiMwUze8tbcw4yw3ed7l3sIXRxF0KyIkOSEm1Qa
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Path parameters
Parameter | Description |
---|---|
|
채팅방 ID |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 78
{
"chatPartnerImageUrl" : "imageUrl1",
"chatPartnerName" : "shelterName"
}
Response fields
Path | Type | Description |
---|---|---|
|
|
채팅 상대방 이미지 URL |
|
|
채팅 상대방 이름 |
안 읽은 메시지 총 수 조회
Request
HTTP request
GET /api/volunteers/chat/rooms/unread HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTUsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTUsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.ou-8kCNqWMVh2W0ebXYNHHBRlzCthyiBsq8Nn7SPJj4GqNOVqVoyrnR5ERkn8hl2
X-CSRF-TOKEN: DGRTJcTWhqPW4vkgHCFbC0ix4zjaj2YrWXu9fryUq6JUhxVEblJmF6Gz5ZP7g8EQfgxvPHyEzgC5u1QGaEKPGI32z5Jmsicl
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 28
{
"totalUnreadCount" : 5
}
Response fields
Path | Type | Description |
---|---|---|
|
|
안 읽은 메시지 수 |
— 보호소 —
채팅방 목록 조회
Request
HTTP request
GET /api/shelters/chat/rooms HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTUsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTUsInJvbGUiOiJST0xFX1NIRUxURVIifQ.X2leR1Fnf0OsKKbtjULEj8wpSXS2eEFiBH8ny8-bcNGQm9FmTl8cYmkaomKJlqMD
X-CSRF-TOKEN: lW1Cm9FpDJ6gsY86Wyct1PTfY-mHN9wzQwVFVgQ4tc59MhU0pQlz_rNbOKqNg7kCbQoZ7MTsTtG0BO4edDR2bzENh_ceUXAG
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 284
{
"chatRooms" : [ {
"chatRoomId" : 1,
"chatRecentMessage" : "최근 메시지",
"chatPartnerName" : "채팅 상대방 이름",
"charPartnerImageUrl" : "채팅 상대방 이미지 url",
"createdAt" : "2023-12-16T22:06:55.695675",
"chatUnReadCount" : 5
} ]
}
Response fields
Path | Type | Description |
---|---|---|
|
|
채팅방 목록 |
|
|
채팅방 ID |
|
|
채팅방 최근 메시지 |
|
|
채팅방 상대방 이름 |
|
|
채팅방 상대방 이미지 URL |
|
|
채팅방 최근 메시지 발송 시간 |
|
|
채팅방 최근 메시지 발송 시간 |
채팅방 상세 조회(보호소)
Request
HTTP request
GET /api/shelters/chat/rooms/1 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTUsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTUsInJvbGUiOiJST0xFX1NIRUxURVIifQ.X2leR1Fnf0OsKKbtjULEj8wpSXS2eEFiBH8ny8-bcNGQm9FmTl8cYmkaomKJlqMD
X-CSRF-TOKEN: Yk9bWZvKj3x3VStzlBYrJEN2V2u8x_yG8tOBAqhF8nxEcU6vAXc4OqPz6klaYRhBozsfQCBDegqJ8cWrl-vnNpB2xR9wFS-f
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 89
{
"chatPartnerImageUrl" : "imageUrl",
"chatPartnerName" : "채팅 상대방 이름"
}
Response fields
Path | Type | Description |
---|---|---|
|
|
채팅 상대방 이미지 URL |
|
|
채팅 상대방 이름 |
안 읽은 메시지 총 수 조회
Request
HTTP request
GET /api/shelters/chat/rooms/unread HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTUsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTUsInJvbGUiOiJST0xFX1NIRUxURVIifQ.X2leR1Fnf0OsKKbtjULEj8wpSXS2eEFiBH8ny8-bcNGQm9FmTl8cYmkaomKJlqMD
X-CSRF-TOKEN: uFnZdVB-KonGevlGmU5CAdA9pZGeS8t1l3dRIIgWrojT4xQb3jzvEWYbT-zrH8x1rWN2YOMJiKn4fvpY9k9gRLlyyuzr0SYr
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 28
{
"totalUnreadCount" : 5
}
Response fields
Path | Type | Description |
---|---|---|
|
|
안 읽은 메시지 총 개수 |
— 봉사자 —
알림 목록 조회
Request
HTTP request
GET /api/volunteers/notifications HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTgsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTgsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.Sd0Y1nx74gSig8mCOwtx8lWXLi0yyTDaqLX01Bgz1CrKiGt6EUbiYS39iq0UvjMK
X-CSRF-TOKEN: 0C_P6zxzLbA-HH32zunVfhq7Q6_wMgz7KdcdAVBPNNI91e9s5Rf8jVlCHtQTJU3BrMThSXmPbs3HAjXWT-N4OGR2B7Zfs4tZ
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 213
{
"notifications" : [ {
"notificationId" : 1,
"notificationTitle" : "title",
"notificationContent" : "content",
"notificationIsRead" : false,
"notificationType" : "VOLUNTEER_APPROVED"
} ]
}
Response fields
Path | Type | Description |
---|---|---|
|
|
보호소 알림 목록 |
|
|
알림 ID |
|
|
알림 제목 |
|
|
알림 내용 |
|
|
알림 읽음 여부 |
|
|
알림 타입 |
새로운 알림 여부 조회
Request
HTTP request
GET /api/volunteers/notifications/read HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTgsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTgsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.Sd0Y1nx74gSig8mCOwtx8lWXLi0yyTDaqLX01Bgz1CrKiGt6EUbiYS39iq0UvjMK
X-CSRF-TOKEN: 72rmM3kOVf9aMY-evPnDzcHlB50qAqq21KuGt-opRuH1OaN92QnRC0E3N893U7uvi9T3-PeGKqVIMMub5Zvn0Y5Pf9XECMce
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 33
{
"hasNewNotification" : true
}
Response fields
Path | Type | Description |
---|---|---|
|
|
새로운 알림 존재 여부 |
알림 확인
Request
HTTP request
PATCH /api/volunteers/notifications/read HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTgsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTgsInJvbGUiOiJST0xFX1ZPTFVOVEVFUiJ9.Sd0Y1nx74gSig8mCOwtx8lWXLi0yyTDaqLX01Bgz1CrKiGt6EUbiYS39iq0UvjMK
X-CSRF-TOKEN: C3U2iCM6hzHelda4-1FqLqADSlwJZYsktPvHXiRn1S9p4M02MhBU6hcCvwbz9LTbn3xeTJU1Z2Q6UrMJgp7xakFfsBxR0PsO
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
봉사자 액세스 토큰 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
— 보호소 —
알림 목록 조회
Request
HTTP request
GET /api/shelters/notifications HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTgsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTgsInJvbGUiOiJST0xFX1NIRUxURVIifQ.IOptDqlH7NPUcxFwiPoRJZ1l_dsLdyb5YgQmSG-Zn5_Q-FYp2-9nnMab1w1gfuHO
X-CSRF-TOKEN: 9ZQmke5kCZwq-VFLQDGkmhlDK4RnTjy5GfmoIqU9sTgoB3U1xfAUpt0FPa4HmmZzdhyQqih6BuZVLQqUep3OEpwFiQpKNREG
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 208
{
"notifications" : [ {
"notificationId" : 1,
"notificationTitle" : "title",
"notificationContent" : "content",
"notificationIsRead" : false,
"notificationType" : "NEW_APPLICANT"
} ]
}
Response fields
Path | Type | Description |
---|---|---|
|
|
보호소 알림 목록 |
|
|
알림 ID |
|
|
알림 제목 |
|
|
알림 내용 |
|
|
알림 읽음 여부 |
|
|
알림 타입 |
새로운 알림 여부 조회
Request
HTTP request
GET /api/shelters/notifications/read HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTgsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTgsInJvbGUiOiJST0xFX1NIRUxURVIifQ.IOptDqlH7NPUcxFwiPoRJZ1l_dsLdyb5YgQmSG-Zn5_Q-FYp2-9nnMab1w1gfuHO
X-CSRF-TOKEN: uj3WxKEv5Bp_HHZ4sRF6OO1No-DlxLCDDMi302k835Z9eUP72ArmopAd03xSekUchDxODt4sjtnT94Wub6yCtQ0E76QbSXDI
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Response
HTTP response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
Content-Length: 33
{
"hasNewNotification" : true
}
Response fields
Path | Type | Description |
---|---|---|
|
|
새로운 알림 존재 여부 |
알림 확인
Request
HTTP request
PATCH /api/shelters/notification/read HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJpc3N1ZXIiLCJpYXQiOjE3MDI3MzIwMTgsInN1YiI6IjEiLCJleHAiOjE3MDI3MzMwMTgsInJvbGUiOiJST0xFX1NIRUxURVIifQ.IOptDqlH7NPUcxFwiPoRJZ1l_dsLdyb5YgQmSG-Zn5_Q-FYp2-9nnMab1w1gfuHO
X-CSRF-TOKEN: uGXRP4XOU_nys9_D_CFpMhfmpOB_-wc-0iMq4pPpBaT1gTJA2lTkCOD3YZvfhOmimQxdUyLVidlKmGUT4hdO1arcZJbHuAt2
Host: localhost:8080
Request headers
Name | Description |
---|---|
|
보호소 액세스 토큰 |
Response
HTTP response
HTTP/1.1 204 No Content
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Enum 문서화
1. 봉사자 성별
|봉사자 성별
코드 | 코드명 |
---|---|
|
MALE |
|
FEMALE |
2. 봉사 신청자 상태
|봉사 신청자 상태
코드 | 코드명 |
---|---|
|
PENDING |
|
REFUSED |
|
ATTENDANCE |
|
NOSHOW |
|
APPROVED |
3. 봉사 모집글 검색 필터
|검색 필터
코드 | 코드명 |
---|---|
|
IS_TITLE |
|
IS_CONTENT |
|
IS_SHELTER_NAME |
|
ALL |
4. 보호 동물 성격
|보호 동물 성격
코드 | 코드명 |
---|---|
|
QUIET |
|
NORMAL |
|
ACTIVE |
|
VERY_ACTIVE |
5. 보호 동물 성별
|보호 동물 성별
코드 | 코드명 |
---|---|
|
MALE |
|
FEMALE |
6. 보호 동물 나이대
|보호 동물 나이대
코드 | 코드명 |
---|---|
|
BABY |
|
JUNIOR |
|
ADULT |
|
SENIOR |
7. 보호 동물 사이즈
|보호 동물 크기대
코드 | 코드명 |
---|---|
|
SMALL |
|
MEDIUM |
|
LARGE |
8. 보호 동물 종류
|보호 동물 종류
코드 | 코드명 |
---|---|
|
DOG |
|
CAT |
|
ETC |