Get database classification

List the category names in the database. The “category” here corresponds to the Schema in some databases; only connectors with list_schemas in the capability interface set to true need to perform this step.

POST https://moi.matrixorigin.cn/newmoi/connectors/structured/v1/source/schemas

Preparation before calling

First query the connector database and prepare the returned database name; confirm that both enabled and capabilities.list_schemas of the entry in the browsable connector interface are true. Connectors that do not support this classification level skip this page and query the object directly.

The example below uses:

  • $AI_STUDIO_API_KEY: The actual personal access token, passed through the X-API-Key Header.

  • $WORKSPACE_ID: The workspace ID to be queried, passed through the X-Workspace-ID Header.

  • $CONNECTOR_ID and $SOURCE_TYPE: View the connector ID and source type returned by the browsable connector interface.

  • $DATABASE: Query the data.databases[].name returned by the database interface.

Request example

curl -X POST "https://moi.matrixorigin.cn/newmoi/connectors/structured/v1/source/schemas" \
  -H "X-API-Key: $AI_STUDIO_API_KEY" \
  -H "X-Workspace-ID: $WORKSPACE_ID" \
  -H 'Content-Type: application/json' \
  -d "{
    \"connector_id\": \"$CONNECTOR_ID\",
    \"source_type\": \"$SOURCE_TYPE\",
    \"database\": \"$DATABASE\"
  }"

Request body

Field

Type

Is it required

Description

connector_id

string

Yes

The saved connector ID.

source_type

string

Yes

A structured source type.

database

string

Yes

The database name returned by the database discovery interface.

[] after a type denotes an array. [] in a field path denotes each item in an array.

Successful response

Returns 200 on success.

{
  "code": "OK",
  "msg": "OK",
  "data": {
    "schemas": [
      {
        "name": "public",
        "display_name": "public"
      }
    ],
    "endpoint_results": []
  }
}

The response fields are as follows.

Field

Type

Description

code

string

OK on success.

msg

string

OK on success.

data.schemas

object[]

Database classification; sources that do not support this level may return an empty array.

data.schemas[].name

string

Category name, this value will be used in the schema of subsequent query connector table.

data.schemas[].display_name

string

Classification name for display.

data.endpoint_results

JSON[]

Currently returns an empty array.

[] after a type means an array. For example, string[] is an array of strings.

Error response

{
  "code": "ErrParamInvalid",
  "msg": "invalid parameter",
  "data": null
}

Common HTTP errors

HTTP status code

error code

Common causes

Recommended actions

400

ErrParamInvalid

Field is missing, or source_type does not match the connector.

Use the connector_id and source_type of the same capability record, and pass in the database name from the previous step.

501

STRUCTURED_CONNECTOR_SERVICE_UNAVAILABLE

The current service does not provide structured data source discovery.

This group of interfaces is temporarily unavailable.

200

STRUCTURED_LOAD_FEATURE_DISABLED

The structured data source feature is not enabled in the current workspace.

Check if this feature is available for this workspace.

200

STRUCTURED_LOAD_MONGODB_DISABLED

MongoDB structured discovery is not enabled for the current workspace.

Do not continue calling the MongoDB connector’s discovery interface.

500

ErrServer

The service failed to list database categories.

Keep the desensitization error message and try again.

Follow-up operations

After selecting the category, bring the database and category identification query connector table.

Last updated on