

# Estructura de mensaje de evento EventBridge
<a name="ev-events"></a>

El mensaje de notificación que Amazon S3 envía para publicar un evento está en formato JSON. Cuando Amazon S3 envía un evento a Amazon EventBridge, aparecen los siguientes campos.
+ `version`: actualmente 0 (cero) para todos los eventos.
+ `id`: un UUID generado para cada evento.
+ `detail-type`: el tipo de evento que se envía. Para obtener una lista de los tipos de eventos, consulte [Uso de EventBridge](EventBridge.md).
+ `source`: identifica el servicio que generó el evento.
+ `account`: el ID de 12 dígitos de la Cuenta de AWS del propietario del bucket.
+ `time`: la hora a la que se produjo el evento.
+ `region`: identifica la Región de AWS del bucket.
+ `resources`: una matriz JSON que contiene el nombre de recurso de Amazon (ARN) del bucket.
+ `detail` – Un objeto JSON que contiene información sobre el evento. Para obtener más información acerca de lo que se puede incluir en este campo, consulte [Campo de detalle del mensaje de evento](#ev-events-detail).

## Ejemplos de estructura de mensaje de evento
<a name="ev-events-list"></a>

A continuación, se muestran ejemplos de algunos de los mensajes de notificación de eventos de Amazon S3 que se pueden enviar a Amazon EventBridge.

### Objeto creado
<a name="ev-events-object-created"></a>

```
{
  "version": "0",
  "id": "17793124-05d4-b198-2fde-7ededc63b103",
  "detail-type": "Object Created",
  "source": "aws.s3",
  "account": "111122223333",
  "time": "2021-11-12T00:00:00Z",
  "region": "ca-central-1",
  "resources": [
    "arn:aws:s3:::amzn-s3-demo-bucket1"
  ],
  "detail": {
    "version": "0",
    "bucket": {
      "name": "amzn-s3-demo-bucket1"
    },
    "object": {
      "key": "example-key",
      "size": 5,
      "etag": "b1946ac92492d2347c6235b4d2611184",
      "version-id": "IYV3p45BT0ac8hjHg1houSdS1a.Mro8e",
      "sequencer": "617f08299329d189"
    },
    "request-id": "N4N7GDK58NMKJ12R",
    "requester": "123456789012",
    "source-ip-address": "1.2.3.4",
    "reason": "PutObject"
  }
}
```

### Objeto eliminado (utilizando DeleteObject)
<a name="ev-events-object-deleted"></a>

```
{
  "version": "0",
  "id": "2ee9cc15-d022-99ea-1fb8-1b1bac4850f9",
  "detail-type": "Object Deleted",
  "source": "aws.s3",
  "account": "111122223333",
  "time": "2021-11-12T00:00:00Z",
  "region": "ca-central-1",
  "resources": [
    "arn:aws:s3:::amzn-s3-demo-bucket1"
  ],
  "detail": {
    "version": "0",
    "bucket": {
      "name": "amzn-s3-demo-bucket1"
    },
    "object": {
      "key": "example-key",
      "etag": "d41d8cd98f00b204e9800998ecf8427e",
      "version-id": "1QW9g1Z99LUNbvaaYVpW9xDlOLU.qxgF",
      "sequencer": "617f0837b476e463"
    },
    "request-id": "0BH729840619AG5K",
    "requester": "123456789012",
    "source-ip-address": "1.2.3.4",
    "reason": "DeleteObject",
    "deletion-type": "Delete Marker Created"
  }
}
```

### Objeto eliminado (utilizando vencimiento del ciclo de vida)
<a name="ev-events-object-deleted-lifecycle"></a>

```
{
  "version": "0",
  "id": "ad1de317-e409-eba2-9552-30113f8d88e3",
  "detail-type": "Object Deleted",
  "source": "aws.s3",
  "account": "111122223333",
  "time": "2021-11-12T00:00:00Z",
  "region": "ca-central-1",
  "resources": [
    "arn:aws:s3:::amzn-s3-demo-bucket1"
  ],
  "detail": {
    "version": "0",
    "bucket": {
      "name": "amzn-s3-demo-bucket1"
    },
    "object": {
      "key": "example-key",
      "etag": "d41d8cd98f00b204e9800998ecf8427e",
      "version-id": "mtB0cV.jejK63XkRNceanNMC.qXPWLeK",
      "sequencer": "617b398000000000"
    },
    "request-id": "20EB74C14654DC47",
    "requester": "s3.amazonaws.com",
    "reason": "Lifecycle Expiration",
    "deletion-type": "Delete Marker Created"
  }
}
```

### Restauración de objetos completada
<a name="ev-events-object-restore-complete"></a>

```
{
  "version": "0",
  "id": "6924de0d-13e2-6bbf-c0c1-b903b753565e",
  "detail-type": "Object Restore Completed",
  "source": "aws.s3",
  "account": "111122223333",
  "time": "2021-11-12T00:00:00Z",
  "region": "ca-central-1",
  "resources": [
    "arn:aws:s3:::amzn-s3-demo-bucket1"
  ],
  "detail": {
    "version": "0",
    "bucket": {
      "name": "amzn-s3-demo-bucket1"
    },
    "object": {
      "key": "example-key",
      "size": 5,
      "etag": "b1946ac92492d2347c6235b4d2611184",
      "version-id": "KKsjUC1.6gIjqtvhfg5AdMI0eCePIiT3"
    },
    "request-id": "189F19CB7FB1B6A4",
    "requester": "s3.amazonaws.com",
    "restore-expiry-time": "2021-11-13T00:00:00Z",
    "source-storage-class": "GLACIER"
  }
}
```

## Campo de detalle del mensaje de evento
<a name="ev-events-detail"></a>

El campo de detalles contiene un objeto JSON con información sobre el evento. Los siguientes campos pueden estar presentes en el campo de detalles.
+ `version`: actualmente 0 (cero) para todos los eventos.
+ `bucket`: información sobre el bucket de Amazon S3 involucrado en el evento.
+ `object`: información sobre el objeto de Amazon S3 involucrado en el evento.
+ `request-id`: ID de solicitud en la respuesta de S3.
+ `requester`: ID de la Cuenta de AWS o entidad principal de servicio de AWS del solicitante.
+ `source-ip-address`: la dirección IP de origen de la solicitud de S3. Solo está presente para eventos desencadenados por una solicitud de S3.
+ `reason`: para eventos de **Objeto creado**, la API de S3 utilizada para crear el objeto: [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html), [https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPOST.html](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPOST.html), [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html) o [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html). Para eventos de **Objeto eliminado**, esto se configura en **DeleteObject** cuando se elimina un objeto mediante una llamada a la API de S3 o **vencimiento del ciclo de vida** cuando se elimina un objeto mediante una regla de vencimiento del ciclo de vida de S3. Para obtener más información, consulte [Vencimiento de objetos](lifecycle-expire-general-considerations.md).
+ `deletion-type`: para eventos de **Objeto eliminado**, cuando se elimina un objeto sin control de versiones o se elimina de forma permanente un objeto con control de versiones, esto se establece en **Eliminado de forma permanente**. Cuando se crea un marcador de eliminación para un objeto con control de versiones, esto se establece en **Delete Marker Created** (Marcador de eliminación creado). Para obtener más información, consulte [Eliminar versiones de objetos de un bucket con control de versiones habilitado](DeletingObjectVersions.md).
**nota**  
Algunos atributos del objeto (como `etag` y `size`) solo están presentes cuando se crea un marcador de eliminación.
+ `restore-expiry-time`: para eventos de **Restauración de objetos completada**, la hora en que la copia temporal del objeto se eliminará de S3. Para obtener más información, consulte [Trabajar con objetos archivados](archived-objects.md).
+ `source-storage-class`: para eventos de **Restauración de objetos iniciada** y **Restauración de objetos completada**, la clase de almacenamiento del objeto que se está restaurando. Para obtener más información, consulte [Trabajar con objetos archivados](archived-objects.md).
+ `destination-storage-class`: para eventos de **Clase de almacenamiento de destino cambiada**, la nueva clase de almacenamiento del objeto. Para obtener más información, consulte [Transición de objetos con Amazon S3 Lifecycle](lifecycle-transition-general-considerations.md).
+ `destination-access-tier`: para eventos de **Nivel de acceso de destino cambiado**, el nuevo nivel de acceso del objeto. Para obtener más información, consulte [Administración de costos con Amazon S3 Intelligent-Tiering](intelligent-tiering.md).