Skip to main content

DCME 端点

DCME 端点和参数

DCME 端点分为两组: 面向用户的 DCME 端点 面向管理员的 DCME 端点 。所有 DCME 端点都要求在 Server 上配置 TLS。

要详细了解对象关系以及如何在 API 中使用对象关系,请参阅 对象关系 部分。

如需详细了解数据连接,请访问 DCM - Server 数据连接管理器:Server UI 帮助页面。

面向用户的 DCME 端点

具有 API 访问权限的用户可以使用这些端点:

所有 API 端点都会返回单独的用户数据(每个用户只能查看和管理自己的连接)。

要检索 DCM 连接记录,请使用 GET {baseURL}/v3/dcm/connections/{id} 端点。端点会返回有关 DCM 连接的所有信息,包括相关数据源和凭证以及共享信息。

参数

  • id (string):必填。输入您想要获取其信息的 DCM 连接的 ID。

请求示例:cURL

curl --location --request GET 'https://localhost/webapi/v3/dcm/connections/d8cc5fca-86cc-4e7e-93a3-d500cca9a3f3' \ --header 'Authorization: Bearer BearerTokenGoesHere'

要检索工作流中引用的 DCM 连接记录,请使用 GET {baseURL}/v3/dcm/connections/lookup 端点。端点会返回有关 DCM 连接的所有信息,包括相关数据源和凭证以及共享信息。

注意

此端点中使用的 ConnectionID 与其他 DCM 端点中使用的 ID 不同。ID 用于引用各种 DCM 对象,而 ConnectionID 仅在工作流中用于引用特定用户的 DCM 连接。

参数

  • connectionId (string):必填。输入您想要获取其信息的 DCM ConnectionID。

请求示例:cURL

curl --location --request GET 'https://localhost/webapi/v3/dcm/connections/lookup?connectionId=d8cc5fca-86cc-4e7e-93a3-d500cca9a3f3' \ --header 'Authorization: Bearer BearerTokenGoesHere'

要与指定的用户或用户组共享 DCM 连接以便执行 Server 任务,请使用 PUT {baseURL}/v3/dcm/connections/{id}/sharing/execution 端点。

注意

由于这是一个 PUT 端点,因此它会覆盖现有的共享,而不是向现有列表添加其他用户或用户组。提供的用户和用户组列表不能为空;要移除现有共享,请使用 DELETE 端点。

参数

  • id (string):必填。输入要与其他用户或用户组共享的 DCM 连接 ID。

  • sharingContract (body):必填。要更新执行共享,必须指定 sharingContract 参数。两个数组都是必需的,但只有一个数组可以留空。

    • userIds (string array):输入要与其共享连接的所有用户 ID 的列表。如果没有用户可以共享,则保留空数组(仅限 userGroups)。

    • userGroupIds (string array):输入要与其共享连接的所有用户组 ID 的列表。如果没有用户组可以共享,则保留空数组(仅限 users)。

请求示例:cURL

curl --location --request PUT 'https://localhost/webapi/v3/dcm/connections/d8cc5fca-86cc-4e7e-93a3-d500cca9a3f3/sharing/execution' \ --header 'Authorization: Bearer BearerTokenGoesHere' \ --header "Content-Type: application/json" \ --data '{"userIds": ["61d57bea3c15317e1a48205b", "61d564361d6d5da7ad461a32"],"userGroupIds": ["d5da7ad4"]}'

要取消共享 DCM 连接,请使用 DELETE {baseURL}/v3/dcm/connections/{id}/sharing/execution 端点。

参数

  • id (string):必填。输入要取消与所有用户和用户组共享的 DCM 连接 ID。

请求示例:cURL

curl --location --request DELETE 'https://localhost/webapi/v3/dcm/connections/d8cc5fca-86cc-4e7e-93a3-d500cca9a3f3/sharing/execution' \ --header 'Authorization: Bearer BearerTokenGoesHere'

要创建或更新 DCM 连接,请使用 POST {baseURL}/v3/dcm/connections 端点。

单个端点同时提供创建和更新功能,根据请求中是否包含对象 ID 进行区分。目前不支持在创建新连接时重复使用现有数据源或凭证。

