N2 KAOS API 서비스 이용안내
아래는 N2 KAOS의 API 서비스에 대한 이용안내 입니다.

API 호출은 기본적으로 Server-Side 구간에서 이용해야 하며, Client-Side에서의 호출은 수집된 자료의 저작권 침해 등의 우려로 제한될 수 있으며,
Client-Side 호출이 허용 되더라도 Cross Domain 등의 제약으로 원할하게 응답을 못 받을수도 있습니다.
API 호출시 제공되는 결과 데이터는 XML 형식입니다.

- Usage: https://sics.seoultech.ac.kr/kaos/kaosapi.n2s?s={service_no | service_id}&id=API_ID [Additional Parameters] [Optional Parameters]

- API 기본정보 요청(시스템 예약된 API 기능)
; 아래 URL 호출로 얻은 API ID(api_id) 및 서비스 ID(service_no or service_id)값을 활용해 N2 KAOS API 서비스를 이용합니다.

- Basic Parameters:

  • &s={service_no | service_id} : 서비스 대상 학과 ID 혹은 제어번호
  • &id=API_ID : 시스템에 정의된 API ID 값(필수)

- Additional Parameters:

  • API ID에 따라 API 요청 시 필수로 요구되는 파라미터를 지정하며, 그 내용은 XML 결과에서 API 정보(<apiinfo name="Properties">)의 "description", "remark" 내용 또는 파라미터 누락으로 "fail" 처리된 XML 결과의 "results->status message" 부분을 참고하면 됩니다.
  • 또한, 결과를 분류별로 제한하고자 할 때 부가적인 파라미터를 지정 할 수 있으며, 사용법은 XML 결과에 표시된 정보 중 "<additional_parameters>" 부분을 참고하면 됩니다.
  • Avairable Parameters
          [ Journals & Articles 데이터 요청 파라미터 ]
          &foreign_is={0 | 1}			; 국내외 구분 : 0=국내, 1=해외 (Ex: &foreign_is=0). 생략 가능하고 생략시 국내,해외 통합 목록을 제공합니다.
          &subj_code=주제분류코드		; 국내 또는 해외 범주의 주제분류코드를 1개 이상 사용 가능하며, 선택된 주제에 포함된 저널목록을 제공합니다.
          					      - 단일주제 Ex: &subj_code=240- 복수주제 Ex: &subj_code=260,852 또는 &subj_code=260&subj_code=852
          &resource_no=저널제어번호		; Article 데이터(datatype=eresource) 작성에 필요한 필수파라미터 (Ex: &resource_no=5532)
          &jlet=저널자모 or &jlet=etc		; 저널 목록 요청시 자모(ABC or 가나다) 순으로 제한 하고자 할때 사용합니다.
          					  영문 자모는 대소문자 구분없이 사용가능하며, 한글 자모('가나다') 요청시에는 UTF-8 코드 상태의 값을 URL encode 하여 요청합니다.
          					  - 단일 자모 : 한 자씩 지정 (Ex: &jlet=A, &jlet=%EB%9D%BC  ; &jlet=라 )
          					  - 자모 범위 : "-"으로 구분하여 시작, 끝 자모를 지정 (Ex: &jlet=d-h, &jlet=%EA%B0%80-%EC%9E%90  ; &jlet=가-자 )
          					  - "&jlet=etc"는 숫자 및 특수문자로 시작되는 저널 목록이 제공됩니다. 국내 저널에서 영문 저널은 "&jlet=a-z"과 같이 요청합니다.
          &range=시작번호-끝번호		; 저널 목록 요청시 범위를 제한하는 파라미터로 "&rangeunit" 파라미터와 조합하여 사용합니다. (Ex: &range=21-40)
          					  range 파라미터가 지정되면 범위 지정을 위한 참고 정보로 검색조건에 대한 전체 건수(totalhits) 정보가 XML에 포함 됩니다.
          &rangeunit={percent | sequence}	; 저널 범위지정에 대한 기준 단위로 'sequence'는 순차 범위, 'percent'는 퍼센트 범위 입니다.(생략시 기본값은 'sequence')
          					  - 퍼센트 단위 범위 지정 예제: &range=46-50&rangeunit=percent

          [ 정보원 데이터 요청 파라미터 ]
          &division=정보원분류코드[,코드 ...]	; 정보원 분류별 크롤링 데이터(datatype=site) 작성에 필요한 파라미터(Ex: &division=BOOK)로 &site_no가 지정된 경우라면 생략가능 합니다.
          					      - 단일분류 Ex: &division=BOOK- 복수분류 Ex: &division=NEWSD,NEWSF 또는 &division=NEWSD&division=NEWSF
          &site_no=SiteNo[,SiteNo ...]		; 정보원제어번호(SiteNo)로 정보원 별 크롤링 데이터(datatype=site)를 요청합니다.
          					  여러 개의 정보원제어번호 지정도 가능하며, 이 경우 선택된 정보원의 데이터 및 카테고리 정보를 제공합니다.
          					  단, 여러개의 정보원제어번호 사용시에는 동일 분류(division) 내의 정보원들로 지정 되어야 합니다.
          					      - 단일정보원 Ex: &site_no=32- 복수정보원 Ex: &site_no=33,49,50 또는 &site_no=33&site_no=49&site_no=50
          &cateid=정보원카테고리번호		; 정보원 별 크롤링 데이터(datatype=site) 작성시 정보원 크롤링 분류 별로 추출하고자 할때 지정 (Ex: &cateid=15)
          					  사용 시 '&site_no=정보원제어번호' 파라미터가 필수로 요구 됩니다.
          &common_cateid=공통카테고리번호	; 정보원 분류(division)별 크롤링 데이터(datatype=site) 작성시 공통 카테고리 별로 추출하고자 할때 지정 (Ex: &common_cateid=5)
          					  사용 시 '&division=정보원분류코드' 파라미터가 필수로 요구 됩니다.
          &category={common | site}		; 이용자 화면에 표시할 카테고리 목록 제공 시 '정보원카테고리 목록'(site) 또는 '공통카테고리 목록'(common)을 선택합니다.
          					  (생략 시 기본값은 "site" 입니다.)
          &image={on | off}			; 크롤링 한 정보원 데이터 요청 시 표지 이미지(Cover Image) 유,무를 선택합니다.
          					  (생략 시 기본값은 "off" 이며, "&image=on"으로 지정 시 표지 이미지가 없는 레코드는 제외 됩니다.)
          &dt_from_offset=정수, &edt_from_offset=정수	; 시작 일자 제한 : 등록일(dt) 또는 이벤트시작일(edt)에 대한 일 수를 오늘(offset=0)을 기준으로 한 정수 값을 지정합니다.
          &dt_to_offset=정수, &edt_to_offset=정수	; 끝 일자 제한 : 등록일(dt) 또는 이벤트시작일(edt)에 대한 일 수를 오늘(offset=0)을 기준으로 한 정수 값을 지정합니다.
          		; dt_from_offset, edt_from_offset(또는 dt_to_offset, edt_to_offset) 파라미터가 함께 사용되면 OR 조건으로 데이터가 제공되며,
          		  2쌍(4개) 파라미터가 모두 사용되면 dt_to_offset, edt_to_offset 파라미터는 무시되고 dt_from_offset, edt_from_offset 파라미터만 유효한 값으로 처리 됩니다.
          					  - Ex1) &dt_from_offset=-60&edt_from_offset=0	; 등록일=60일 전 날자 및 이벤트시작일=오늘날자 부터 인 데이터 제공 - OR 조건
          					  - Ex2) &edt_from_offset=7			; 이벤트시작일=7일(1주일) 후 부터 인 데이터 제공
          					  - Ex3) &edt_from_offset=-30&edt_to_offset=30	; 이벤트 시작일이 오늘날자 기준 1달 전,후 인 데이터 제공 (날자가 없으면 제외)
          					  [주]1. 일 수 offset 지정시 오늘 보다 이전 날자는 반드시 "-"기호를 사용(Ex: -10) 해야하고, 이후 날자는 "+"기호를 생략해도 됩니다.
          					      2. "[- 또는 +]숫자" 형식이 아닌 문자가 포함되면 해당 파라미터는 무시됩니다.
          					      3. "*_from_offset" 및 "*_to_offset" 파라미터가 동시에 같이 지정되면 날자가 NULL인 데이터는 제외되고,
          					         "*_from_offset" 혹은 "*_to_offset" 파라미터가 1개씩만 사용하면 날자가 NULL인 데이터도 포함됩니다.
          					  
          ※[주]1."&common_cateid=공통카테고리번호" 파라미터는 "cateid=정보원카테고리번호" 파라미터와 함께 사용은 불가 합니다.
          ※[주]2.위 설명에 기술된 데이터타입("datatype=site" or "datatype=eresource")은 상기 "이용가능한 API 목록요청"으로 얻은 XML 내의 각 API 정보에 명시되어 있습니다.

          [ 검색요청 파라미터 - 저널(journal), 논문(article) 및 정보원 데이터 공통 ]
          &object={journal | contents}	; 검색대상. journal=저널검색, contents=논문(article) 또는 정보원 데이터 검색. 생략 시 Default는 object=contents 입니다.
          &fld={ti | au | pu | is | all}; 검색필드. ti=제목, au=저자, pu=출판사(or 출처), is=ISSN, all=전체(ti,au,pu,abstract,toc,subject,country,place,language,doi 등)
          				  생략 시 Default는 fld=all(전체검색) 입니다. (Ex: &fld=ti)
          				  [주] "object=journal"(저널검색) 일때 fld 값은 ti=저널명, is=ISSN, pu=출판사, all=전체(ti OR is OR pu) 만 사용가능 합니다.
          &opt={contains | begins}	; 검색옵션. contains=키워드, begins=전방일치 (Ex: &opt=contains). 생략 시 Default는 contains(키워드) 입니다.
          &qt=SearchTerms		; 검색어. (Ex: &qt=computer) 생략 가능하며, 생략시 선택된 제한 옵션(&subj_code, &division 등)에 따른 데이터가 제공됩니다.
          - 검색 제한 파라미터(Search limit parameters)
          &foreign_is={0 | 1}, &subj_code=주제분류코드, &resource_no=저널제어번호 ; 논문(article) 검색 옵션 - 사용법은 상기 "Journals & Articles 데이터 요청 파라미터" 부분 참고
          &division=정보원분류코드, &site_no=SiteNo	; 정보원 데이터 검색 옵션 - 사용법은 상기 "정보원 데이터 요청 파라미터" 부분 참고

          ※[주] 검색 기능은 KAOS "API 관리"에 등록 된 정보에 지시어(directive)가 'search', 'journal', ''(NULL)으로 설정된 경우에만 검색기능 사용이 가능합니다.
        

