주 컨텐츠로 이동
Adaptive Planning
최종 업데이트: 2024-05-03
개념: JSON 형식의 API

개념: JSON 형식의 API

제한된 수의 Adaptive Planning REST API만 JSON 형식을 사용하여 Adaptive Planning에서 데이터를 제출하고 가져올 수 있습니다. 향후 릴리스에서는 더 많은 API에서 JSON 형식을 사용할 예정입니다.

JSON 요청

각 JSON 요청에는 다음이 필요합니다.
  • HTTP Verb 또는 메서드
    예:
    GET
    ,
    PUT
    , 또는
    PATCH
  • URL 엔드포인트
    인스턴스에서 미국 이외의 지역 인증을 사용하는 경우 권한 부여 URL 및 API 엔드포인트는 지역에 따라 다릅니다. 참조 참조: 지역 인증 URL.
    예:
    HTTPS://api.adaptiveplanning.com/api/rest/modeling/v1/globosales/sheet/availability
  • 권한 부여 헤더
    예:
    --header 'Authorization: Basic c5RldmVjQLdsb2JvLmNabTpjaGFuZ2VtZQ=='

HTTP 동사 또는 메서드

사용가능한 메서드 또는 Verb는 서비스 및 리소스에 따라 다릅니다.
방법
설명
GET
데이터 컬렉션 또는 단일 오브젝트를 검색합니다.
POST
지정된 데이터를 사용하여 단일 데이터 인스턴스를 생성합니다.
PATCH
기존 데이터를 부분적으로 업데이트합니다.
PUT
기존 데이터를 업데이트하고 기존 데이터를 요청 본문의 지정된 데이터로 바꿉니다.
DELETE
기존 데이터 인스턴스를 삭제합니다.

URL 엔드포인트

인스턴스에서 미국 이외의 지역 인증을 사용하는 경우 권한 부여 URL 및 API 엔드포인트는 지역에 따라 다릅니다. 참조 참조: 지역 인증 URL.
https://api.adaptiveplanning.com/rest/<service name>/<version>/<tenant>/<resource path>
  • service name
    다음과 같은 기능을 기반으로 하는 구성요소명
    modeling
    , 또는
    security
    .
  • version
    서비스의 버전입니다. 모든 서비스의 현재 버전:
    v1
    .
  • tenant
    Adaptive Planning 인스턴스를 나타내는 이 서비스의 테넌트입니다. 사용
    default
    권한 부여에 포함된 사용자의 기본 인스턴스에 해당합니다.
  • resource path
    리소스 경로(다음과 같은 명사 사용)
    sheet
    availability
    . 이 경로는 다음과 같은 쿼리 매개변수도 지원합니다.
    • sheetName
      Adaptive Planning에서 시트명을 지정합니다.
    • columnName
      Adaptive Planning 시트의 열 이름을 지정합니다.
    • limit
      단일 응답에 포함되는 오브젝트 데이터 항목의 한도를 지정합니다.
    • offset
      응답에 포함할 컬렉션의 첫 번째 오브젝트에 대한 오프셋을 지정합니다.
예를 들어 다음과 같습니다.
https://api.adaptiveplanning.com/api/rest/modeling/v1/globosales/sheet/availability?sheetName=Expense Cube&columnName=Level&columnType=Level

예: JSON 본문이 있는 POST 요청

curl --location --request POST 'https://api.adaptiveplanning.com/api/rest/modeling/v1/default/sheet/availability?sheetName=Sales Cube&columnName=account&columnType=Account' \ --header 'Authorization: Basic c5RldmVjQLdsb2JvLmNabTpjaGFuZ2VtZQ==' \ --header 'Content-Type: application/json' \ --data-raw '[ { "name": "Discount Percent", "code": "SalesCube.DiscountPercent", "accountGroup": false, "available": true } ]'

수금

리소스는 일반적으로 다음의 비즈니스 오브젝트 모음을 나타냅니다.
Adaptive Planning
JSON 컬렉션으로 반환됩니다. 이 컬렉션은 개발 프레임워크에서 비즈니스 오브젝트 목록을 작성하는 데 사용할 수 있습니다. 컬렉션의 특정 오브젝트는 ID를 통해 액세스됩니다.
컬렉션의 오브젝트 정렬 순서는 다음과 같이 설정됩니다.
Adaptive Planning
이며, 구성할 수 없습니다.
컬렉션의 페이징은 2개의 옵션 쿼리 매개변수인 한도 및 오프셋으로 제어됩니다.
쿼리 매개변수
설명
limit
단일 응답에 포함된 오브젝트 데이터 항목의 한도입니다. 기본값은 20이고 최대값은 100입니다.
offset
응답에 포함할 컬렉션의 첫 번째 오브젝트에 대한 오프셋입니다. 기본값은 0입니다.

