Las acciones de Azure Cosmos DB le permiten leer, escribir y administrar documentos y bases de datos en Azure Cosmos DB directamente desde los flujos de trabajo. Todas las acciones se autentican mediante una entidad de servicio de Azure AD y se comunican con el plano de datos de Cosmos DB.
Obtener un elemento
Esta acción lee un único documento por ID de un contenedor de Azure Cosmos DB mediante la API REST Azure Cosmos DB - Get Document.
Aporte | Tipo | Descripción |
|---|---|---|
| Cadena | Requerido. ID de la aplicación (cliente) de Azure AD. Debe pasarse como un secreto. Vea cómo registrar una aplicación de Azure . |
| Cadena | Requerido. Secreto de cliente de Azure AD. Debe pasarse como un secreto. Vea cómo registrar una aplicación de Azure . |
| Cadena | Requerido. El identificador de inquilino de Azure AD. Se puede pasar como un secreto. |
| Cadena | Requerido. El nombre de la cuenta de Cosmos DB. Por ejemplo,
. |
| Cadena | Requerido. El identificador de la base de datos. Por ejemplo,
. |
| Cadena | Requerido. El identificador del contenedor (colección). Por ejemplo,
. |
| Cadena | Requerido. El documento
para leer. Por ejemplo,
. |
| Cadena | Requerido. El valor principal de partición para el documento. Por ejemplo,
. |
| Lista | Opcional. Una lista de selectores utilizados para extraer valores específicos de la respuesta. Por ejemplo,
. |
Producción | Tipo | Descripción |
|---|---|---|
| Booleano |
en caso de éxito,
en caso de error o si no se encuentra el documento. |
| Cadena | Motivo del error como mensaje. |
| Objeto | El cuerpo del documento. Para obtener más información, consulte la API REST Azure Cosmos DB - Get Document . |
| Cadena | El ETag del documento devuelto, utilizado para el control de concurrencia optimista. |
| Cadena | Las unidades de solicitud (RU) consumidas por la operación. |
name: cosmosGetItemWorkflowdescription: ''steps: - name: get_item type: action action: azure.cosmos.getItem version: 1 inputs: clientId: ${{ :secrets:azure-client-id }} clientSecret: ${{ :secrets:azure-client-secret }} tenantId: ${{ :secrets:azure-client-tenant }} accountName: my-cosmos-account databaseId: TestDb collectionId: Items itemId: "121" partitionKey: beta selectors: - name: item expression: ".response" next: log_result - name: log_result type: action action: newrelic.ingest.sendLogs version: 1 inputs: logs: - message: 'azure.cosmos.getItem result: ${{ .steps.get_item.outputs | tostring }}' next: endCrear un elemento
Esta acción crea un nuevo documento en un contenedor de Azure Cosmos DB mediante la API REST Azure Cosmos DB - Create Document.
Aporte | Tipo | Descripción |
|---|---|---|
| Cadena | Requerido. ID de la aplicación (cliente) de Azure AD. Debe pasarse como un secreto. Vea cómo registrar una aplicación de Azure . |
| Cadena | Requerido. Secreto de cliente de Azure AD. Debe pasarse como un secreto. Vea cómo registrar una aplicación de Azure . |
| Cadena | Requerido. El identificador de inquilino de Azure AD. Se puede pasar como un secreto. |
| Cadena | Requerido. El nombre de la cuenta de Cosmos DB. Por ejemplo,
. |
| Cadena | Requerido. El identificador de la base de datos. Por ejemplo,
. |
| Cadena | Requerido. El identificador del contenedor (colección). Por ejemplo,
. |
| Cadena | Requerido. El valor principal de la partición para el nuevo documento. Debe coincidir con el valor de la propiedad de la clave de partición del documento. Por ejemplo,
. |
| Mapa | Requerido. El documento para crear. Debe incluir la propiedad de clave de partición (por ejemplo,
) establecida en el mismo valor que
, y normalmente un
. |
| Lista | Opcional. Una lista de selectores utilizados para extraer valores específicos de la respuesta. Por ejemplo,
. |
Producción | Tipo | Descripción |
|---|---|---|
| Booleano |
en 201 Created,
en caso de error. |
| Cadena | Motivo del error como mensaje. |
| Objeto | El documento creado tal como se almacenó, incluidos los campos del sistema. Para obtener más información, consulte la API REST Azure Cosmos DB - Create Document . |
| Cadena | El ETag del documento creado, utilizado para el control de concurrencia optimista. |
| Cadena | Las unidades de solicitud (RU) consumidas por la operación. |
name: cosmosCreateItemWorkflowdescription: ''steps: - name: create_item type: action action: azure.cosmos.createItem version: 1 inputs: clientId: ${{ :secrets:azure-client-id }} clientSecret: ${{ :secrets:azure-client-secret }} tenantId: ${{ :secrets:azure-client-tenant }} accountName: my-cosmos-account databaseId: TestDb collectionId: Items partitionKey: beta item: id: "423" pk: beta name: created-by-workflow category: demo value: 42 selectors: - name: newId expression: .response.id next: log_result - name: log_result type: action action: newrelic.ingest.sendLogs version: 1 inputs: logs: - message: 'azure.cosmos.createItem succeeded=${{ .steps.create_item.outputs.success }} newId=${{ .steps.create_item.outputs.newId }}' next: endActualizar un elemento
Esta acción reemplaza o inserta/actualiza un documento en un contenedor de Azure Cosmos DB mediante la API REST Azure Cosmos DB - Replace Document. De forma predeterminada (upsert: false), el documento ya debe existir. Establezca upsert: true para crear el documento si no existe.
Aporte | Tipo | Descripción |
|---|---|---|
| Cadena | Requerido. ID de la aplicación (cliente) de Azure AD. Debe pasarse como un secreto. Vea cómo registrar una aplicación de Azure . |
| Cadena | Requerido. Secreto de cliente de Azure AD. Debe pasarse como un secreto. Vea cómo registrar una aplicación de Azure . |
| Cadena | Requerido. El identificador de inquilino de Azure AD. Se puede pasar como un secreto. |
| Cadena | Requerido. El nombre de la cuenta de Cosmos DB. Por ejemplo,
. |
| Cadena | Requerido. El identificador de la base de datos. Por ejemplo,
. |
| Cadena | Requerido. El identificador del contenedor (colección). Por ejemplo,
. |
| Cadena | Requerido. El documento
para reemplazar. Por ejemplo,
. |
| Cadena | Requerido. El valor principal de partición para el documento. Por ejemplo,
. |
| Mapa | Requerido. El documento de reemplazo completo. Debe incluir el mismo
y valor principal de partición que el documento existente. |
| Booleano | Opcional. Cuando es
(predeterminado), reemplaza el documento y devuelve un error si no existe. Cuando es
, crea el documento si no existe. Acepta
o
. |
| Lista | Opcional. Una lista de selectores utilizados para extraer valores específicos de la respuesta. Por ejemplo,
. |
Producción | Tipo | Descripción |
|---|---|---|
| Booleano |
en caso de éxito,
en caso de error. |
| Cadena | Motivo del error como mensaje. |
| Objeto | El documento almacenado después de la escritura. Para obtener más información, consulte la API REST de Azure Cosmos DB - Replace Document . |
| Cadena | El ETag del documento almacenado después de la escritura, utilizado para el control de concurrencia optimista. |
| Cadena | Las unidades de solicitud (RU) consumidas por la operación. |
name: cosmosUpdateItemWorkflowdescription: ''steps: - name: update_item type: action action: azure.cosmos.updateItem version: 1 inputs: clientId: ${{ :secrets:azure-client-id }} clientSecret: ${{ :secrets:azure-client-secret }} tenantId: ${{ :secrets:azure-client-tenant }} accountName: my-cosmos-account databaseId: TestDb collectionId: Items itemId: "323" partitionKey: beta upsert: false item: id: "323" pk: beta name: updated-by-workflow category: demo value: 43 selectors: - name: updatedId expression: .response.id - name: eTag expression: .response._etag next: log_result - name: log_result type: action action: newrelic.ingest.sendLogs version: 1 inputs: logs: - message: 'azure.cosmos.updateItem succeeded=${{ .steps.update_item.outputs.success }} updatedId=${{ .steps.update_item.outputs.updatedId }} eTag=${{ .steps.update_item.outputs.eTag }}' next: endEliminar un elemento
Esta acción elimina un documento de un contenedor de Azure Cosmos DB mediante la API REST Azure Cosmos DB - Delete Document.
Aporte | Tipo | Descripción |
|---|---|---|
| Cadena | Requerido. ID de la aplicación (cliente) de Azure AD. Debe pasarse como un secreto. Vea cómo registrar una aplicación de Azure . |
| Cadena | Requerido. Secreto de cliente de Azure AD. Debe pasarse como un secreto. Vea cómo registrar una aplicación de Azure . |
| Cadena | Requerido. El identificador de inquilino de Azure AD. Se puede pasar como un secreto. |
| Cadena | Requerido. El nombre de la cuenta de Cosmos DB. Por ejemplo,
. |
| Cadena | Requerido. El identificador de la base de datos. Por ejemplo,
. |
| Cadena | Requerido. El identificador del contenedor (colección). Por ejemplo,
. |
| Cadena | Requerido. El documento
que se va a eliminar. Por ejemplo,
. |
| Cadena | Requerido. El valor principal de partición para el documento. Debe coincidir con el valor de la propiedad de la clave de partición del documento. Por ejemplo,
. |
| Lista | Opcional. Una lista de selectores utilizados para extraer valores específicos de la respuesta. Por ejemplo,
. |
Producción | Tipo | Descripción |
|---|---|---|
| Booleano |
en 204 No Content,
en caso de error. |
| Cadena | Motivo del error como mensaje. |
| Objeto | La respuesta de eliminación. Normalmente vacía en caso de éxito. Use un selector como
para confirmar el estado. Para obtener más información, consulte la API REST Azure Cosmos DB - Delete Document . |
| Cadena | Las unidades de solicitud (RU) consumidas por la operación. |
name: cosmosDeleteItemWorkflowdescription: ''steps: - name: delete_item type: action action: azure.cosmos.deleteItem version: 1 inputs: clientId: ${{ :secrets:azure-client-id }} clientSecret: ${{ :secrets:azure-client-secret }} tenantId: ${{ :secrets:azure-client-tenant }} accountName: my-cosmos-account databaseId: TestDb collectionId: Items itemId: "121" partitionKey: beta selectors: - name: statusCode expression: ".response.status_code" next: log_result - name: log_result type: action action: newrelic.ingest.sendLogs version: 1 inputs: logs: - message: 'azure.cosmos.deleteItem result: ${{ .steps.delete_item.outputs | tostring }}' next: endDescribe una base de datos
Esta acción recupera metadatos para una base de datos de Azure Cosmos DB mediante la API REST Azure Cosmos DB - Get Database.
Aporte | Tipo | Descripción |
|---|---|---|
| Cadena | Requerido. ID de la aplicación (cliente) de Azure AD. Debe pasarse como un secreto. Vea cómo registrar una aplicación de Azure . |
| Cadena | Requerido. Secreto de cliente de Azure AD. Debe pasarse como un secreto. Vea cómo registrar una aplicación de Azure . |
| Cadena | Requerido. El identificador de inquilino de Azure AD. Se puede pasar como un secreto. |
| Cadena | Requerido. El nombre de la cuenta de Cosmos DB. Por ejemplo,
. |
| Cadena | Requerido. La base de datos que se va a describir. Por ejemplo,
. |
| Lista | Opcional. Una lista de selectores utilizados para extraer valores específicos de la respuesta. Por ejemplo,
. |
Producción | Tipo | Descripción |
|---|---|---|
| Booleano |
en caso de éxito,
en caso de error o base de datos no encontrada. |
| Cadena | Motivo del error como mensaje. |
| Objeto | El recurso de la base de datos, incluidos campos como
,
,
,
,
y
. Para obtener más información, consulte la API REST Azure Cosmos DB - Obtener base de datos . |
| Cadena | El ETag del recurso de base de datos. |
name: cosmosDescribeDatabaseWorkflowdescription: ''steps: - name: describeDatabase type: action action: azure.cosmos.describeDatabase version: 1 inputs: clientId: ${{ :secrets:azure-client-id }} clientSecret: ${{ :secrets:azure-client-secret }} tenantId: ${{ :secrets:azure-client-tenant }} accountName: my-cosmos-account databaseId: TestDb selectors: - name: database expression: ".response" - name: id expression: ".response.id" - name: eTag expression: ".eTag" - name: logResult type: action action: newrelic.ingest.sendLogs version: 1 inputs: logs: - message: 'azure.cosmos.describeDatabase database: ${{ .steps.describeDatabase.outputs.database | tostring }}' attributes: success: ${{ .steps.describeDatabase.outputs.success }} id: ${{ .steps.describeDatabase.outputs.id }} eTag: ${{ .steps.describeDatabase.outputs.eTag }} next: end