自主接入

开发者可以自己编写 API 客户端实现,也可以下载 SDK 直接使用。

假设您已经本地安装部署,并发布了 Logs API,接口请求地址如下:

请求方法

请求地址

说明

管理端

GET

http://127.0.0.1:3030

后台管理登录地址

认证服务器

GET

http://127.0.0.1:3030/oauth/token

换取令牌接口

认证服务器

GET

http://127.0.0.1:3030/oauth/authorize

用户认证接口

API Server

POST

http://127.0.0.1:3080/api/v1/Logs

新增记录

API Server

GET

http://127.0.0.1:3080/api/v1/Logs

分页查询

API Server

PATCH

http://127.0.0.1:3080/api/v1/Logs/{id}

部分字段更新

API Server

GET

http://127.0.0.1:3080/api/v1/Logs/{id}

根据ID查询记录

API Server

DELETE

http://127.0.0.1:3080/api/v1/Logs/{id}

根据ID删除记录

获取 API 接口访问令牌

API 认证服务是基于 OAuth2.0 实现,默认支持 client credentialsimplicit 授权方式,客户端可以按需选择合适的授权方式获取授权

获取 API 访问令牌(client credentials)

请求地址

POST http://127.0.0.1:3030/oauth/token

请求参数

名称

类型

是否必填

说明

grant_type

string

必须

固定值:client_credentials

client_id

string

必须

注册客户端时拿到的客户端ID

client_secret

string

必须

注册客户端时拿到的客户端密钥

响应参数

名称

类型

是否必填

说明

access_token

string

必须

访问 API Server 的令牌

expires_in

string

必须

过期时间

refresh_token

string

可选

使用 refresh_token 更新 access_token

token_type

string

可选

API Server 令牌认证方式,默认为Bearer

获取 API 访问令牌( implicit )

请求地址

http://127.0.0.1:3030/oauth/authorize

请求参数

名称

类型

是否必填

说明

grant_type

string

必须

固定值:implicit

client_id

string

必须

注册客户端时拿到的客户端ID

response_type

string

必须

固定值:token

scope

string

可选

本次请求认证要访问的接口

redirect_uri

string

可选

授权后的跳转地址

响应参数

名称

类型

是否必填

说明

access_token

string

必须

访问 API Server 的令牌

expires_in

string

必须

过期时间

refresh_token

string

可选

使用 refresh_token 更新 access_token

token_type

string

可选

API Server 令牌认证方式,默认为Bearer

携带访问令牌调用API

客户端每次调用发布的接口都需要提供 access_token 完成鉴权认证。

发送请求时,可以将 access_token 放在请求头、请求体或 URL 参数中;也可以使用 Bearer 方式将 access_token 添加认证请求头信息中,无论使用那种方式,API Server 都会自动获取并完成权限验证。

ApiKey 方式

request headerrequest bodyrequest url 中添加 access_token 参数:

access_token: eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImI1ZmQwMWM1OTk2YTYzNDMyMGViZjUzY2JhYjVmYWRmIiwidXNlcl9pZCI6IjVjZTBiYzUxMzNmZDI5NGI2YTI1YTYzYyIsImNyZWF0ZWRBdCI6MTU1ODM2ODg4NDk0NCwicm9sZXMiOlsiNWNlMGJjNTEzM2ZkMjk0YjZhMjVhNjNjIl0sImV4cGlyZWRhdGUiOjE1NTgzNzA2ODQ5NDR9.fKSCRs2pCNdYYVCYjM-W1OfmQO057EKKOTO1n89Q998

Bearer 方式

request header 中添加认证参数:

Authorization: bearer eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImI1ZmQwMWM1OTk2YTYzNDMyMGViZjUzY2JhYjVmYWRmIiwidXNlcl9pZCI6IjVjZTBiYzUxMzNmZDI5NGI2YTI1YTYzYyIsImNyZWF0ZWRBdCI6MTU1ODM2ODg4NDk0NCwicm9sZXMiOlsiNWNlMGJjNTEzM2ZkMjk0YjZhMjVhNjNjIl0sImV4cGlyZWRhdGUiOjE1NTgzNzA2ODQ5NDR9.fKSCRs2pCNdYYVCYjM-W1OfmQO057EKKOTO1n89Q998

操作

新增记录

请求地址

POST http://127.0.0.1:3080/api/v1/Logs

请求参数(Content-Type: application/json)

{
"date": "2019-07-18T02:10:45.551Z",
"level": "INFO",
"loggerName": "com.tapdata.connector.JDBCConnector",
"message": "connect to data source successful.",
"threadId": 9127,
"threadName": "Thread-103"
}

响应参数(Content-Type: application/json)

{
"_id": "5d2fd6b98749d020d73903ed",
"date": "2019-07-18T02:10:45.551Z",
"level": "INFO",
"loggerName": "com.tapdata.connector.JDBCConnector",
"message": "connect to data source successful.",
"threadId": 9127,
"threadName": "Thread-103"
}

根据ID更新记录

请求地址

PATCH http://127.0.0.1:3080/api/v1/Logs/5d2fd6b98749d020d73903ed

请求参数(Content-Type: application/json)

{
"_id": "5d2fd6b98749d020d73903ed",
"date": "2019-07-18T02:10:45.551Z",
"level": "ERROR",
"loggerName": "com.tapdata.connector.JDBCConnector",
"message": "connect to data source fail.",
"threadId": 9127,
"threadName": "Thread-103"
}

响应

响应状态码 204,更新成功。

根据ID删除记录

请求地址

DELETE http://127.0.0.1:3080/api/v1/Logs/5d2fd6b98749d020d73903ed

响应

响应状态码 204,删除成功。

根据ID查询记录

请求地址

GET http://127.0.0.1:3080/api/v1/Logs/5d2fd6b98749d020d73903ed

响应参数(Content-Type: application/json)

响应码: 200

{
"_id": "5d2fd6b98749d020d73903ed",
"date": "2019-07-18T02:10:45.551Z",
"level": "ERROR",
"loggerName": "com.tapdata.connector.JDBCConnector",
"message": "connect to data source fail.",
"threadId": 9127,
"threadName": "Thread-103"
}

分页查询

请求地址

GET http://127.0.0.1:3080/api/v1/Logs

请求参数(URL Query string)

参数名

参数值

filter[skip]

0

filter[limit]

10

filter[where][loggerName]

com.tapdata.connector.JDBCConnector

更多查询条件用法参见:查询条件说明🔗

响应参数(Content-Type: application/json)

{
"data": [
{
"_id": "5d2fd6b98749d020d73903ed",
"date": "2019-07-18T02:10:45.551Z",
"level": "ERROR",
"loggerName": "com.tapdata.connector.JDBCConnector",
"message": "connect to data source fail.",
"threadId": 9127,
"threadName": "Thread-103"
}
],
"total": {
"count": 1
}
}

常见响应状态码说明

响应状态码

说明

200

findById、findPage、create、自定义方法 请求处理成功返回。

204

updateById、deleteById 请求处理成功返回。

500

服务器内部处理错误返回。常见错误:新增记录违反唯一约束、MongoDB Validate 验证失败等。

401

认证失败返回。访问令牌过期或未提供访问令牌。

404

操作数据不存在返回。根据删除、更新、查询不存在的记录等。