> For the complete documentation index, see [llms.txt](https://docs-en.kivicube.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs-en.kivicube.com/ar-open-service/image-cloud-recognition-api.md).

# Image Cloud Recognition API

## 1. Summary&#x20;

Cloud Tracking, is to process the image detection and recognition capabilities through the cloud server, and obtain the processing result and feedback by the server. Actually tested 10 million image databases, in the case of a good network, the average recognition processing time is about 300ms. The  number of the images is fewer, the speed is quicker.

## 2. Platform Support

App\small program\WebAR can be accessed

small program access reference: <https://www.yuque.com/kivicube/manual/arcloud>

## 3. Access Method

Please connect to buy:&#x20;

![](/files/-MEzT_IlmaiPhJpV_PCD)

## 4. Interface Document

**Result Code**

| Result Code | Result Message                  |
| ----------- | ------------------------------- |
| 0           | success                         |
| 20001       | user secret key not correct     |
| 20003       | channel not exists              |
| 20004       | not your channel                |
| 20005       | multipart stream request needed |
| 20006       | file size limit exceeded        |
| 20007       | file format not recognized      |
| 20010       | image id not valid              |
| 20012       | too many images                 |
| 20013       | image feature insufficient      |
| 20014       | image identifier not exists     |
| 20015       | system busy                     |
| 20016       | image name taken                |

**AddImage**

URL:[https://rest.xxxx.com/AddImage](https://rest.darseek.com/AddImage)

**Request post field:**

| Tag        | M/O | Description                                                           |
| ---------- | --- | --------------------------------------------------------------------- |
| username   | M   | user key                                                              |
| secretkey  | M   | user secret key                                                       |
| channel    | M   | channel name                                                          |
| identifier | M   | user defined ID for each image (^\[A-Za-z0-9@\_.]+$   3 to 50 digit ) |
| metadata   | O   | user defined JSON string                                              |
| image      | M   | image file (.jpg, .jpeg, .png)                                        |

**Response json data:**

| Tag        | M/O | Description                                                             |
| ---------- | --- | ----------------------------------------------------------------------- |
| returncode | M   | 0, 20001, 20003, 20004, 20005, 20006, 20007, 20010, 20012, 20013, 20016 |
| level      | O   | 1 to 5 if the level is high, means the image can be detected easily     |

**Remove Image**

URL:[https://rest.xxxx.com/RemoveImage](https://rest.darseek.com/RemoveImage)

**Request post field:**

| Tag        | M/O | Description                    |
| ---------- | --- | ------------------------------ |
| username   | M   | user key                       |
| secretkey  | M   | user secret key                |
| channel    | M   | channel name                   |
| identifier | M   | user defined ID for each image |

**Response json data:**

| Tag        | M/O | Description            |
| ---------- | --- | ---------------------- |
| returncode | M   | 0, 20001, 20003, 20004 |

**Get Images**    //order by image identifier

URL:[https://rest.xxxx.com/GetImages](https://rest.darseek.com/GetImages)

**Request post field:**

| Tag       | M/O | Description     |
| --------- | --- | --------------- |
| username  | M   | user key        |
| secretkey | M   | user secret key |
| channel   | M   | channel name    |
| position  | O   | start index     |

**Response json data:**

| Tag        | M/O | Description                    |
| ---------- | --- | ------------------------------ |
| returncode | M   | 0, 20001, 20003, 20004         |
| totalcount | O   | total count                    |
| images     | O   | images                         |
| identifier | O   | user defined ID for each image |
| metadata   | O   | user defined JSON string       |
| matchratio | O   | match ratio                    |

**GetImage**

&#x20;  URL: [https://rest.xxxx.com/GetImage](https://rest.darseek.com/GetImage)

**Request post field:**

| Tag        | M/O | Description                    |
| ---------- | --- | ------------------------------ |
| channel    | M   | channel name                   |
| identifier | M   | user defined ID for each image |

**Response json data:**

| Tag        | M/O | Description                   |
| ---------- | --- | ----------------------------- |
| returncode | M   | 0, 20001, 20003, 20004, 20014 |

**Statistics**

&#x20;  URL: [https://rest.xxxx.com/Statistics](https://rest.darseek.com/Statistics)

**Request post field:**

| Tag        | M/O | Description                             |
| ---------- | --- | --------------------------------------- |
| username   | M   | user key                                |
| secretkey  | M   | user secret key                         |
| startdate  | M   | start date (yyyy or yyyyMM or yyyyMMdd) |
| enddate    | M   | end date  (yyyy or yyyyMM or yyyyMMdd)  |
| channel    | O   | channel name                            |
| identifier | O   | image identifier                        |

**Response json data:**

| Tag        | M/O | Description                                              |
| ---------- | --- | -------------------------------------------------------- |
| returncode | M   | 0, 20001, 20003, 20004, 20014                            |
| username   | O   | username                                                 |
| channel    | O   | channel name                                             |
| records    | O   | records                                                  |
| date       | O   | date (yyyyMMdd)                                          |
| channel    | O   | if channel not specified, records will show channel data |
| identifier | O   | if channel specified, records will show identifier data  |
| count      | O   | match count                                              |

**FindImage**

&#x20;  URL: [https://rest.xxxx.com/FindImage](https://admin.darseek.com/UserInfo)

**Request post field:**

| Tag       | M/O | Description                    |
| --------- | --- | ------------------------------ |
| username  | M   | user key                       |
| secretkey | M   | user secret key                |
| image     | M   | image file (.jpg, .jpeg, .png) |
| channel   | O   | channel name                   |

**Response json data:**

| Tag        | M/O | Description                                  |
| ---------- | --- | -------------------------------------------- |
| returncode | M   | 0, 20001, 20003, 20004, 20006, 20007, 20013  |
| identifier | O   | if image matched, will return its identifier |
| level      | O   | if channel not specified, this tag will show |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs-en.kivicube.com/ar-open-service/image-cloud-recognition-api.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
