# Graviti Open API

## Api Overview <a href="#api-overview" id="api-overview"></a>

### Actions on Datasets <a href="#actions-on-datasets" id="actions-on-datasets"></a>

| API                                                                                                                                                                                                     | Description                                      |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------ |
| [ListAuthStorageConfig](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#listauthstorageconfig)                                                                                | Acquire the list of authentication configuration |
| [CreateDataset](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#createdataset)                                                                                                | Create a dataset                                 |
| [DeleteDataset](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#listauthstorageconfighttps://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#deletedataset) | Delete a dataset                                 |
| [updateDataset](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#updatedataset)                                                                                                | Update a dataset                                 |
| [ListDataset](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#listdataset)                                                                                                    | List datasets                                    |
| [GetDataset](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#getdataset)                                                                                                      | Get a dataset                                    |
| [CreateBranch](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#createbranch)                                                                                                  | Create a branch                                  |
| [DeleteBranch](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#deletebranch)                                                                                                  | Delete a branch                                  |
| [ListBranch](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#listbranch)                                                                                                      | List branches                                    |
| [CreateDraft](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#createdraft)                                                                                                    | Create a draft                                   |
| [ListDraft](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#listdraft)                                                                                                        | List drafts                                      |
| [CommitDataset](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#commitdataset)                                                                                                | Commit a dataset                                 |
| [ListCommit](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#listcommit)                                                                                                      | List commits                                     |
| [CreateTag](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#createtag)                                                                                                        | Create a tag                                     |
| [DeleteTag](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#deletetag)                                                                                                        | Delete a tag                                     |
| [ListTag](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#listtag)                                                                                                            | List tags                                        |
| [UploadNote](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#updatenote)                                                                                                      | Upload a dataset note                            |
| [GetNote](https://docs.graviti.com/dev-doc/tools/graviti-open-api/dataset-operation#getnote)                                                                                                            | Get the note of a dataset                        |

### Actions on Data <a href="#actions-on-data" id="actions-on-data"></a>

| API                                                                                                                                                                                       | Description                            |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------- |
| [GetPolicy](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#getpolicy)                                                                                             | Acquire data upload token              |
| [PutCallback](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#putcallback)                                                                                         | Put callback                           |
| [MultiPutCallback](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#multiputcallback)                                                                               | Batch callback                         |
| [CreateSegment](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#createsegment)                                                                                     | Create a segment                       |
| [DeleteSegment](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#deletesegment)                                                                                     | Delete a segment                       |
| [ListSegment](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#listsegment)                                                                                         | List segments                          |
| [UploadLabelCatalog](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#uploadlabelcatalog)                                                                           | Upload label catalog                   |
| [GetLabelCatalog](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#getlabelcatalog)                                                                                 | Acquire label catalog                  |
| [UploadSensor](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#getlabelcataloghttps://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#uploadsensor) | Create a sensor                        |
| [DeleteSensor](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#deletesensor)                                                                                       | Delete a sensor                        |
| [ListSensor](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#listsensor)                                                                                           | List sensors                           |
| [ListData](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#listdata)                                                                                               | List data                              |
| [ListDataUri](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#listdatauri)                                                                                         | Acquire data URL                       |
| [UploadLabel](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#uploadlabel)                                                                                         | Upload label                           |
| [ListLabel](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#listlabel)                                                                                             | Acquire annotation labels of a dataset |
| [DeleteData](https://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#listlabelhttps://docs.graviti.com/dev-doc/tools/graviti-open-api/data-operation#deletedata)           | Delete data                            |

## Common <a href="#common" id="common"></a>

### Common Parameters <a href="#common-parameters" id="common-parameters"></a>

Some common parameters in the doc

| Name            | Descriptions                                                                              | Value                                                  |
| --------------- | ----------------------------------------------------------------------------------------- | ------------------------------------------------------ |
| service         | Prefix of API request address                                                             | <https://gas.graviti.com/gatewayv2/tensorbay-open-api> |
| your\_accesskey | Get the AccessKey at [GAS Help Center](https://docs.graviti.com/dev-doc/tools/api-center) |                                                        |

This module mainly illustrates HTTP common request headers and common response headers.

| Name         | Type   | Descriptions                                                                  |
| ------------ | ------ | ----------------------------------------------------------------------------- |
| Content-Type | string | HTTP request content type defined in RFC2616. Default value: application/json |
| X-Token      | string | The AccessKey obtained by the user                                            |

| Name         | Type   | Descriptions                                                                                                                                                                                  |
| ------------ | ------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| X-Request-Id | string | X-Request-Id is created by Graviti and is the only UUID that identifies this response. If you encounter any difficulties when using this service, please contact Graviti. Default value: null |

### Error code description <a href="#error-code-description" id="error-code-description"></a>

#### Error Code Return Type <a href="#error-code-return-type" id="error-code-return-type"></a>

```
{
  "code": "error_code",
  "message": "***"
}
```

The server may return any of the following type of errors when your request generates an error. For example, the 404 error code occurs when acquiring a dataset. 。

```
# Response status
HttpStatus 404
#  Response result
{
    "code": "ResourceNotExist", 
    "message": "dataset not exist!"
}
```

#### Error Code <a href="#error-code" id="error-code"></a>

| Code                 | Description                                             |
| -------------------- | ------------------------------------------------------- |
| AccessDenied         | Request is denied and lack of authorized access.        |
| InvalidParamsValue   | Invalid parameter value, e.g., invalid parameter format |
| NameConflict         | Name is conflicted                                      |
| RequestParamsMissing | The required parameters are missing                     |
| ResourceNotExist     | The resource does not exist when requested              |
| SystemError          | System error                                            |

#### Fuzzy Query <a href="#fuzzy-query" id="fuzzy-query"></a>

**For API that supports fuzzy query, please follow these rules:**

1. Support MySQL wildcard query, such as %, \_, and other wildcard characters.
2. If there is no MySQL wildcard, the default is %{fuzzy query}% with fuzzy matching before and after.
3. If the query field contains MySQL wildcard, automatic fuzzy matching is disabled.
4. If you want the wildcard to be treated only as a normal string, you need to transcribe it, and degrade it to non-fuzzy matching. If you still need fuzzy matching, you need to construct the wildcard query manually.

**For example： result： graviti\_1, great\_graviti\_1, graviti%1**

1. name = graviti, return graviti\_1, great\_graviti\_1, graviti%1
2. name = graviti\\\_%, return graviti\_1, great\_graviti\_1
3. name = graviti\\\_, return none
4. name = graviti%, return graviti\_1，graviti%1
5. name = graviti\\%%, return graviti%1
6. name = graviti\\%, return none
7. name = graviti\\%1, return graviti%1
8. name = %graviti, return none


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.graviti.com/dev-doc/tools/api-center.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
