更新连接器配置 API

编辑

此功能处于 Beta 阶段,可能会发生变化。其设计和代码的成熟度低于正式 GA 功能,按“原样”提供,不提供任何保证。Beta 功能不受正式 GA 功能的支持 SLA 的约束。

更新连接器的 configuration,允许在已注册的配置架构中更新配置值。

要开始使用连接器 API,请查看 我们的教程

请求

编辑

PUT _connector/<connector_id>/_configuration

先决条件

编辑
  • 要使用自管理连接器同步数据,您需要在自己的基础设施上部署 Elastic 连接器服务。对于 Elastic 托管连接器,此服务会在 Elastic Cloud 上自动运行。
  • connector_id 参数应引用现有连接器。
  • 要更新配置 values,必须首先由正在运行的 Elastic 连接器服务实例注册连接器 configuration 架构。
  • 确保配置字段与第三方数据源的配置架构兼容。有关详细信息,请参阅各个 连接器参考

路径参数

编辑
<connector_id>
(必填,字符串)

请求正文

编辑
values
(可选,对象) 连接器的配置值,表示为配置字段与其在已注册架构中的相应值的映射。
configuration
(可选,对象) 连接器的配置架构定义。configuration 字段是一个映射,其中每个键表示特定的配置字段名称,值是一个 ConnectorConfiguration 对象。对于连接器管理,使用 values 传递配置值。configuration 对象由 Elastic 连接器服务用于注册连接器配置架构。

响应代码

编辑
200
连接器配置已成功更新。
400
未提供 connector_id 或请求有效负载格式错误。
404 (缺少资源)
找不到与 connector_id 匹配的连接器。

示例

编辑

以下示例配置了 sharepoint_online 连接器。在 Sharepoint Online 连接器文档中或通过使用 获取连接器检查连接器 configuration 字段中的架构来查找受支持的配置选项。

resp = client.connector.update_configuration(
    connector_id="my-spo-connector",
    values={
        "tenant_id": "my-tenant-id",
        "tenant_name": "my-sharepoint-site",
        "client_id": "foo",
        "secret_value": "bar",
        "site_collections": "*"
    },
)
print(resp)
const response = await client.connector.updateConfiguration({
  connector_id: "my-spo-connector",
  values: {
    tenant_id: "my-tenant-id",
    tenant_name: "my-sharepoint-site",
    client_id: "foo",
    secret_value: "bar",
    site_collections: "*",
  },
});
console.log(response);
PUT _connector/my-spo-connector/_configuration
{
    "values": {
        "tenant_id": "my-tenant-id",
        "tenant_name": "my-sharepoint-site",
        "client_id": "foo",
        "secret_value": "bar",
        "site_collections": "*"
    }
}
{
    "result": "updated"
}

首次设置连接器时,您需要提供所有必需的配置详细信息才能开始运行同步。但您也可以使用此 API 仅更新字段的子集。以下示例仅更新 sharepoint_online 连接器的 secret_value 字段。其他配置值不会更改。

resp = client.connector.update_configuration(
    connector_id="my-spo-connector",
    values={
        "secret_value": "foo-bar"
    },
)
print(resp)
const response = await client.connector.updateConfiguration({
  connector_id: "my-spo-connector",
  values: {
    secret_value: "foo-bar",
  },
});
console.log(response);
PUT _connector/my-spo-connector/_configuration
{
    "values": {
        "secret_value": "foo-bar"
    }
}
{
    "result": "updated"
}