데이터스토어
데이터 스토어는 효율적인 데이터 관리와 접근을 가능하게 하는 중앙화된 저장소입니다. 여러 사용자와 어플리케이션들이 데이터를 안전하게 저장, 검색, 업데이트, 그리고 삭제할 수 있습니다
주요 기능
데이터 저장: 다양한 형태와 구조의 데이터를 안전하게 저장합니다.
데이터 검색: 복잡한 쿼리와 필터 옵션을 사용하여 원하는 데이터를 빠르게 찾을 수 있습니다.
데이터 업데이트: 실시간으로 데이터를 업데이트하고, 변경 사항을 즉시 반영합니다.
데이터 삭제: 사용자가 지정한 규칙에 따라 데이터를 안전하게 삭제합니다.
특징
확장성: 데이터의 규모가 커져도 성능 저하 없이 처리 가능합니다.
보안성: 다양한 보안 옵션과 권한 설정이 가능합니다.
접근성: API, SDK 등 다양한 방법으로 데이터에 접근할 수 있습니다.
유연성: 다양한 데이터 형태와 구조를 지원합니다.
데이터 저장
새로운 데이터를 추가합니다. datastoreId 는
데이터 저장 제한
maximum allowed size (max 100kb) : 최대 100kb 만 한 Row 에 저장이 가능합니다.
maximum allowed fields (max 30) : JSON 최대 30개까지의 필드 저장이 가능합니다.
maximum allowed depth (max 5) : 총 5 depth 까지만 저장이 가능합니다.
Request
- Method : POST
- URI : https://[url]/v1/datastores/:datastoreId
POST
url : https://[url]/v1/datastore/:datastoreId
Header : 'content-type: application/json'
Header 'x-api-key: 86dcgffae0xxxxxxxxxxxxxx'
Header : 'x-project-id: ec8231b2-6b20-4ad1-xxxx-xxxxxxxxx'
data:
{
"memberId": "80803902-8b83-4860-b8a6-xxxxxxxx",
"title" : "Title",
"content" : "Content",
"status" : 1,
"image":[
"image_001.jpg",
"image_002.jpg"
],
"date" : "2023-09-01 11:00:00"
}
| Header | Type | Required | Description |
|---|---|---|---|
| X-API-KEY | String | O | 발급하는 인증 키 |
| X-PROJECT-ID | String | O | 대시보드 프로젝트 아이디 |
body 에 JSON 형태로 데이터를 저장하실 수 있습니다. memberId 와 같이 회원 아이디에 같이 저장할 경우 추후 해당 회원의 정보만을 가져올 수 있습니다.
Response
성공
{
"id": "5fe78d95-6186-4128-b52a-28759cxxxxxx"
}
| Attribute | Type | Description |
|---|---|---|
| id | String | 저장된 데이터스토어 고유 ID |
실패
{
"status": -1,
"message": "메시지"
}
| Attribute | Type | Description |
|---|---|---|
| code | Int | 결과 값 (1: 성공, 실패 시 Error code 참고) |
| error | String | 오류 내용 |
데이터 업데이트 & 추가
기존 데이터를 업데이트 하거나 추가할 수 있습니다.
Request
- Method : PUT
- URI : https://[plugin_urt]/v1/datastores/:datastoreId/:id
POST
url : https://[url]/v1/datastores/:datastoreId/:id
Header : 'content-type: application/json'
Header 'x-api-key: 86dcgffae0xxxxxxxxxxxxxx'
Header : 'x-project-id: ec8231b2-6b20-4ad1-xxxx-xxxxxxxxx'
data:
{
"memberId": "80803902-8b83-4860-b8a6-xxxxxxxx",
"title" : "Title",
"content" : "Content",
"status" : 1,
"image":[
"image_001.jpg",
"image_002.jpg"
],
"date" : "2023-09-01 11:00:00"
}
| Header | Type | Required | Description |
|---|---|---|---|
| X-API-KEY | String | O | GamePot에서 발급하는 인증 키 |
| X-PROJECT-ID | String | O | 대시보드 프로젝트 아이디 |
| Attribute | Type | Required | Description |
|---|---|---|---|
| datastoreId | String | O | 저장하고자 하는 데이터 스토어ID |
| id | String | O | 업데이트 하고자 하는ID |
Response
성공
{
"id": "5fe78d95-6186-4128-b52a-28759cxxxxxx"
}
| Attribute | Type | Description |
|---|---|---|
| id | String | 저장된 데이터스토어 고유 ID |
실패
{
"status": -1,
"message": "메시지"
}
| Attribute | Type | Description |
|---|---|---|
| code | Int | 결과 값 (1: 성공, 실패 시 Error code 참고) |
| error | String | 오류 내용 |
데이터 삭제
저장된 데이터를 삭제합니다.
Request
- Method : DELETE
- URI : https://[url]/v1/datastores/:datastoreId/:id
DELETE
url : https://[url]/v1/datastores/:datastoreId/:id
Header : 'content-type: application/json'
Header 'x-api-key: 86dcgffae0xxxxxxxxxxxxxx'
Header : 'x-project-id: ec8231b2-6b20-4ad1-xxxx-xxxxxxxxx'
data:
{
}
| Header | Type | Required | Description |
|---|---|---|---|
| X-API-KEY | String | O | GamePot에서 발급하는 인증 키 |
| X-PROJECT-ID | String | O | 대시보드 프로젝트 아이디 |
Response
성공
{
"id": "5fe78d95-6186-4128-b52a-xxxxxxxxx"
}
실패
{
"status": -1,
"message": "메시지"
}
| Attribute | Type | Description |
|---|---|---|
| code | Int | 결과값 (1: 성공, 실패 시 Error code 참고) |
| error | String | 오류 내용 |
데이터스토어 목록 가져오기
저장된 데이터스토어 목록을 가져온다.
Request
- Method : GET
- URI : https://[url]/v1/datastores/:datastoreId?filter={"_id":"64f8f8edf29d42d88d7f3ea1"}&option=&sort=
POST
url : https://[url]/v1/datastores/:datastoreId?filter={"_id":"64f8f8edf29d42d88d7f3ea1"}&option=&sort
Header 'x-api-key: 86dcgffae0xxxxxxxxxxxxxx'
Header : 'x-project-id: ec8231b2-6b20-4ad1-xxxx-xxxxxxxxx'
| Header | Type | Required | Description |
|---|---|---|---|
| X-API-KEY | String | O | GamePot에서 발급하는 인증 키 |
| X-PROJECT-ID | String | O | 대시보드 프로젝트 아이디 |
| Attribute | Type | Required | Description |
|---|---|---|---|
| filter | String | O | 기본으로는 {} 입력하여 사용 부탁드립니다. 필터는 일부 필드에 대해서 검색이 가능합니다. |
| sort | String | X | 정렬 하고자 하는 필드의 필터를 정의 합니다. ex) 내림차순 {"createdAt":"-1"} / 오름차순 {"createdAt":"1"} |
| option | String | X | 옵션이 존재할 경우 아래를 참고하세요. ex) {"offset":0,"per_page":20} |
Response
성공
"totalCount": 1,
"data": [
{
"memberId": "80803902-8b83-4860-b8a6-xxxxxxxx",
"title" : "Title",
"content" : "Content",
"status" : 1,
"image":[
"image_001.jpg",
"image_002.jpg"
],
"date" : "2023-09-01 11:00:00"
},
{
"memberId": "80803902-8b83-4860-b8a6-xxxxxxxx",
"title" : "Title",
"content" : "Content",
"status" : 1,
"image":[
"image_001.jpg",
"image_002.jpg"
],
"date" : "2023-09-01 11:00:00"
}
]
}
실패
{
"status": -1,
"message": " 메시지"
}
| Attribute | Type | Description |
|---|---|---|
| code | Int | 결과 값 (1: 성공, 실패 시 Error code 참고) |
| error | String | 오류 내용 |