Saved Objects APIs
출처: 문서
본문
저장된 객체 API
저장된 객체 API를 사용하여 저장된 객체를 나열, 검색, 생성, 업데이트, 내보내기 및 가져오기를 할 수 있어요. 예를 들어 클러스터 간에 시각화 세트를 복사하거나 클러스터에 포함된 시각화를 목록화할 수 있어요.
이 엔드포인트는 OpenSearch가 아닌 OpenSearch Dashboards에서 제공되므로 OpenSearch REST 포트 대신 OpenSearch Dashboards 호스트와 포트(기본값 5601)로 보내세요. POST, PUT, 또는 DELETE를 사용하는 요청에는 osd-xsrf: true 헤더가 필요해요. Kibana OSS용으로 작성된 스크립트는 대신 kbn-xsrf: true 헤더를 보내며, OpenSearch Dashboards는 Request must contain a osd-xsrf header 오류와 함께 이러한 요청을 거부해요. 이 오류를 수정하려면 스크립트에서 kbn-xsrf를 osd-xsrf로 바꾸세요.
이 페이지의 예제와 같이 curl을 사용하여 이러한 요청을 보내세요. curl 없이 GET 엔드포인트를 실행하려면 OpenSearch Dashboards에 로그인한 브라우저의 주소 표시줄에 전체 URL을 입력하세요.
Dev Tools 콘솔은 모든 요청을 OpenSearch REST 포트로 전달하기 때문에 이러한 엔드포인트를 호출할 수 없어요. 저장된 객체 경로가 해당 포트에 존재하지 않기 때문이에요. {: .note}
Security 플러그인이 활성화된 경우 -u 옵션을 사용하여 자격 증명을 전달하고, 클러스터가 자체 서명된 인증서를 사용하는 경우 -k를 추가하세요.
curl -k -u admin:<password> "https://localhost:5601/api/saved_objects/_find?type=visualization"
{% include copy.html %}
OpenSearch Dashboards가 프록시 뒤에서 실행되거나 관리형 서비스에서 실행되는 등 기본 경로에서 제공되는 경우 요청에 해당 기본 경로를 포함하세요. 예: https://<host>/_dashboards/api/saved_objects/_find.
이 API는 시각화의 정의(예: 집계 및 인덱스 패턴 참조)를 반환해요. 시각화를 실행하거나 표시하는 데이터를 반환하지는 않아요. 저장된 검색의 기본 행을 CSV 또는 Excel 파일로 내보내려면 Reporting API를 참조하세요. {: .note}
대신 OpenSearch Dashboards에서 동일한 객체를 내보내고 가져오려면 저장된 객체 내보내기 및 가져오기를 참조하세요.
테넌트 선택
멀티 테넌시가 활성화되면 각 테넌트는 자체 저장된 객체 세트를 가져요. 특정 테넌트의 저장된 객체를 작업하려면 securitytenant 헤더에 테넌트 이름을 보내세요.
curl -k -u admin:<password> -H 'securitytenant: global' "https://localhost:5601/api/saved_objects/_find?type=dashboard&fields=title"
{% include copy.html %}
글로벌 테넌트에는 global을, 요청 사용자의 개인 테넌트에는 __user__를 사용하세요.
헤더를 생략한 요청은 다음 테넌트 중 적용되는 첫 번째 테넌트가 처리해요:
- 요청의 세션 쿠키에 기록된 테넌트.
- 클러스터에 구성된 기본 테넌트.
- 사용자가 액세스할 수 있는 선호 테넌트 목록의 첫 번째 테넌트.
- 글로벌 테넌트.
- 요청 사용자의 개인 테넌트.
curl 요청은 세션 쿠키를 전달하지 않으므로 기본 구성에서는 글로벌 테넌트가 처리해요.
테넌트를 쿼리 매개변수로 전달하는 것은 작동하지 않아요. 저장된 객체 엔드포인트가 쿼리 매개변수를 정의하지 않기 때문이에요. securitytenant 또는 security_tenant 쿼리 매개변수는 400 오류와 함께 거부돼요. 테넌트에 대한 자세한 내용은 OpenSearch Dashboards 멀티 테넌시를 참조하세요.
저장된 객체 찾기
Find Saved Objects API는 하나 이상의 유형의 저장된 객체를 검색해요.
엔드포인트
GET {osd_host}:{port}/api/saved_objects/_find
쿼리 매개변수
다음 표에서는 사용 가능한 쿼리 매개변수를 보여줘요. type을 제외한 모든 쿼리 매개변수는 선택 사항이에요.
| Parameter | Data type | Description |
|---|---|---|
type |
String | 검색할 저장된 객체의 유형(예: visualization, dashboard, search, index-pattern). 여러 유형을 검색하려면 매개변수를 반복하세요. 필수. |
search |
String | 결과를 필터링하는 데 사용되는 쿼리 문자열(예: Sales*). |
search_fields |
String | search 값과 일치시킬 필드(예: title). |
fields |
String | 응답에 포함할 객체 속성. 여러 속성을 반환하려면 매개변수를 반복하세요. title만 반환하면 응답이 작게 유지돼요. |
per_page |
Integer | 페이지당 결과 수. 기본값은 20. |
page |
Integer | 반환할 결과 페이지. 기본값은 1. |
sort_field |
String | 결과를 정렬할 필드(예: updated_at). |
예제 요청
다음 요청은 클러스터의 시각화를 나열하고 제목만 반환해요:
curl "http://localhost:5601/api/saved_objects/_find?type=visualization&fields=title&per_page=5"
{% include copy.html %}
예제 응답
{
"page": 1,
"per_page": 5,
"total": 1,
"saved_objects": [
{
"type": "visualization",
"id": "test-viz",
"attributes": {
"title": "Sales by customer"
},
"references": [
{
"name": "kibanaSavedObjectMeta.searchSourceJSON.index",
"id": "ecommerce-test-pattern",
"type": "index-pattern"
}
],
"migrationVersion": {
"visualization": "7.10.0"
},
"updated_at": "2026-09-02T19:35:47.635Z",
"version": "WzI5LDdd",
"namespaces": ["default"],
"score": null
}
]
}
응답 본문 필드
다음 표에서는 응답 본문 필드를 보여줘요.
| Field | Data type | Description |
|---|---|---|
total |
Integer | 검색과 일치하는 저장된 객체의 수. |
saved_objects |
Array | 일치하는 저장된 객체. |
saved_objects.id |
String | 저장된 객체의 ID. 보고서 정의를 생성할 때 이 ID를 보고서 소스 ID로 사용하세요. |
saved_objects.type |
String | 저장된 객체의 유형. |
saved_objects.attributes |
Object | fields 매개변수로 필터링된 저장된 객체의 정의. |
saved_objects.references |
Array | 이 객체가 의존하는 다른 저장된 객체(예: 인덱스 패턴). |
saved_objects.updated_at |
String | 저장된 객체가 마지막으로 업데이트된 시간. |
저장된 객체 가져오기
Get Saved Object API는 유형과 ID로 단일 저장된 객체를 검색해요.
엔드포인트
GET {osd_host}:{port}/api/saved_objects/{type}/{id}
예제 요청
curl "http://localhost:5601/api/saved_objects/visualization/test-viz"
{% include copy.html %}
하나의 요청으로 여러 저장된 객체를 검색하려면 유형과 ID를 _bulk_get 엔드포인트로 보내세요:
curl -X POST "http://localhost:5601/api/saved_objects/_bulk_get" \
-H 'osd-xsrf: true' \
-H 'Content-Type: application/json' \
-d '[{"type": "visualization", "id": "test-viz", "fields": ["title"]}]'
{% include copy.html %}
저장된 객체 생성
Create Saved Object API는 저장된 객체를 생성해요. ID를 제공하여 객체의 ID를 제어하거나 생략하면 자동으로 생성돼요.
이 API로 객체를 생성하려면 해당 유형을 소유한 애플리케이션이 기대하는 속성이 필요하며, 이러한 속성은 공개 계약의 일부가 아니에요. 시각화나 대시보드를 수동으로 구성하는 대신 작동 중인 인스턴스에서 객체를 내보내고 다른 곳으로 가져오세요. {: .note}
엔드포인트
POST {osd_host}:{port}/api/saved_objects/{type}
POST {osd_host}:{port}/api/saved_objects/{type}/{id}
쿼리 매개변수
다음 표에서는 사용 가능한 쿼리 매개변수를 보여줘요. 모든 쿼리 매개변수는 선택 사항이에요.
| Parameter | Data type | Description |
|---|---|---|
overwrite |
Boolean | 지정된 ID를 이미 가진 객체를 대체할지 여부. 기본값은 false이며, ID가 사용 중이면 409 오류를 반환해요. |
요청 본문 필드
다음 표에서는 사용 가능한 요청 본문 필드를 보여줘요.
| Field | Data type | Description |
|---|---|---|
attributes |
Object | 객체 유형이 기대하는 형식의 객체 정의. 필수. |
references |
Array | 이 객체가 의존하는 다른 저장된 객체. 각각 name, type, id를 가져요. 선택 사항. |
예제 요청
curl -X POST "http://localhost:5601/api/saved_objects/visualization/sales-by-region" \
-H 'osd-xsrf: true' \
-H 'Content-Type: application/json' \
-d '{
"attributes": {
"title": "Sales by region",
"visState": "{\"type\":\"pie\"}",
"kibanaSavedObjectMeta": {"searchSourceJSON": "{}"}
},
"references": [
{
"name": "kibanaSavedObjectMeta.searchSourceJSON.index",
"type": "index-pattern",
"id": "ecommerce-test-pattern"
}
]
}'
{% include copy.html %}
예제 응답
{
"type": "visualization",
"id": "sales-by-region",
"attributes": {
"title": "Sales by region",
"visState": "{\"type\":\"pie\"}",
"kibanaSavedObjectMeta": {
"searchSourceJSON": "{}"
}
},
"references": [
{
"name": "kibanaSavedObjectMeta.searchSourceJSON.index",
"type": "index-pattern",
"id": "ecommerce-test-pattern"
}
],
"migrationVersion": {
"visualization": "7.10.0"
},
"updated_at": "2026-09-08T20:30:46.728Z",
"version": "WzcxLDhd",
"namespaces": ["default"]
}
하나의 요청으로 여러 객체를 생성하려면 _bulk_create 엔드포인트로 보내세요. 동일한 overwrite 매개변수를 허용해요:
curl -X POST "http://localhost:5601/api/saved_objects/_bulk_create" \
-H 'osd-xsrf: true' \
-H 'Content-Type: application/json' \
-d '[{"type": "visualization", "id": "sales-by-day", "attributes": {"title": "Sales by day", "visState": "{}", "kibanaSavedObjectMeta": {"searchSourceJSON": "{}"}}}]'
{% include copy.html %}
응답에는 생성된 객체가 saved_objects 배열에 포함돼요.
저장된 객체 업데이트
Update Saved Object API는 기존 저장된 객체의 속성을 업데이트해요. 보내는 필드는 객체의 해당 필드를 대체하고, 생략하는 필드는 변경되지 않은 상태로 남아요.
엔드포인트
PUT {osd_host}:{port}/api/saved_objects/{type}/{id}
요청 본문 필드
다음 표에서는 사용 가능한 요청 본문 필드를 보여줘요.
| Field | Data type | Description |
|---|---|---|
attributes |
Object | 업데이트할 객체의 필드. 필수. |
references |
Array | 대체할 참조. 이 필드를 보내면 객체의 전체 참조 목록이 대체돼요. 선택 사항. |
예제 요청
curl -X PUT "http://localhost:5601/api/saved_objects/visualization/sales-by-region" \
-H 'osd-xsrf: true' \
-H 'Content-Type: application/json' \
-d '{"attributes": {"title": "Sales by region and month"}}'
{% include copy.html %}
예제 응답
응답에는 전체 객체 대신 업데이트된 필드가 포함돼요:
{
"id": "sales-by-region",
"type": "visualization",
"updated_at": "2026-09-08T20:30:47.950Z",
"version": "WzczLDhd",
"namespaces": ["default"],
"attributes": {
"title": "Sales by region and month"
}
}
저장된 객체 삭제
Delete Saved Object API는 저장된 객체를 삭제해요. 시각화에서 사용하는 인덱스 패턴과 같이 다른 객체가 참조하는 객체를 삭제하면 해당 객체에 참조가 누락된 상태로 남게 돼요. 객체를 삭제하기 전에 대시보드 관리 > 저장된 객체의 관계 작업이나 Find Saved Objects API가 반환하는 references 필드를 사용하여 객체에 의존하는 항목을 확인하세요.
엔드포인트
DELETE {osd_host}:{port}/api/saved_objects/{type}/{id}
예제 요청
curl -X DELETE "http://localhost:5601/api/saved_objects/visualization/sales-by-day" \
-H 'osd-xsrf: true'
{% include copy.html %}
예제 응답
{}
저장된 객체 내보내기
Export Saved Objects API는 저장된 객체를 개행으로 구분된 JSON(NDJSON)으로 내보내요. 각 줄은 하나의 저장된 객체이며, 마지막 줄은 내보내기를 요약해요.
내보내기에는 요청을 처리하는 테넌트의 객체만 포함되므로 모든 테넌트를 백업하려면 테넌트당 하나의 요청이 필요해요. 자세한 내용은 테넌트 선택을 참조하세요.
엔드포인트
POST {osd_host}:{port}/api/saved_objects/_export
요청 본문 필드
다음 표에서는 사용 가능한 요청 본문 필드를 보여줘요.
| Field | Data type | Description |
|---|---|---|
type |
String or Array | 내보낼 저장된 객체의 유형(예: visualization). type 또는 objects 중 하나를 제공하세요. |
objects |
Array | 내보낼 특정 저장된 객체. 각각 type과 id를 가져요. type 또는 objects 중 하나를 제공하세요. |
includeReferencesDeep |
Boolean | 내보낸 객체가 의존하는 객체(예: 인덱스 패턴)도 내보낼지 여부. 해당 참조가 아직 없는 클러스터로 가져올 수 있도록 true로 설정하세요. 선택 사항. 기본값은 false. |
search |
String | 내보내기를 일치하는 객체로 제한하는 쿼리 문자열(예: Sales*). type과 함께 사용하세요. 선택 사항. |
excludeExportDetails |
Boolean | 출력 끝의 요약 줄을 생략할지 여부. 선택 사항. 기본값은 false. |
workspaces |
Array | 객체를 내보낼 워크스페이스. type과 함께 사용하세요. 선택 사항. |
워크스페이스 경로로 전송된 요청은 요청 본문에서 workspaces를 생략하더라도 해당 워크스페이스로 제한돼요:
POST {osd_host}:{port}/w/{workspace_id}/api/saved_objects/_export
{% include copy.html %}
동일한 경로 접두사는 가져온 객체를 워크스페이스와 연결하므로 Import Saved Objects API의 workspaces 쿼리 매개변수 대신 사용할 수 있어요.
워크스페이스 경로로 전송된 요청은 해당 워크스페이스의 객체와 어떤 워크스페이스에도 속하지 않는 객체를 내보낼 수 있어요. objects에서 다른 워크스페이스의 객체를 요청하면 다음 오류가 반환돼요:
{"statusCode": 400, "error": "Bad Request", "message": "Bad Request", "attributes": {"objects": [{"id": "test-viz", "type": "visualization", "attributes": {}, "references": [], "error": {"statusCode": 403, "error": "Forbidden", "message": "Saved object does not belong to the workspace"}}]}}
예제 요청
다음 요청은 하나의 시각화와 해당 시각화가 참조하는 인덱스 패턴을 내보내요:
curl -X POST "http://localhost:5601/api/saved_objects/_export" \
-H 'osd-xsrf: true' \
-H 'Content-Type: application/json' \
-d '{"objects": [{"type": "visualization", "id": "test-viz"}], "includeReferencesDeep": true}' \
-o export.ndjson
{% include copy.html %}
특정 시각화 대신 모든 시각화를 내보내려면 objects를 "type": "visualization"으로 바꾸세요.
예제 응답
NDJSON 출력의 마지막 줄은 내보내기를 요약해요:
{"exportedCount": 2, "missingRefCount": 0, "missingReferences": []}
모든 저장된 객체 내보내기
전체 OpenSearch Dashboards 인스턴스를 백업하려면 내보낼 유형을 나열하세요:
curl -X POST "http://localhost:5601/api/saved_objects/_export" \
-H 'osd-xsrf: true' \
-H 'Content-Type: application/json' \
-d '{"type": ["config", "index-pattern", "search", "visualization", "dashboard", "url", "query"], "includeReferencesDeep": true}' \
-o backup.ndjson
{% include copy.html %}
멀티 테넌시가 활성화된 경우 테넌트 선택에 설명된 대로 각 테넌트에 대해 요청을 반복하세요.
설치된 플러그인은 추가 유형을 등록하므로 한 인스턴스에서 사용 가능한 유형이 다른 인스턴스와 다를 수 있어요. 인스턴스에 포함된 유형을 보려면 대시보드 관리 > 저장된 객체의 유형 필터를 확인하세요. 내보낼 수 없는 유형을 요청하면 다음 오류가 반환돼요:
{"statusCode": 400, "error": "Bad Request", "message": "Trying to export non-exportable type(s): bogus-type"}
저장된 객체 가져오기
Import Saved Objects API는 Export Saved Objects API나 대시보드 관리 > 저장된 객체에서 내보낸 NDJSON 파일에서 저장된 객체를 가져와요. 파일을 file 필드에 멀티파트 폼 데이터로 보내요. 파일은 .ndjson 확장자를 사용해야 해요.
엔드포인트
POST {osd_host}:{port}/api/saved_objects/_import
쿼리 매개변수
다음 표는 사용 가능한 쿼리 매개변수를 보여줘요. 모든 쿼리 매개변수는 선택 사항이에요.
| 매개변수 | 데이터 유형 | 설명 |
|---|---|---|
overwrite |
Boolean | 이미 존재하는 저장된 객체를 교체할지 여부예요. 기본값은 false이며, 충돌하는 객체를 가져오지 않고 오류로 보고해요. createNewCopies와 함께 사용할 수 없어요. |
createNewCopies |
Boolean | 기존 객체를 유지하면서 새 ID로 객체를 가져올지 여부예요. overwrite와 함께 사용할 수 없어요. |
dataSourceId |
String | 여러 데이터 소스가 활성화된 경우 가져온 객체를 연결할 데이터 소스의 ID예요. |
workspaces |
String 또는 Array | 객체를 가져올 워크스페이스예요. |
예제 요청
curl -X POST "http://localhost:5601/api/saved_objects/_import?overwrite=true" \
-H 'osd-xsrf: true' \
--form [email protected]
{% include copy.html %}
예제 응답
{
"successCount": 2,
"success": true,
"successResults": [
{
"type": "index-pattern",
"id": "ecommerce-test-pattern",
"meta": {
"title": "ecommerce-test",
"icon": "indexPatternApp"
},
"overwrite": true
},
{
"type": "visualization",
"id": "test-viz",
"meta": {
"title": "Sales by customer",
"icon": "visualizeApp"
},
"overwrite": true
}
]
}
가져오기 오류
가져오기는 일부 객체에 실패하고 다른 객체에는 성공할 수 있어요. 객체가 실패하면 success는 false가 되고 각 실패는 원인을 식별하는 error.type 필드와 함께 errors에 나타나요.
{
"successCount": 0,
"success": false,
"errors": [
{
"id": "orphan-viz",
"type": "visualization",
"title": "Orphan",
"meta": {
"title": "Orphan",
"icon": "visualizeApp"
},
"error": {
"type": "missing_references",
"references": [
{
"type": "index-pattern",
"id": "does-not-exist"
}
]
}
}
]
}
다음 표는 가장 일반적인 오류 유형을 보여줘요.
| 오류 유형 | 원인 | 해결 방법 |
|---|---|---|
missing_references |
객체가 가져오기에 포함되지 않고 대상 인스턴스에 없는 객체(예: 인덱스 패턴)를 참조해요. | includeReferencesDeep을 true로 설정하여 원본 객체를 다시 내보내거나, 누락된 객체를 만들거나, 가져오기 오류 해결 API를 사용하여 참조를 무시해요. |
conflict |
동일한 유형과 ID를 가진 객체가 이미 존재해요. | overwrite=true 또는 createNewCopies=true로 다시 시도해요. |
unsupported_type |
설치된 플러그인이 객체의 유형을 등록하지 않았어요. | 해당 유형을 제공하는 플러그인을 설치하거나 파일에서 객체를 제거해요. |
객체 가져오기에 실패해도 응답이 200 상태 코드를 반환하기 때문에, 스크립트로 가져올 때는 상태 코드 대신 success 필드를 확인해야 해요.
{: .note}
가져오기 오류 해결
가져오기 오류 해결 API는 특정 객체 덮어쓰기나 누락된 참조 무시와 같은 객체별 지침으로 실패한 가져오기를 다시 시도해요. 가져오기에서 사용한 것과 동일한 NDJSON 파일과 다시 시도할 객체를 나열하는 retries 필드를 함께 보내요.
엔드포인트
POST {osd_host}:{port}/api/saved_objects/_resolve_import_errors
쿼리 매개변수
다음 표는 사용 가능한 쿼리 매개변수를 보여줘요. 모든 쿼리 매개변수는 선택 사항이에요.
| 매개변수 | 데이터 유형 | 설명 |
|---|---|---|
createNewCopies |
Boolean | 다시 시도하는 객체를 새 ID로 가져올지 여부예요. 기본값은 false예요. |
dataSourceId |
String | 가져온 객체를 연결할 데이터 소스의 ID예요. |
workspaces |
String 또는 Array | 객체를 가져올 워크스페이스예요. |
요청 본문 필드
다음 필드를 멀티파트 폼 데이터로 보내요.
| 필드 | 데이터 유형 | 설명 |
|---|---|---|
file |
File | 실패한 가져오기에서 사용한 NDJSON 파일이에요. 필수예요. |
retries |
Array | 다시 시도할 객체예요. 필수예요. |
retries.type |
String | 다시 시도할 객체의 유형이에요. 필수예요. |
retries.id |
String | 다시 시도할 객체의 ID예요. 필수예요. |
retries.overwrite |
Boolean | 기존 객체를 교체할지 여부예요. 기본값은 false예요. |
retries.destinationId |
String | 가져온 객체에 할당할 ID예요. |
retries.replaceReferences |
Array | 각각 type, from ID, to ID를 가진 참조를 다시 가리킬 대상이에요. |
retries.ignoreMissingReferences |
Boolean | 참조가 누락되어도 객체를 가져올지 여부예요. |
예제 요청
다음 요청은 인덱스 패턴이 누락된 시각화를 참조 없이 가져오도록 다시 시도해요.
curl -X POST "http://localhost:5601/api/saved_objects/_resolve_import_errors" \
-H 'osd-xsrf: true' \
--form [email protected] \
--form 'retries=[{"type": "visualization", "id": "orphan-viz", "ignoreMissingReferences": true}]'
{% include copy.html %}
예제 응답
{
"successCount": 1,
"success": true,
"successResults": [
{
"type": "visualization",
"id": "orphan-viz",
"meta": {
"title": "Orphan",
"icon": "visualizeApp"
}
}
]
}
제한 사항
다음 제한 및 주의 사항이 저장된 객체 API에 적용돼요.
파일 형식
가져오기 엔드포인트는 .ndjson 확장자를 가진 파일만 허용해요. 다른 확장자를 가진 파일은 {"statusCode": 400, "error": "Bad Request", "message": "Invalid file extension .json"}을 반환해요. 레거시 /api/opensearch-dashboards/dashboards/export 엔드포인트는 NDJSON 대신 단일 JSON 문서를 생성하므로 해당 출력을 _import로 가져올 수 없어요. _export를 사용하거나 대시보드 관리 > 저장된 객체에서 객체를 내보내고 결과 NDJSON 파일을 가져와요.
요청 크기
가져오기 엔드포인트는 savedObjects.maxImportPayloadBytes 설정에 의해 제한되며, 기본값은 26214400(25MB)예요. server.maxPayloadBytes 설정(기본값 1048576(1MB))은 다른 OpenSearch Dashboards 경로에 적용되며 가져오기 제한을 높이거나 낮추지 않아요.
25MB보다 작은 파일에 대해 413 Request Entity Too Large 응답이 발생하는 경우, 일반적으로 OpenSearch Dashboards 자체보다는 OpenSearch Dashboards 앞의 프록시에서 발생해요. NGINX의 client_max_body_size 또는 NGINX Ingress 컨트롤러의 proxy-body-size와 같은 프록시의 본문 크기 제한을 높여요.
객체 개수
단일 내보내기 또는 가져오기는 savedObjects.maxImportExportSize 설정에 의해 10000개의 객체로 제한돼요. 더 큰 전송은 유형이나 검색어별로 분할해요.
충돌하는 매개변수
overwrite와 createNewCopies 매개변수는 함께 사용할 수 없어요. 둘 다 보내면 다음 오류가 반환돼요.
{"statusCode": 400, "error": "Bad Request", "message": "[request query]: cannot use [overwrite] with [createNewCopies]"}
버전 호환성
NDJSON 파일을 내보낸 인스턴스와 동일한 버전의 OpenSearch Dashboards를 실행하는 인스턴스나 이후 버전으로 가져와요. 객체는 가져올 때 앞으로 마이그레이션되지만 뒤로는 마이그레이션할 수 없어요. 이후 버전에서 내보낸 객체는 다음 오류와 유사한 오류와 함께 실패해요.
Document "test-viz" has property "visualization" which belongs to a more recent version of OpenSearch Dashboards [7.10.0]. The last known version is [7.9.3]