Skip to main content

인증서 단건 조회

단건 조회 (GET)

특정 인증서의 상세 정보를 조회합니다.

  • Method: GET

  • URL: /achievements/{achievementId}

  • URL Parameter:

    • achievementId (number, 필수): 조회할 인증서의 고유 ID

Response

{
"statusCode": 200,
"message": "인증서가 조회되었습니다.",
"achievement": {
// 인증서 객체
}
}

achievement (object)

필드명타입설명
idnumber인증서의 고유 ID
admin_commentstring | null관리자가 인증서에 남긴 코멘트
levelstring | null인증서 레벨
nft_tokenstring | nullNFT로 발행된 경우, NFT 토큰 정보
issuance_route"manual" | "automatic"발급 경로
certificate_numberstring인증서 고유 번호
course_begin_atstring (ISO8601) | null수강 시작 날짜
course_end_atstring (ISO8601) | null수강 종료 날짜
expiration_datestring (ISO8601) | null인증서 만료일 (null이면 영구 유효)
is_receivedboolean사용자가 인증서를 수령했는지 여부
status"PREVIEW" | "ISSUED"인증서 상태
issuance_method"EMAIL" | "PHONE"발급 방식
created_atstring (ISO8601)인증서 발급일
updated_atstring (ISO8601)인증서 마지막 수정일
useruser (object)유저정보
evidencesevidences (object)인증서 성과 정보 배열
achievementFormachievementForm (object)인증서 양식 정보

achievement.user (object)

필드명타입설명
emailstring사용자 이메일
namestring사용자 이름
avatarstring[]아바타 이미지 URL 배열
deleted_atstring | null계정 삭제 날짜 (null이면 가입 완료된 상태)
imagestring | null프로필 이미지 URL (직접 업로드한 이미지)
profileImageType"avatar" | "profile"프로필 이미지 타입

achievement.evidences (object)

필드명타입설명
idnumber성과 정보 고유 ID
titlestring사용자가 직접 입력한 제목 (없으면 file_name 사용)
linkstring | null외부 링크 (링크로 제출한 증빙 자료일 경우)
file_namestring | null업로드된 PDF의 실제 파일 이름
file_urlstring | nullSupabase에서 접근 가능한 전체 URL
created_atstring (ISO8601)증빙 자료 업로드 일자

achievement.achievementForm (object)

필드명타입설명
idnumber인증서 양식의 고유 ID
namestring인증서 양식 제목
descriptionstring인증서 양식 설명
type"completion" | "activity" | "license" | "career" | "award" | "recommendation" | "membership" | "degree"인증서 양식 타입
tagsstring[]인증서 양식 관련 태그
prefixstring인증서 고유 번호 접두어
program_typestring프로그램 유형
program_namestring프로그램 이름
program_urlstring프로그램 URL
course_begin_atstring (ISO8601)강의 시작 날짜
course_end_atstring (ISO8601)강의 종료 날짜
created_atstring (ISO8601)인증서 양식 생성일
updated_atstring (ISO8601)인증서 양식 마지막 수정일
clubInstitutionsclubInstitutions (object[])발급기관 정보
representativeInstitutionrepresentativeInstitution (object)대표발급기관 정보
requirementsrequirements (object[])취득성과 정보
achievementCertificateDesignachievementCertificateDesign (object)certificate 디자인 정보 객체
achievementBadgeDesignachievementBadgeDesign (object)badge 디자인 정보 객체

achievement.achievementForm.clubInstitutions (object[])

필드명타입설명
typestring기관 유형 (공공기관, 기업, 학교 등)
namestring기관 이름
website_urlstring기관 웹사이트 URL
imagesobject[]기관 이미지 리스트
images[].pathstring이미지 파일 URL
images[].type"club_symbol" | "sign_image"| "club_logo"이미지 타입

achievement.achievementForm.representativeInstitution (object)

필드명타입설명
typestring대표 기관 유형
namestring대표 기관 이름
website_urlstring대표 기관 웹사이트 URL
imagesobject[]대표 기관 이미지 리스트
images[].pathstring이미지 파일 URL
images[].type"club_symbol" | "sign_image"| "club_logo"이미지 타입

achievement.achievementForm.requirements (object[])

필드명타입설명
type"submit_homework" | "offline_meet" | "watch_video" | "live_meet" | "read" | "test" | "project" | "etc"취득 조건 타입
urlstring관련 링크
descriptionstring요구사항 설명

achievement.achievementForm.achievementCertificateDesign (object)

필드명타입설명
idnumbercertificate 디자인의 고유 ID
namestring디자인 이름
main_colorstring | null메인 색상
sub_colorstring | null서브 색상
extra_color_1string | null보조 색상1
extra_color_2string | null보조 색상2
layout_jsonobject[]인증서 이미지 생성을 위한 디자인 JSON 배열
template_typestring사용된 템플릿 종류
created_atstring (ISO8601)디자인 생성일
updated_atstring (ISO8601)디자인 수정일

achievement.achievementForm.achievementBadgeDesign (object)

필드명타입설명
idnumberbadge 디자인의 고유 ID
namestring디자인 이름
main_colorstring | null메인 색상
sub_colorstring | null서브 색상
extra_color_1string | null보조 색상1
extra_color_2string | null보조 색상2
layout_jsonobject[]인증서 이미지 생성을 위한 디자인 JSON 배열
template_typestring사용된 템플릿 종류
created_atstring (ISO8601)디자인 생성일
updated_atstring (ISO8601)디자인 수정일

오류 코드

상태 코드에러메시지상세 설명
400BadRequest잘못된 요청입니다.허가되지 않은 값, 올바르지 않은 형식의 요청
401Unauthorized인증 정보가 올바르지 않음토큰 누락 또는 유효하지 않은 토큰 사용
404AchievementNotFound인증서를 찾을 수 없습니다.요청한 인증서 ID에 해당하는 리소스가 없음
500InternalServerError서버 오류 발생예기치 않은 서버 내부 오류

Request Sample

String url = "https://${baseURL}/open-api/achievements/" + achievementId;

HttpResponse<String> response = Unirest.get(url)
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Authorization", "Bearer " + apiKey)
.asString();

System.out.println("Status: " + response.getStatus());
System.out.println("Response: " + response.getBody());