参数

  • upsertConnectionContract (string):必填。通过定义可能的架构组合,将数据源(描述目标实例主机)和凭证(例如用户名和密码)组合成 DCM 连接。

    • id (string):可选。如果要更新现有连接,请输入连接 ID。如果要创建新连接,请跳过。

    • name (string):必填。输入连接的名称。

    • schemaName (string):必填。输入要使用的连接架构名称。架构定义连接所需的参数以及允许用于该连接的数据源和凭证架构。

    • allowInSdks (boolean):可选。

    • parameters (object):必填。根据所选的 schemaName,可能需要指定各种参数。

    • dataSource (object):必填。用于连接的数据源,描述数据源实例主机和其他参数,如 DCM UI 中所示。

      • object (object):必填。

        • id (string):如果要更新现有连接,请输入数据源 ID。如果要创建新连接,请跳过。目前无法在创建新连接时使用现有数据源。

        • name (string):必填。输入数据源的名称。

        • schemaName (string):必填。输入所选数据源的架构名称。

        • 其他特定于架构的参数 :根据所使用的架构,您将需要提供其他数据源参数。

    • credentials (string):可选,具体取决于在 upsertConnectionContract 中选择的 schemaName。有些连接可能不需要任何凭证,而有些连接可能有多个嵌套对象(时段)。

      • main (object):可选(请参阅上文)。此 main 只是一个(最常见的)凭证时段名称。但是,根据连接架构中的定义,它可能有不同的名称,或者可能有多个用于连接的凭证时段。

        • id (string):如果要更新现有连接,请输入凭证 ID。如果要创建新连接,请跳过。目前无法在创建新连接时使用现有凭证。

        • name (string):必填。输入凭证的名称。

        • schemaName (string):必填。输入所选凭证的架构名称。

        • 其他特定于架构的参数 :根据所使用的架构,您将需要提供其他数据源参数。

请求示例:cURL

curl --location --request POST 'https://localhost/webapi/v3/dcm/connections' \ --header 'Authorization: Bearer BearerTokenGoesHere' \ --header "Content-Type: application/json" \ --data '{"Name":"MSSQL DEV Admin","SchemaName":"database-odbc-dsn-mssql","Parameters":{},"DataSource":{"object":{"name":"SQL Server DEV","SchemaName":"database-odbc-dsn-mssql","parameters":{"dsn":"sql server"}}},"Credentials":{"main":{"object":{"name":"SQL Server Admin Credentials","SchemaName":"username_password","parameters":{},"userName":"admin","secrets":{"password":{"value":{"text":"password"},"Parameters":{}}}}}}}'

要删除 DCM 连接,请使用 DELETE {baseURL}/v3/dcm/connections/{id} 端点。数据源和凭证若未用于任何其他连接,则也将予以删除。

参数

  • id (string):必填。输入要删除的 DCM 连接 ID。

请求示例:cURL

curl --location --request DELETE 'https://localhost/webapi/v3/dcm/connections/d8cc5fca-86cc-4e7e-93a3-d500cca9a3f3' \ --header 'Authorization: Bearer BearerTokenGoesHere'

面向管理员的 DCME 端点

具有 API 访问权限的管理员可以使用的端点:

所有管理 API 端点都会返回所有用户在 Server 上可用的所有数据,无论所有权如何。

要检索 DCM 连接记录,请使用 GET {baseURL}/v3/dcm/admin/connections/{objectId} 端点。

参数

  • objectId (string):必填。输入要获取相关信息的 DCM 连接 ID。

请求示例:cURL

curl --location --request GET 'https://localhost/webapi/v3/dcm/admin/connections/d8cc5fca-86cc-4e7e-93a3-d500cca9a3f3' \ --header 'Authorization: Bearer BearerTokenGoesHere'

要检索 Server 上存在的所有 DCM 连接记录的列表,请使用 GET {baseURL}/v3/dcm/admin/connections 端点。

参数

这两个参数都是可以组合的筛选条件。将 connectionId visibleBy 一起使用将返回指定了 ConnectionID 的连接,该连接对指定用户可见。

  • connectionId (string):可选。根据工作流引用的 connectionID 筛选连接。如果连接是为了协作而共享的,则可以为单个 connectionID 返回多个连接。

  • visibleBy (string):可选。输入用户 ID。如果存在,它会将结果过滤为与指定用户可用的所有连接相同的结果。

请求示例:cURL

curl --location --request GET 'https://localhost/webapi/v3/dcm/admin/connections?connectionId=d8cc5fca-86cc-4e7e-93a3-d500cca9a3f3&visibleBy=bc7cb7b47c33' \ --header 'Authorization: Bearer BearerTokenGoesHere'

