Create or Update Namespace PNS Credentials
The namespace level Push Notification Services (PNS) APIs are designed for large apps that span across multiple hubs. They enable developers to easily read and update unified PNS settings for multiple hubs under the same namespace at once. When PNS credentials have been set at namespace level using this endpoint, all hubs in the namespace will use the credentials provided with the namespace settings. Hub creations in the namespace with PNS credentials won’t be allowed.
This topic is a reference for setting the unified PNS credentials for a namespace. When PNS credentials are set at hub level first, this endpoint will no longer be available.
Request
Method |
Request URI |
HTTP version |
---|---|---|
PUT |
https://management.core.windows.net/{subscription ID}/services/ServiceBus/Namespaces/{namespace name}/NotificationHubPnsCredentials/?api-version=2015-01 |
HTTP/1.1 |
Request Headers
The following table describes required and optional request headers.
Request Header |
Description |
---|---|
Authorization |
Token generated as specified in Shared Access Signature Authentication with Service Bus, or Service Bus authentication and authorization with Microsoft Azure Active Directory Access Control (also known as Access Control Service or ACS). |
x-ms-version |
2015-01 |
Request Body
XML credentials to be used for all notification hubs in the namespace.
<NotificationHubPnsCredentials xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://schemas.microsoft.com/netservices/2010/10/servicebus/connect">
<ApnsCredential>
<Properties>
<Property>
<Name>Endpoint</Name>
<Value>gateway.push.apple.com</Value>
</Property>
<Property>
<Name>ApnsCertificate</Name>
<Value>{APNS certificate in Base64}</Value>
</Property>
<Property>
<Name>CertificateKey</Name>
<Value>{APNS certificate key}</Value>
</Property>
</Properties>
</ApnsCredential>
<RegistrationTtl>P39D</RegistrationTtl>
<WnsCredential>
<Properties>
<Property>
<Name>PackageSid</Name>
<Value>{PackageSid}</Value>
</Property>
<Property>
<Name>SecretKey</Name>
<Value>{SecretKey}</Value>
</Property>
</Properties>
</WnsCredential>
<GcmCredential>
<Properties>
<Property>
<Name>GoogleApiKey</Name>
<Value>{ApiKey}</Value>
</Property>
</Properties>
</GcmCredential>
<MpnsCredential>
<Properties>
<Property>
<Name>MpnsCertificate</Name>
<Value>{MPNS certificate in Base64}</Value>
</Property>
<Property>
<Name>CertificateKey</Name>
<Value>{MPNS certificate key}</Value>
</Property>
</Properties>
</MpnsCredential>
</NotificationHubPnsCredentials>
Response
The response includes an HTTP status code and a set of response headers.
Response Codes
Code |
Description |
---|---|
200 |
Credentials successfully set. |
400 |
Invalid request body. The settings could not be read because the request was malformed (or the validation failed). |
401 |
Authorization failure. The access key was incorrect. |
403 |
Quota exceeded. |
404 |
Namespace Not found. |
For information about status codes, see Status and Error Codes.
Response Headers
None.
Response Body
None.