Crear suscripción

Importante

Esta API está obsoleta y retirada a partir del 11/1/2021 y ya no debe usarse.

Crea una suscripción nueva. Una vez creado, el manifiesto del recurso de suscripción es inmutable. Esta operación no es idempotente. Al repetir la llamada de creación después de que una suscripción con el mismo nombre (en el mismo tema y espacio de nombres) se haya creado correctamente, se producirá un mensaje de error 409 Conflicto.

Si crea una suscripción con un nombre que contiene caracteres especiales o codificados (por ejemplo, "prueba? Name=value&", que se codifica en "test%3FName%3Dvalue%26"), se genera una excepción no autorizada (401).

Tenga en cuenta las siguientes restricciones de nombre de suscripción:

  1. Solo puede contener letras, números, puntos (.), guiones (-) y caracteres de subrayado (_).

  2. No se permiten varios segmentos.

  3. Barra diagonal (/) no permitida como prefijo o sufijo del nombre de la suscripción.

  4. El número máximo de caracteres es 50.

Solicitud

Método URI de solicitud Versión de HTTP
PUT https://management.core.windows.net/{subscription ID}/services/ServiceBus/Namespaces/Topics/Subscriptions/{Nombre de suscripción} HTTP/1.1

Encabezados de solicitud

En la tabla siguiente se describen los encabezados de solicitud requeridos y opcionales.

Encabezado de solicitud Descripción
Content-Type application/xml;type=entry;charset=utf-8
Espacio de nombres Dirección URL del extremo de administración
x-ms-version 2012-03-01

La solicitud también requiere un certificado de cliente. Este certificado debe coincidir con el certificado que cargó para la suscripción concreta.

Cuerpo de la solicitud

La tabla siguiente describe los elementos clave del cuerpo de la solicitud:

Nombre de propiedad Tipo Descripción
DefaultMessageTimeToLive Fecha y hora XML En función de si la creación de mensajes fallidos está habilitada, si se ha almacenado un mensaje en el tema durante más del tiempo especificado, se mueve automáticamente a la cola de mensajes fallidos o se elimina. Este valor lo sobrescribe un TTL especificado en el mensaje si el TTL del mensaje es menor que el TTL establecido en el tema. Este valor es inmutable tras la creación del tema:

- Intervalo: 1 segundo – 14 días.

- Valor predeterminado: 14 días.
LockDuration Fecha y hora XML Esta configuración determina la cantidad de tiempo, en segundos, en la que un receptor debe bloquear un mensaje para su procesamiento. Después de este período, el mensaje se desbloquea y está disponible para que el siguiente receptor lo consuma. Solo se puede establecer en el momento de creación del tema:

- Intervalo: 0–5 min. 0 significa que el mensaje no está bloqueado.

- Valor predeterminado: 30s.
RequiresSession Boolean Configurable solo en el momento de la creación del tema. Si se establece en true, el tema es compatible con la sesión y solo SessionReceiver se admite. Los temas compatibles con la sesión no se admiten a través de REST.

- Valor predeterminado: False.
EnableDeadLetteringOnMessageExpiration Boolean Configurable solo en el momento de la creación de la suscripción.

- Valor predeterminado: False.

Este campo determina cómo Service Bus controla un mensaje con un TTL expirado. Si true y un mensaje expiran, Service Bus mueve el mensaje del tema a la subconsulta de mensajes fallidos de ese tema. Si falsees , el mensaje se elimina permanentemente del tema.
DeadLetteringOnFilterEvaluationExceptions Determina cómo Service Bus controla un mensaje que provoca una excepción durante una evaluación del filtro de suscripción. Si truees , el mensaje que provocó la excepción se mueve a la cola de mensajes fallidos de la suscripción. De lo contrario, se descarta. De forma predeterminada, este parámetro se establece en true, lo que le permite investigar la causa de la excepción. Puede producirse a partir de un mensaje con formato incorrecto o suposiciones incorrectas que se realizan en el filtro sobre el formato del mensaje. Configurable solo en el momento de la creación del tema.

- Valor predeterminado: true
EnableBatchedOperations Activa o desactiva el comportamiento de procesamiento por lotes del lado del servicio cuando se realizan operaciones con la cola especificada. Cuando se habilita, Service Bus recopila o procesa por lotes varias operaciones en el back-end, para que sea más eficaz en la conexión. Si quiere una menor latencia de operación, puede desactivar esta característica.

Valor predeterminado: false
MaxDeliveryCount Entero sin signo El número máximo de veces que Service Bus intenta entregar un mensaje antes de que el mensaje esté fallido o descartado.

- Valor predeterminado: 10
MessageCount Entero sin signo Notifica el número de mensajes de la suscripción que aún no se han puesto en cola, según lo notificado por el sistema de supervisión.

Response

La respuesta incluye un código de estado HTTP y un conjunto de encabezados de respuesta.

Códigos de respuesta

Nota

Si crea un espacio de nombres con un nombre que contiene caracteres especiales o codificados (por ejemplo, test?Name=value&, que se codifica en test%3FName%3Dvalue%26), se genera una excepción no autorizada (401).

Código Descripción
201 La suscripción se creó correctamente.
400 Cuerpo de solicitud no válido.
401 Error de autorización.
403 Cuota excedida, no se ha creado la suscripción.
409 La suscripción especificada ya existe (o la ruta especificada ya está ocupada).
500 Error interno.

Para obtener información sobre los códigos de estado, vea Códigos de estado y error.

Encabezados de respuesta

Ninguno.

Cuerpo de la respuesta

Se devuelve la descripción de la suscripción, porque cuando la solicitud PUT no especifica valores para todos los atributos de la suscripción, algunas propiedades de descripción pueden contener valores predeterminados.