- Optional Parameters:
; 사용 시 API의 기본 설정 값 보다 우선 적용됩니다.

  • &sort={ dt | edt | mdt | ti | no | sno | ds | if } : 정렬 옵션 ('ds' 및 'if', 'sno'는 대상 데이터에 따라 무시될 수 있습니다.) (<itemlists>...</itemlists> Elements 용 옵션)
    ; 정렬 옵션 값: dt=일자, edt=이벤트일자, mdt=최종수정일시, ti=제목, no=KAOS제어번호, sno=정보원고유번호, ds=표시순차, if=(저널)영향지수
  • &ascdesc={ ASC | DESC } : 정렬 방식 - 오름차순(ASC) 또는 내림차순(DESC) 선택. (<itemlists>...</itemlists> Elements 용 옵션)
  • &pagesize=숫자 : 제공 건수. 생략시 기본값은 "시스템관리 > 기본환경 설정"에 설정된 페이지당 출력건수 값 입니다. (Ex: &pagesize=20)
  • &pg=숫자 : 요청 페이지. 생략시 기본값은 "1" 입니다. (Ex: &pg=2)
  • &aux_sort={ dt | ti | no } : 보조 정렬 옵션 (<ejournal_list />, <subject_list />, <crawling_site* /> Elements 용 옵션)
    ; 보조정렬 옵션 값: dt=일자, ti=제목, no=제어번호(ejournal_list)/서비스저널수(subject_list)
      ; 정보원 크롤링 데이터(<crawling_site />, <crawling_site_category /> Elements)에는 "ti" 만 사용가능
  • &aux_ascdesc={ ASC | DESC } : 보조 정렬 방식 (<ejournal_list />, <subject_list />, <crawling_site* /> Elements 용 옵션)
  • &aux_pagesize=숫자 : 보조 제공 건수. 생략시 기본값은 100건 입니다. (Ex: &aux_pagesize=200)
  • &aux_pg=숫자 : 보조 요청 페이지. 생략시 기본값은 "1" 입니다. (Ex: &aux_pg=2)

※ [주] aux_sort, aux_ascdesc, aux_pagesize, aux_pg 등의 보조옵션 파라미터는 XML 내의 <browsing>...</browsing> 안에 제공되는 목록 데이터에 적용 됩니다.
  반면, sort, ascdesc, pagesize, pg 등의 파라미터는 XML 내의 <itemlists>...</itemlists> 안에 제공되는 서비스 데이터에 적용 됩니다.

서비스 기관 : 서울과기대/N2_KAOS