要代表用户创建或更新 DCM 连接记录,请使用 POST {baseURL}/v3/dcm/admin/connections 端点。

参数

  • upsertConnectionContract (string):必填。

    • id (string):可选。如果要更新现有连接,请输入连接 ID。如果要创建新连接,请跳过。

    • ownerId (string):必填。

    • name (string):必填。输入连接的名称。

    • schemaName (string):必填。输入要使用的连接架构名称。架构定义连接所需的参数以及允许用于该连接的数据源和凭证架构。

    • allowInSdks (boolean):可选。

    • parameters (object):必填。根据所选的 schemaName,可能需要指定各种参数。

    • dataSource (object):必填。用于连接的数据源

      • object (object):必填。

        • id (string):如果您要更新现有连接,请输入数据源 ID。如果要创建新连接,请跳过。目前无法在创建新连接时使用现有数据源。

        • name (string):必填。输入数据源的名称。

        • schemaName (string):必填。输入所选数据源的架构名称。

        • 其他特定于架构的参数 :根据所使用的架构,您将需要提供其他数据源参数。

    • credentials (string):可选,具体取决于在 upsertConnectionContract 中选择的 schemaName。有些连接可能不需要任何凭证,而有些连接可能有多个凭证。

      • main (object):可选(请参阅上文)。

        • id (string):如果您要更新现有连接,请输入凭证 ID。如果要创建新连接,请跳过。目前无法在创建新连接时使用现有凭证。

        • name (string):必填。输入凭证的名称。

        • schemaName (string):必填。输入所选凭证的架构名称。

        • 其他特定于架构的参数 :根据所使用的架构,您将需要提供其他凭证参数。

请求示例:cURL

curl --location --request POST 'https://localhost/webapi/v3/dcm/connections' \ --header 'Authorization: Bearer BearerTokenGoesHere' \ --header "Content-Type: application/json" \ --data '{"Name":"MSSQL DEV Admin","onwerId":"1b4bc56d489d9543a",SchemaName":"database-odbc-dsn-mssql","Parameters":{},"DataSource":{"object":{"name":"SQL Server DEV","SchemaName":"database-odbc-dsn-mssql","parameters":{"dsn":"sql server"}}},"Credentials":{"main":{"object":{"name":"SQL Server Admin Credentials","SchemaName":"username_password","parameters":{},"userName":"admin","secrets":{"password":{"value":{"text":"password"},"Parameters":{}}}}}}}'

要取消其共享类型已定义为“为执行而共享”的 DCM 连接,请使用 DELETE {baseURL}/v3/dcm/admin/connections/{objectId}/sharing/execution 端点。

参数

  • objectId (string):必填。输入执行时要取消共享的 DCM 连接 ID。

请求示例:cURL

curl --location --request DELETE 'https://localhost/webapi/v3/dcm/admin/connections/d8cc5fca-86cc-4e7e-93a3-d500cca9a3f3/sharing/execution' \ --header 'Authorization: Bearer BearerTokenGoesHere'

要取消其共享类型已定义为“为协作而共享”的 DCM 连接,请使用 DELETE {baseURL}/v3/dcm/admin/connections/{objectId}/sharing/collaboration 端点。

参数

  • objectId (string):必填。输入协作时要取消共享的 DCM 连接 ID。

请求示例:cURL

curl --location --request DELETE 'https://localhost/webapi/v3/dcm/admin/connections/d8cc5fca-86cc-4e7e-93a3-d500cca9a3f3/sharing/collaboration' \ --header 'Authorization: Bearer BearerTokenGoesHere'

要删除 DCM 连接记录,请使用 DELETE {baseURL}/v3/dcm/admin/connections/{objectId} 端点。数据源和凭证若未用于任何其他连接,则也将予以删除。

参数

  • objectId (string):必填。输入要删除的 DCM 连接 ID。

请求示例:cURL

curl --location --request DELETE 'https://localhost/webapi/v3/dcm/admin/connections/d8cc5fca-86cc-4e7e-93a3-d500cca9a3f3' \ --header 'Authorization: Bearer BearerTokenGoesHere'

对象关系

如果您要创建 DCM 连接,则可以按如下方式使用创建的对象:

创建的对象:

  • id ”(例如“id”: “c128cc5fca-86cc-4e7e-93a3-d500cca9a3f3”)

  • connectionId ”(例如“id”: “c0332423423-86cc-4e7e-93a3-d500cca9a3f3”)

您可以将其用作:

管理员