---
# System prepended metadata

title: JSON API 구조

---

# JSON API 구조

## 데이터 타입 정리
```
datetime: `2020-12-31 23:59:59`
    
date: `2020-12-13`
    
user: {
    no: number,
    nickname: string,
    image: string
}

issue: {
    no: number,
    title: string,
    author: user,
    assignees: [user],
    labels: [label],
    isOpened: boolean,
    createdAt: datetime,
    closedAt: datetime | null,
    milestone: milestone | null,
    comments: [comment]
}

label: {
    no: number,
    name: string,
    description: string,
    color: string
}

milestone: {
    no: number,
    totalTasks: number,
    closedTasks: number,
    isClosed: boolean,
    isDeleted: boolean,
    dueDate: date | null,
    description: string | null,
}

```

## 이슈 목록 가져오기
```
{
    issues: [
        {
            issueNo: number,
            title: string,
            userNickname: string,
            assignees: [user],
            labels: [label],
            isOpened: boolen,
            createdAt: datetime,
            closedAt: datetime | null,
            milestone: milestone | null,
            commentCount: number
        }
    ]
}
```

## 하나의 이슈 가져오기
```
{
    issue : issue
}
```

## 하나의 유저 조회
```
{
    user: user
}
```

## 모든 유저 조회
```
{
    users: [user]
}
```

## 모든 레이블 조회
```
{
    labels: [label]
}
```

## 모든 마일스톤 조회
```
{
    milestones: [milestone]
}
```

## 하나의 마일스톤 조회
```
{
    milestone: milestone
}
```

// 할 일
이슈 comment 조회 -> 하나의 이슈를 가져오는 API (comment 포함)