Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

보안 표지 범주 목록 조회(List Marking Categories) (V2)

보안 표지 범주 목록을 조회합니다. 최대 페이지 크기는 100입니다. includeDeleted를 생략하면 삭제된 범주도 포함하고, markingType을 생략하면 MANDATORY와 CBAC를 모두 대상으로 합니다.

첫 요청에서는 pageToken을 생략하고, 이후 요청에는 직전 응답의 nextPageToken을 전달합니다.

HTTP 요청

GET /api/v2/admin/markingCategories

작업 식별자는 v2.listMarkingCategories입니다. OAuth2로 호출하는 타사 애플리케이션에는 api:admin-read 권한 범위가 필요합니다. 각 요청에 Authorization: Bearer <접근 토큰>을 전달합니다.

경로 매개변수

지정할 경로 매개변수가 없습니다.

쿼리 매개변수

이름자료형필수 여부의미와 조건예시 값
includeDeletedboolean선택삭제된 범주를 포함할지 지정합니다. 생략하면 true입니다.
markingTypeenum선택반환할 범주의 표지 유형입니다. 생략하면 모든 유형을 조회합니다. 허용값: MANDATORY, CBAC.MANDATORY
pageSizeinteger선택요청할 페이지 크기입니다.
pageTokenstring선택페이지 조회를 시작할 위치입니다. 첫 요청에서는 생략하고, 다음 요청에서는 직전 응답의 nextPageToken을 pageToken으로 전달합니다.

요청 본문

요청 본문을 사용하지 않습니다.

응답

응답 형식은 ListMarkingCategoriesResponse입니다.

이름자료형필수 여부의미와 조건예시 값
datalist<MarkingCategory>선택
nextPageTokenstring선택다음 페이지를 요청할 때 pageToken에 전달할 토큰입니다. 다음 토큰이 없으면 마지막 페이지입니다.

data의 구조

배열 항목은 MarkingCategory이며 자료형은 object입니다.

이름자료형필수 여부의미와 조건예시 값
idstring필수보안 표지 범주 ID입니다. 사용자가 만든 범주는 UUID이며, 조직에 연결된 표지는 ID가 Organization인 범주에 속합니다.0950264e-01c8-4e83-81a9-1a6b7f77621a
namestring필수Customer Data
descriptionstring필수Markings related to data about our customers
categoryTypeenum필수허용값: CONJUNCTIVE, DISJUNCTIVE.CONJUNCTIVE
markingTypeenum필수허용값: MANDATORY, CBAC.MANDATORY
prioritylong선택CBAC 범주에서만 사용하는 우선순위입니다. 숫자가 클수록 우선순위가 높습니다.10
markingslist<MarkingId>선택
deletedboolean필수범주가 삭제되었는지 나타냅니다.false
createdTimestring (date-time)필수리소스 생성 시각입니다.2003-05-06T12:34:56.789Z
createdBystring선택리소스를 생성한 Foundry 사용자입니다.f05f8da4-b84c-4fca-9c77-8af0b13d11de
markings의 구조

배열 항목은 MarkingId이며 자료형은 string입니다.

보안 표지의 ID입니다.

가상 보안 표지 범주의 응답 예시입니다.

{
  "data": [
    {
      "categoryType": "CONJUNCTIVE",
      "deleted": false,
      "markings": [
        "18212f9a-0e63-4b79-96a0-aae04df23336"
      ],
      "createdBy": "f05f8da4-b84c-4fca-9c77-8af0b13d11de",
      "name": "Customer Data",
      "description": "Markings related to data about our customers",
      "createdTime": "2003-05-06T12:34:56.789Z",
      "id": "0950264e-01c8-4e83-81a9-1a6b7f77621a",
      "markingType": "MANDATORY"
    }
  ],
  "nextPageToken": "v1.QnVpbGQgdGhlIEZ1dHVyZTogaHR0cHM6Ly93d3cucGFsYW50aXIuY29tL2NhcmVlcnMvP2xldmVyLXNvdXJjZSU1YiU1ZD1BUElEb2NzI29wZW4tcG9zaXRpb25z"
}

개별 오류

오류 이름오류 코드HTTP의미와 조건추가 매개변수
InvalidPageSizeINVALID_ARGUMENT400페이지 크기가 0 또는 음수입니다. 0보다 커야 합니다.pageSize
UnknownMarkingTypeINVALID_ARGUMENT400지정한 보안 표지 유형을 인식할 수 없습니다.markingType

요청 예제

FOUNDRY_HOST에는 https://를 제외한 Foundry 호스트를, FOUNDRY_TOKEN에는 유효한 토큰을 환경 변수로 제공합니다. 예시 식별자와 매개변수 값은 실제 작업 대상에 맞게 바꿉니다.

cURL

curl \
	-H "Authorization: Bearer ${FOUNDRY_TOKEN}" \
	"https://${FOUNDRY_HOST}/api/v2/admin/markingCategories?markingType=MANDATORY"

Python

Requests 라이브러리가 설치된 Python 환경에서 사용합니다.

import os
import requests

HOSTNAME = os.environ["FOUNDRY_HOST"]
TOKEN = os.environ["FOUNDRY_TOKEN"]
headers = {
    "authorization": "Bearer {}".format(TOKEN)
}

response = requests.get('https://{}/api/v2/admin/markingCategories?markingType=MANDATORY'.format(HOSTNAME), headers=headers)
print(response)

Java

Apache HttpClient 4.5 API와 try-with-resources를 사용합니다. 클래스 이름에 맞는 ListMarkingCategoriesExample.java 파일에서 사용합니다.

import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder;

public class ListMarkingCategoriesExample {
    public static void main(String[] args) throws Exception {
        String HOSTNAME = System.getenv("FOUNDRY_HOST");
        String TOKEN = System.getenv("FOUNDRY_TOKEN");

        try (CloseableHttpClient httpClient = HttpClientBuilder.create().build()) {
            HttpGet request = new HttpGet("https://" + HOSTNAME + "/api/v2/admin/markingCategories?markingType=MANDATORY");
            request.addHeader("authorization", String.format("Bearer %s", TOKEN));
            try (CloseableHttpResponse response = httpClient.execute(request)) {
                System.out.println(response);
            }
        }
    }
}

JavaScript

fetch를 제공하는 Node.js 환경에서 사용합니다. 서비스 사용자 토큰을 브라우저로 전달하지 않습니다.

const HOSTNAME = process.env.FOUNDRY_HOST;
const TOKEN = process.env.FOUNDRY_TOKEN;

fetch(`https://${HOSTNAME}/api/v2/admin/markingCategories?markingType=MANDATORY`, {
    method: 'GET',
    headers: {
        'Authorization': `Bearer ${TOKEN}`,
    }
}).then((response) => {
    console.log(response)
});

PowerShell

$TOKEN = $env:FOUNDRY_TOKEN
$HOSTNAME = $env:FOUNDRY_HOST

$headers = @{
    "authorization" = "Bearer $TOKEN"
}

$response = Invoke-WebRequest -Uri "https://$HOSTNAME/api/v2/admin/markingCategories?markingType=MANDATORY" `
	-Headers $headers

$response.content