# 데이터 테이블 API
메서드 호출: Open API 문서에서 설명을 참조하십시오.
# 기능 소개
- 데이터 테이블 API는 페이지에서 데이터 테이블의 일부 작업을 구현할 수 있으며 데이터 테이블의 자동 작업 요구사항을 실현하는 데 도움을 줍니다.
- 데이터 테이블 API를 사용하면 다음과 같은 데이터 테이블 작업을 완료할 수 있습니다:
- 데이터 테이블 생성
- 기존 데이터 테이블 업데이트
- 데이터 테이블을 주요 속성과 연관
- 데이터 테이블을 주요 속성과 연관 해제
- 데이터 테이블 생성:
존재하지 않는 데이터 테이블을 생성하고, 파일을 처음 업로드하여 데이터 테이블의 각 필드의 이름과 유형을 지정할 수 있습니다.
- 기존 데이터 테이블 업데이트:
데이터 테이블 내용 업데이트만 지원하며, 데이터 테이블 필드의 추가, 삭제 또는 유형 수정은 지원하지 않습니다.
전체 테이블의 내용을 대체하거나 기존 데이터에 기반하여 점진적으로 업데이트할 수 있습니다.
- 데이터 테이블을 주요 속성과 연동:
기존 데이터 테이블을 주요 속성과 연결하여 차원 속성을 생성할 수 있습니다.
- 데이터 테이블을 주요 속성과 연동 해제:
연동된 데이터 테이블과 주요 속성을 해제하고 생성된 차원 속성을 삭제할 수 있습니다.
::: 팁
- 자세한 내용은 데이터 테이블 참조
- 차원 속성에 대한 자세한 내용은 가상 속성과 차원 테이블 속성 참조
:::
# 데이터 테이블 생성
데이터 테이블 생성 과정은 두 단계로 나뉩니다:
- 파일 업로드
- 업로드된 파일을 사용하여 데이터 테이블 생성
# 파일 업로드
파일 업로드의 최대 크기는 100MB이며, 업로드된 파일 유형은 엑셀과 CSV를 지원합니다.
인터페이스 URL
/open/datatable/uploadFile
요청 방법
POST
콘텐츠 유형
multipart/form-data
요청 쿼리 파라미터
parameter name | example | parameter type | is required | parameter position | parameter description |
---|---|---|---|---|---|
token | xxx | String | Yes | query key | |
projectId | 0 | number | Yes | query | The project to which the Data Table belongs ID created. |
file | "/path/to/my_datatable.xls" | file | Yes | body | multipart/form-data; csv/excel of uploaded table, first as primary key |
# exported parameters
fileId (이 fileId는 다음 단계인 데이터 테이블 생성에서 사용됩니다.)
# 데이터 테이블 생성
인터페이스 URL
/open/datatable/createDatatable
요청 방법
POST
콘텐츠 유형
application/json
요청 쿼리 파라미터
parameter name | parameter type | is required | parameter position | description | ||||
---|---|---|---|---|---|---|---|---|
projectId | number | Yes | query | Project Identity | ||||
fileId | string | Yes | body | id of the uploaded file | ||||
datatableName | string | Yes | body | Data Table name Beginning with a lowercase letter, can contain lowercase letters, numbers, underscores | ||||
datatableColumns | array | Yes | body | |||||
columnName | string | Yes | The column name of each column and the corresponding data type Column names can only start with a letter, contain letters, numbers, and underscores "_", and have a maximum length of 50 characters | |||||
dataType | string | Yes | column data type |
코드 예시
curl --location --request POST 'http://xxx.com/open/datatable/createDatatable?projectId=390' \
--header 'Content-Type: application/json' \
--data-raw '{
"fileId": "xxxxxxx",
"datatableName": "xxx",
"datatableColumns": [
{
"columnName": "aaa",
"dataType": "string"
}
]
}'
exported parameters
parameter name | data type | description | ||
---|---|---|---|---|
succeededRowCount | number | number of successful rows | ||
failedRowCount | number | number of failed rows |
# 1. 기존 데이터 테이블 업데이트
인터페이스 URL
/open/datatable/updateDatatable
요청 방법
POST
콘텐츠 유형
multipart/form-data
요청 쿼리 파라미터
parameter name | data type | is required | parameter position | description | ||
---|---|---|---|---|---|---|
projectId | number | Yes | query | The project to which the Data Table belongs ID created. | ||
datatableName | string | Yes | query | Data Table name | ||
updateType | enum(INCR_UPDATE/REPL_UPDATE) | Yes | query | Update type, INCR_UPDATE incremental update, REPL_UPDATE to replace the entire table content update | ||
file | file | Yes | body | multipart/form-data; csv/excel of uploaded table, first as primary key |
코드 예시
curl --location --request POST 'http://xxx.com/open/datatable/updateDatatable?projectId=390&datatableName=xxx&updateType=INCR_UPDATE' \
--form '=@"/path/to/file"'
# 2. 데이터 테이블을 주요 속성과 연결
인터페이스 URL
/open/datatable/bindAssociatedProperty
요청 방법
POST
콘텐츠 유형
application/json
요청 쿼리 파라미터
parameter name | data type | is required | parameter position | description | ||
---|---|---|---|---|---|---|
projectId | number | Yes | query | The project to which the Data Table belongs ID created. | ||
datatableName | string | Yes | body | Data Table name | ||
associatedPropertyName | string | Yes | body | associated attribute name | ||
associatedPropertyTableType | user/event | Yes | body | associated attribute type | ||
timestampJoinFormat | no | body | If the main attribute is a time type (timestamp), it supports binding dimension attributes after granularity calculation by timestamp |
timestampJoinFormat
은 다음과 같은 유형을 지원합니다.
value | describe |
---|---|
DATE_STR_YEAR | Property will be formatted as "yyyy" string after binding dimension property |
DATE_STR_MONTH | Property will be formatted as "yyyy- MM" after binding the dimension property |
DATE_STR_DAY | Property will be formatted as "yyyy-MM -dd" after binding the dimension property |
DATE_STR_HOUR | Property will be formatted as "yyyy- MM -dd HH" after binding dimension property |
DATE_STR_MINUTE | The attribute will be formatted as "yyyy-MM -dd HH: mm" after binding the dimension attribute |
DATE_STR_SECOND | The attribute will be formatted as "yyyy-MM -dd HH: mm: ss" after binding the dimension attribute |
DATE_STR_MILLISECOND | The attribute will be formatted as "yyyy-MM -dd HH: mm: ss.SSS" after binding the dimension attribute |
코드 예시
curl --location --request POST 'http://xxx.com/open/datatable/bindAssociatedProperty?projectId=390' \
--header 'Content-Type: application/json' \
--data-raw '{
"datatableName": "xxxxxxx",
"associatedPropertyName": "aaa",
"associatedPropertyTableType": "user",
"timestampJoinFormat": "DATE_STR_YEAR"
}'
출력 파라미터
parameter name | data type | description | ||||
---|---|---|---|---|---|---|
dimensionProperties | array | |||||
columnName | string | dimension property name | ||||
selectType | string | Dimension table data type |
# 3. 데이터 테이블과 주요 속성의 연결 해제
인터페이스 URL
/open/datatable/unbindAssociatedProperty
요청 방법
POST
콘텐츠 유형
application/json
요청 쿼리 파라미터
parameter name | data type | is required | parameter position | description | ||
---|---|---|---|---|---|---|
projectId | number | Yes | query | The project to which the Data Table belongs ID created. | ||
datatableName | string | Yes | body | Data Table name | ||
associatedPropertyName | string | Yes | body | associated attribute name | ||
associatedPropertyTableType | user/event | Yes | body | associated attribute type |
코드 예시
curl --location --request POST 'http://xxx.com/open/datatable/unbindAssociatedProperty?projectId=390' \
--header 'Content-Type: application/json' \
--data-raw '{
"datatableName": "xxxxxxx",
"associatedPropertyName": "aaa",
"associatedPropertyTableType": "user"
}'