한도 및 오프셋이 있는 샘플 요청

이 샘플은 다음을 사용하여 사용자 인스턴스 컬렉션을 검색합니다.
instanceCode
-
GLOBO
.
@GET @PATH("/users/instances?instanceCode=GLOBO&limit=20&offset=0") @Produces(MediaType.APPLICATION_JSON) public List<User> getUsers(@PathParam("instanceCode") String instanceCode,@PathParam("limit")int limit,@PathParam("offset")int offset)

한도 및 오프셋이 있는 샘플 응답

{ "total": 25, "link": { "next": "https://api.adaptiveplanning.com/api/rest/security/v1/default/users/instances?instanceCode=GLOBO&offset=4&limit=2", "previous": "https://api.adaptiveplanning.com/api/rest/security/v1/default/users/instances?instanceCode=GLOBO&offset=0&limit=2" }, "users": [ { "userId": 14, "userGuid": "474C4F424F000000000000000100000E", "userName": "asiaboss@globo.com", "instances": [ { "code": "GLOBO", "default": true } ] }, { "userId": 21, "userGuid": "474C4F424F0000000000000001000015", "userName": "Bob@globo.com", "instances": [ { "code": "GLOBOSALES" }, { "code": "GLOBOSUB" }, { "code": "GLOBO", "default": true } ] } ] } Note: -Default offset = 0 and limit = 500

자격증명 유형, 인증 및 권한 부여

모든 API 요청은 상태 비저장 단일 액션 요청입니다. 사용자는 각 개별 호출에서 인증되어야 하므로, 침입자가 기존 웹서비스 세션을 가로채려고 할 가능성이 없습니다.
API 요청에서 사용자를 인증해도 이 사용자에 대한 영구 세션은 생성되지 않습니다. 각각의 개별 웹서비스 호출은 해당 사용자를 별도로 인증해야 합니다.
다음
Adaptive Planning
JSON 형식의 API는 기본 및 토큰 기반 인증(TBA) 방법을 모두 지원합니다.
Adaptive Planning
에서는 XML API와 같은 요청 본문이 아닌 요청 헤더에 권한 부여가 표시된 JSON 형식의 실제 REST API를 지원합니다. 요청 및 응답 메시지 형식 및Make Adaptive Planning API Requests with Workday Credentialsfor XML API의 예를 참조하십시오.

기본 인증

기본 인증은 인증 헤더에 Base64로 인코딩된 사용자명과 비밀번호를 사용합니다.
샘플:
'Authorization': 'Basic <insert base64 encoded string>'
예:
xyz@demo.com:password
인코딩 대상
eHl6QGRlbW8uY29tOnBhc3N3b3Jk

토큰 기반 인증(TBA)

사용자를 Workday에서 Adaptive Planning으로 동기화하는 경우에는 토큰 기반 인증 방법을 사용해야 합니다. 토큰을 가져오려면Make Adaptive Planning API Requests with Workday Credentials의 단계를 따릅니다. 토큰을 가져온 후 헤더에 전달합니다.
Sample: 'Authorization': 'Bearer <insert token here>'
예: '
Authorization: Bearer eyJjdHkiOiJ0ZXh0L3BsYWluIiwiYWxnIjoiSFMyNTYifQ.eyJsb2dpbl9pZCI6InN0ZXZlY0BheWdsb2JvLmNvbSIsIm5iZiI6MTU4NjEzMDA2NywibXVsdGlfdXNlIjoiMCIsImlzX2F1dGgiOiIxIiwiZXhwIjoxODg2MTMwMTg3LCJpYXQiOjE2MDM5NDYwMjEsImp0aSI6IjM0YzFkZDY2LTY2MTMtNDk0Ny05MjFhLTliZDQ2ZDVmZDkwNyJ9.FZnLHGQ3dNfpzvW-A9ILi53z6YLGNNI45Mlc-4NT3As'