Skip to content

API 명세서

seonuk edited this page Dec 31, 2020 · 8 revisions

API 명세서

api list

Get weather Api

메인 뷰에서 현재 날씨에 관한 정보를 조회한다.

request

GET ~/currentWeather?lat={latitude}&lon={longitude}&time={currentTime}

Content-Type: application/json

Query String

Name Type Description Mandatory
lat Double 위도 정보 Y
lon Double 경도 정보 Y
time String 'YYYY-MM-DD-HH' 형식 Y

Response

status code description
200 OK 실시간 현재 날씨에 관한 정보를 반환한다.
400 Bad Request Query string의 형식이 적합하지 않음
500 Internal Server Error 서버 에러

성공일 때 response body는 JSON 형식이며 아래와 같다.

{
  "dailyWeatherInfo": {
    "regionInfo": {
      "code": 123456,
      "name": "경기도 수원시"
    },
    "date": {
      "month": 12,
      "day": 31,
      "dayOfWeek": ""
    },
    "temperatureInfo": {
      "maxTemp": 4,
      "minTemp": -3
    }
  },

  "currentWeatherInfo": {
    "time": "오후 5시",
    "temperature": -4,
    "climateInfo": {
      "id": 2312,
      "description": "조금 흐리지만 따뜻함"
    }
  }
}
Name Type Description
dailyWeatherInfo object of dailyWeatherInfo 하루 날씨 정보를 담은 객체
currentWeatherInfo object of currentWeatherInfo] 현재 날씨 정보를 담은 객체

RESOURCE

realTimeWeatherInfo

실시간 날씨 정보 개요

example

{
  "dailyWeatherInfo": {
    "regionInfo": {
      "code": 123456,
      "name": "경기도 수원시"
    },
    "date": {
      "month": 12,
      "day": 31,
      "dayOfWeek": ""
    },
    "temperatureInfo": {
      "maxTemp": 4,
      "minTemp": -3
    }
  },

  "currentWeatherInfo": {
    "time": "오후 5시",
    "temperature": -4,
    "climateInfo": {
      "id": 2312,
      "description": "조금 흐리지만 따뜻함"
    }
  }
}
Name Type Description
dailyWeatherInfo object 일자별 날씨 정보
currentWeatherInfo object 시간별 날씨 정보

dailyWeatherInfo

일자별 날씨 정보 개요

example

{
  "regionInfo": {
    "code": 123456,
    "name": "경기도 수원시"
  },
  "date": {
    "month": 12,
    "day": 31,
    "dayOfWeek": ""
  },
  "temperatureInfo": {
    "maxTemp": 4,
    "minTemp": -3
  }
}
Name Type Description
regionInfo object 지역 정보
date object 오늘 일자
temperatureInfo object 최저/최고 온도

currentWeatherInfo

현재 시간 날씨 정보 개요

example

{
  "time": "오후 5시",
  "temperature": -4,
  "climateInfo": {
    "id": 2312,
    "description": "조금 흐리지만 따뜻함"
  }
}
Name Type Description
time string 현재 시간
temperature integer 현재 기온
climateInfo object 기후 정보

regionInfo

지역 정보

example

{
  "code": 123456,
  "name": "경기도 수원시"
}
Name Type Description
code integer 해당 지역 행정 코드
name string 지역 이름

date

날짜 정보

example

{
  "month": 12,
  "day": 31,
  "dayOfWeek": "" 
}
Name Type Description
month integer
day integer
dayOfWeek string 요일

temperatureInfo

온도 정보

example

{
  "maxTemp": 4,
  "minTemp": -3
}
Name Type Description
maxTemp integer 최대 온도
minTemp integer 최저 온도
dayOfWeek string 요일

climateInfo

기후 정보

example

{
  "id": 2312,
  "description": "조금 흐리지만 따뜻함"
}
Name Type Description
id integer 기후 정보 ID
description string 기후 설명 text

userInfo

유저 정보

example

{
  "id": 2312,
  "nickname": "홍길동"
}
Name Type Description
id integer 유저 식별자 (기기 id)
nickname string 유저 별명

weathyInfo

오늘 일자와 과거 기록 중 가장 비슷한 날의 날씨 및 옷 정보

example

{
  "dailyWeatherInfo": { },
  "clothingInfoList": [],
  "stampId": 1,
  "feedback": "목도리가 좋아요~"
}
Name Type Description
dailyWeatherInfo integer 일자별 날씨 정보
clothingInfoList array 옷 정보 리스트
stampId integer 사용자가 기록한 이모지 id
feedback string 사용자 피드백

clothingInfoList

옷 정보 리스트 clothingInfo로 구성됨

example

[
  {
      "id": 1,
      "categoryId": 2,
      "name": "까만 후드티"
  }
]
clothingInfo
Name Type Description
id integer 옷의 id
categoryId integer 옷이 해당하는 카테고리 id
name string 옷 이름