Skip to content

[iOS] API 요구 사항

Hong edited this page Jun 8, 2021 · 4 revisions

iOS API 요구사항 정리

이슈

목차

  • Send 목록

    • 로그인
    • 이슈 생성
    • 이슈 수정
    • 댓글 추가
    • 레이블 추가
    • 마일스톤 추가
  • GET 목록

    • 이슈 전체목록

    • 특정 이슈 자세한 내용

    • 만들어진 레이블 목록

    • 만들어진 마일스톤 목록


이슈 전체조회

  • GET
issueList [{
    "title": "일하기 싫다",
    "issueNumber": 3,
    "description": "최소한의 비용으로 최대한의 효율을",
    "milestone": {
      "title": "스프린트2",
      "deadLine": "2020-06-19",
      "description": "이번 배포를 위한 스프린트",
      "issues": {
        "open": 3,
        "closed": 3,
        "progress": "50%" 
      }
    },
    "label": [{
      "title": "feature",
      "description": "기능에 대한 레이블",
      "color": "#000000"
    },
    {
      "title": "feature2",
      "description": "기능에 대한 레이블2",
      "color": "#000001"
    }]
},
{
    "title": "나는 오늘 행복합니다",
    "issueNumber": 4,
    "description": "내일도 행복하려구요",
    "milestone": {
      "title": "스프린트2",
      "deadLine": "2020-06-19",
      "description": "이번 배포를 위한 스프린트",
      "issues": {
        "open": 3,
        "closed": 3,
        "progress": "50%" 
      }
    },
    "label": [{
      "title": "feature",
      "description": "기능에 대한 레이블",
      "color": "#000000"
    },
    {
      "title": "feature2",
      "description": "기능에 대한 레이블2",
      "color": "#000001"
    }]
}]

  1. 마일스톤은 어떤 형식으로 받아와야하는지?
  2. 레이블 색상까지 같이 받아올껀지?

특정 이슈 조회(이슈 클릭 시)

{
  "issueNumber": 3
}
  • GET
//이슈 번호를 넘기면 get해올 정보들
{
  "title": "일하기 싫다",
  "author": {
    "profileImage": "www.profileImage.com",
    "name": "ZG"
  },
  "assignee": [{
    "profileImage": "www.profileImage.com",
    "name": "ZG"
  },
  {
    "profileImage": "www.profileImage.com",
    "name": "Hong"
  }],
  "issueNumber": 11,
  "isOpen": true,
  "milestone": {
  "title": "스프린트2",
  "deadLine": "2020-06-19",
  "description": "이번 배포를 위한 스프린트",
  "issues": {
        "open": 3,
        "closed": 3,
        "progress": "50%" 
      }
  },
  "label": [{
      "title": "feature",
      "description": "기능에 대한 레이블",
      "color": "#000000"
      },
      {
      "title": "feature2",
      "description": "기능에 대한 레이블2",
      "color": "#000001"
 }],
  "comments": [{
  "author": "Hong",
  "minuteAgo": "1분전",
  "description": "같이 재미있게 해봐요~"
 },
 {
  "author": "JK",
  "minuteAgo": "1분전",
  "description": "😡"
}] 
}

-- 의논거리

  1. author(작성자) Class 타입으로 이미지+name 같이 받아야할 듯

  2. 레이블 + 마일스톤 속성 + 이모티콘 추가해야하는 지?

  3. 4- [댓글 추가] 버튼을 누르면 새로운 댓글을 작성해서 추가할 수 있다. 댓글 추가 옆 상/하 버튼을 누르면 댓글을 스크롤해서 다음 댓글로 이동한다. 만약 상/하에 더이상 댓글이 없으면 스크롤하지 않는다. 상/하 눌러서 댓글을 스크롤한다는게 뭔소리야?


이슈 생성

  • Send
{
  "id": "ZG",
  "title": "제목",
  "comment": "내용"
}
  1. 깃허브나, 애플로그인하면 아이디 가져올 수 있는지??

이슈 수정

제목,내용 수정

  • Send
{
  "issueNumber": 11,
  "title": "제목",
  "comment": "내용"
}
  1. 담당자, 레이블, 마일스톤 edit 버튼은 있지만 수정하는 화면은 없는데 만들어야 할까?


레이블 목록 받아오기

  • GET
{
    "label": [
      {
      "title": "feature",
      "description": "기능에 대한 레이블",
      "color": "#000000"
      },
      {
      "title": "bug",
      "description": "버그에 대한 레이블",
      "color": "#000001"
      }
      ]
}

레이블 추가

  • Send
{
  "title": "feature",
  "description": "기능에 대한 레이블",
  "color": "#000000"
}

만들어진 마일스톤 목록

  • GET
"milestone": [{
  "title": "스프린트2",
  "deadLine": "2020-06-19",
  "description": "이번 배포를 위한 스프린트",
  "issues": {
        "open": 3,
        "closed": 3,
        "progress": "50%" 
      }
  },
  {
  "title": "스프린트3",
  "deadLine": "2020-07-20",
  "description": "삼번 배포를 위한 스프린트",
  "issues": {
        "open": 3,
        "closed": 3,
        "progress": "50%" 
      }
  }]

마일스톤 추가

  • Send
{
  "title": "스프린트3",
  "deadLine": "2020-07-20",
  "description": "삼번 배포를 위한 스프린트",
  "issues": {
        "open": 3,
        "closed": 3,
        "progress": "50%" 
      }
  }