{"id":"2ec05053-e3c4-423d-b447-9b08999aa64b","shortId":"CBSjPc","kind":"skill","title":"azure-web-pubsub","tagline":"Expert knowledge for Azure Web PubSub development including troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. Use when building WebSocket/MQTT apps, using Soc","description":"# Azure Web PubSub Skill\n\nThis skill provides expert guidance for Azure Web PubSub. Covers troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. It combines local quick-reference content with remote documentation fetching capabilities.\n\n## How to Use This Skill\n\n> **IMPORTANT for Agent**: Use the **Category Index** below to locate relevant sections. For categories with line ranges (e.g., `L35-L120`), use `read_file` with the specified lines. For categories with file links (e.g., `[security.md](security.md)`), use `read_file` on the linked reference file\n\n> **IMPORTANT for Agent**: If `metadata.generated_at` is more than 3 months old, suggest the user pull the latest version from the repository. If `mcp_microsoftdocs` tools are not available, suggest the user install it: [Installation Guide](https://github.com/MicrosoftDocs/mcp/blob/main/README.md)\n\nThis skill requires **network access** to fetch documentation content:\n- **Preferred**: Use `mcp_microsoftdocs:microsoft_docs_fetch` with query string `from=learn-agent-skill`. Returns Markdown.\n- **Fallback**: Use `fetch_webpage` with query string `from=learn-agent-skill&accept=text/markdown`. Returns Markdown.\n\n## Category Index\n\n| Category | Lines | Description |\n|----------|-------|-------------|\n| Troubleshooting | L37-L46 | Diagnosing and fixing Azure Web PubSub issues: local handler debugging, service/resource logs, common errors, and Socket.IO-specific troubleshooting and diagnostics. |\n| Best Practices | L47-L51 | Guidance on building resilient WebSocket clients for Azure Web PubSub, including reconnection strategies, handling disconnects, error handling, and connection lifecycle best practices. |\n| Decision Making | L52-L57 | Guidance on configuring Web PubSub for high availability with zones and understanding pricing, billing meters, and cost considerations |\n| Architecture & Design Patterns | L58-L64 | Architectural patterns for Web PubSub: DR/resiliency design, bridging MQTT with Web PubSub, and understanding the internal Socket.IO support model. |\n| Limits & Quotas | L65-L70 | Capacity and performance limits for Web PubSub (connections, messages, scaling) and which Socket.IO server APIs aren’t supported or behave differently. |\n| Security | L71-L100 | Securing Azure Web PubSub: auth with Entra ID/managed identity/keys, mTLS, network isolation (VNets, private endpoints, firewalls), policies, key rotation, and client auth for WebSocket/Socket.IO/MQTT. |\n| Configuration | L101-L116 | Configuring Web PubSub behavior: monitoring/metrics, alerts, custom domains, event routing, geo-replication, client URLs, Socket.IO/MQTT options, local tunneling, and OData filters. |\n| Integrations & Coding Patterns | L117-L146 | Client/server integration patterns for Azure Web PubSub: SDK usage, WebSocket/MQTT, REST, CloudEvents, Functions bindings, Socket.IO, auth, and reliable messaging subprotocols. |\n| Deployment | L147-L153 | Guides for moving Web PubSub across regions, configuring Premium autoscale, and deploying/migrating Socket.IO apps and serverless chat to Azure Web PubSub. |\n\n### Troubleshooting\n| Topic | URL |\n|-------|-----|\n| Debug Azure Web PubSub event handlers locally | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-local-debug-event-handler |\n| Troubleshoot common Azure Web PubSub issues | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-troubleshoot-common-issues |\n| Use Web PubSub resource logs for troubleshooting | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-troubleshoot-resource-logs |\n| Resolve common Azure Web PubSub service issues | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/resource-faq |\n| Troubleshoot Web PubSub for Socket.IO common issues | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-troubleshoot-common-issues |\n| Collect diagnostic logs for Web PubSub Socket.IO | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-troubleshoot-logging |\n\n### Best Practices\n| Topic | URL |\n|-------|-----|\n| Design reliable WebSocket clients for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-develop-reliable-clients |\n\n### Decision Making\n| Topic | URL |\n|-------|-----|\n| Use availability zones and zone redundancy for Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-availability-zones |\n| Understand Azure Web PubSub billing model | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-billing-model |\n\n### Architecture & Design Patterns\n| Topic | URL |\n|-------|-----|\n| Design resilient and DR architectures for Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-disaster-recovery |\n| Cross-protocol communication between MQTT and Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-mqtt-cross-protocol-communication |\n| Internal design of Web PubSub for Socket.IO support | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-service-internal |\n\n### Limits & Quotas\n| Topic | URL |\n|-------|-----|\n| Plan Web PubSub performance and capacity | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-performance |\n| Unsupported Socket.IO server APIs in Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-supported-server-apis |\n\n### Security\n| Topic | URL |\n|-------|-----|\n| Authorize Web PubSub access with Microsoft Entra ID | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-azure-ad-authorization |\n| Configure wildcard group role permissions in Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-wildcard-group-roles |\n| Authorize Azure Web PubSub requests with Microsoft Entra applications | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-authorize-from-application |\n| Authorize Azure Web PubSub with managed identity | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-authorize-from-managed-identity |\n| Enable client certificate (mTLS) for Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-client-certificate |\n| Configure Azure Web PubSub Application Firewall for client control | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-configure-application-firewall |\n| Create WebPubSubServiceClient in Java using Azure Identity | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-create-serviceclient-with-java-and-azure-identity |\n| Create WebPubSubServiceClient in JavaScript using Azure Identity | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-create-serviceclient-with-javascript-and-azure-identity |\n| Create WebPubSubServiceClient in .NET using Azure Identity | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-create-serviceclient-with-net-and-azure-identity |\n| Create WebPubSubServiceClient in Python using Azure Identity | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-create-serviceclient-with-python-and-azure-identity |\n| Disable key-based auth for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-disable-local-auth |\n| Secure Web PubSub with Azure Application Gateway | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-integrate-app-gateway |\n| Audit Azure Web PubSub compliance with Azure Policy | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-monitor-azure-policy |\n| Manage Azure Web PubSub network access control rules | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-secure-network-access-control |\n| Secure Azure Web PubSub with private endpoints and VNets | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-secure-private-endpoints |\n| Rotate Azure Web PubSub access keys safely | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-secure-rotate-access-key |\n| Secure Web PubSub outbound traffic to Azure Functions via shared private endpoints | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-secure-shared-private-endpoints |\n| Access Key Vault privately from Azure Web PubSub via shared endpoints | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-secure-shared-private-endpoints-key-vault |\n| Secure Web PubSub outbound traffic to Private Link Service | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-secure-shared-private-endpoints-private-link-service |\n| Use Azure Web PubSub service tags for network access control | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-service-tags |\n| Use managed identities with Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-use-managed-identity |\n| Apply built-in Azure Policy definitions to Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/policy-definitions |\n| Build serverless Web PubSub chat with client authentication | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/quickstart-serverless |\n| Authenticate with Web PubSub for Socket.IO | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-authentication |\n| Add authentication and permissions to Azure Web PubSub apps | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/tutorial-permission |\n| Authenticate and authorize MQTT clients for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/tutorial-upstream-auth-mqtt-client |\n\n### Configuration\n| Topic | URL |\n|-------|-----|\n| Use metrics and alerts for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-metrics |\n| Configure monitoring for Azure Web PubSub with Azure Monitor | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-azure-monitor |\n| Configure custom domains for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-custom-domain |\n| Configure Azure Web PubSub event handlers and routing | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-develop-eventhandler |\n| Enable geo-replication for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-enable-geo-replication |\n| Generate client access URLs for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-generate-client-access-url |\n| Reference for Azure Web PubSub monitoring metrics and logs | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-monitor-data-reference |\n| Use Azure Web PubSub local tunnel for development | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool |\n| CloudEvents extensions for Web PubSub MQTT handlers | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-mqtt-cloud-events |\n| Write OData filter expressions for Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-odata-filter |\n| Specification for Web PubSub Socket.IO Serverless Mode | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/socket-io-serverless-protocol |\n| Use Azure Socket.IO Admin UI for monitoring | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-troubleshoot-admin-ui |\n\n### Integrations & Coding Patterns\n| Topic | URL |\n|-------|-----|\n| Connect MQTT and WebSocket clients to Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-connect-mqtt-websocket-client |\n| Send Azure Web PubSub client events to Event Hubs | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-develop-event-listener |\n| Implement upstream servers for Azure Web PubSub events | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-web-pubsub-write-upstream-server |\n| Create WebSocket clients | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-websocket-connect |\n| Use C# client SDK for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-client-sdk-csharp |\n| Use Java client SDK for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-client-sdk-java |\n| Use JavaScript client SDK for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-client-sdk-javascript |\n| Use Python client SDK for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-client-sdk-python |\n| Follow Azure Web PubSub client specification | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-client-specification |\n| Handle Web PubSub events via HTTP CloudEvents | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-cloud-events |\n| Handle Web PubSub events via AMQP CloudEvents | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-cloud-events-amqp |\n| Use Web PubSub triggers and bindings in Azure Functions | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-functions-bindings |\n| Implement json.reliable.webpubsub.azure.v1 reliable messaging | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-json-reliable-webpubsub-subprotocol |\n| Use JSON WebSocket subprotocol for Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-json-webpubsub-subprotocol |\n| Use protobuf.reliable.webpubsub.azure.v1 reliable subprotocol | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-protobuf-reliable-webpubsub-subprotocol |\n| Use protobuf.webpubsub.azure.v1 WebSocket subprotocol | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-protobuf-webpubsub-subprotocol |\n| Call Azure Web PubSub data plane REST APIs | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-rest-api-data-plane |\n| REST API semantics for MQTT in Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-rest-api-mqtt |\n| Use .NET server SDK for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-server-sdk-csharp |\n| Use Java server SDK for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-server-sdk-java |\n| Use JavaScript server SDK for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-server-sdk-js |\n| Use Python server SDK for Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-server-sdk-python |\n| Authenticate and connect to Azure Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/samples-authenticate-and-connect |\n| Integrate Web PubSub for Socket.IO with API Management | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/socket-io-howto-integrate-apim |\n| Use Socket.IO Azure Functions triggers and bindings | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/socket-io-serverless-function-binding |\n| Integrate Web PubSub for Socket.IO into existing apps | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-quickstart |\n\n### Deployment\n| Topic | URL |\n|-------|-----|\n| Move Azure Web PubSub resources across regions | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-move-across-regions |\n| Configure autoscale for Azure Web PubSub Premium | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-scale-autoscale |\n| Deploy Socket.IO Serverless chat with Azure Functions | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/socket-io-serverless-quickstart |\n| Migrate self-hosted Socket.IO apps to Web PubSub | https://learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-migrate-from-self-hosted |","tags":["azure","web","pubsub","agent","skills","microsoftdocs","agent-skills","agentic-skills","agentskill","ai-agents","ai-coding","azure-functions"],"capabilities":["skill","source-microsoftdocs","skill-azure-web-pubsub","topic-agent","topic-agent-skills","topic-agentic-skills","topic-agentskill","topic-ai-agents","topic-ai-coding","topic-azure","topic-azure-functions","topic-azure-kubernetes-service","topic-azure-openai","topic-azure-sql-database","topic-azure-storage"],"categories":["Agent-Skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/MicrosoftDocs/Agent-Skills/azure-web-pubsub","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add MicrosoftDocs/Agent-Skills","source_repo":"https://github.com/MicrosoftDocs/Agent-Skills","install_from":"skills.sh"}},"qualityScore":"0.698","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 497 github stars · SKILL.md body (15,631 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T00:53:39.820Z","embedding":null,"createdAt":"2026-04-18T22:00:30.003Z","updatedAt":"2026-04-22T00:53:39.820Z","lastSeenAt":"2026-04-22T00:53:39.820Z","tsv":"'/en-us/azure/azure-web-pubsub/concept-availability-zones':539 '/en-us/azure/azure-web-pubsub/concept-azure-ad-authorization':624 '/en-us/azure/azure-web-pubsub/concept-billing-model':548 '/en-us/azure/azure-web-pubsub/concept-disaster-recovery':564 '/en-us/azure/azure-web-pubsub/concept-metrics':921 '/en-us/azure/azure-web-pubsub/concept-performance':600 '/en-us/azure/azure-web-pubsub/concept-wildcard-group-roles':636 '/en-us/azure/azure-web-pubsub/howto-authorize-from-application':648 '/en-us/azure/azure-web-pubsub/howto-authorize-from-managed-identity':658 '/en-us/azure/azure-web-pubsub/howto-azure-monitor':933 '/en-us/azure/azure-web-pubsub/howto-client-certificate':668 '/en-us/azure/azure-web-pubsub/howto-configure-application-firewall':680 '/en-us/azure/azure-web-pubsub/howto-connect-mqtt-websocket-client':1056 '/en-us/azure/azure-web-pubsub/howto-create-serviceclient-with-java-and-azure-identity':690 '/en-us/azure/azure-web-pubsub/howto-create-serviceclient-with-javascript-and-azure-identity':700 '/en-us/azure/azure-web-pubsub/howto-create-serviceclient-with-net-and-azure-identity':710 '/en-us/azure/azure-web-pubsub/howto-create-serviceclient-with-python-and-azure-identity':720 '/en-us/azure/azure-web-pubsub/howto-custom-domain':943 '/en-us/azure/azure-web-pubsub/howto-develop-event-listener':1068 '/en-us/azure/azure-web-pubsub/howto-develop-eventhandler':954 '/en-us/azure/azure-web-pubsub/howto-develop-reliable-clients':523 '/en-us/azure/azure-web-pubsub/howto-disable-local-auth':732 '/en-us/azure/azure-web-pubsub/howto-enable-geo-replication':965 '/en-us/azure/azure-web-pubsub/howto-generate-client-access-url':976 '/en-us/azure/azure-web-pubsub/howto-integrate-app-gateway':742 '/en-us/azure/azure-web-pubsub/howto-local-debug-event-handler':459 '/en-us/azure/azure-web-pubsub/howto-monitor-azure-policy':753 '/en-us/azure/azure-web-pubsub/howto-monitor-data-reference':988 '/en-us/azure/azure-web-pubsub/howto-move-across-regions':1326 '/en-us/azure/azure-web-pubsub/howto-scale-autoscale':1336 '/en-us/azure/azure-web-pubsub/howto-secure-network-access-control':764 '/en-us/azure/azure-web-pubsub/howto-secure-private-endpoints':776 '/en-us/azure/azure-web-pubsub/howto-secure-rotate-access-key':786 '/en-us/azure/azure-web-pubsub/howto-secure-shared-private-endpoints':801 '/en-us/azure/azure-web-pubsub/howto-secure-shared-private-endpoints-key-vault':815 '/en-us/azure/azure-web-pubsub/howto-secure-shared-private-endpoints-private-link-service':827 '/en-us/azure/azure-web-pubsub/howto-service-tags':840 '/en-us/azure/azure-web-pubsub/howto-troubleshoot-common-issues':468 '/en-us/azure/azure-web-pubsub/howto-troubleshoot-resource-logs':478 '/en-us/azure/azure-web-pubsub/howto-use-managed-identity':850 '/en-us/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool':999 '/en-us/azure/azure-web-pubsub/howto-web-pubsub-write-upstream-server':1079 '/en-us/azure/azure-web-pubsub/howto-websocket-connect':1085 '/en-us/azure/azure-web-pubsub/policy-definitions':863 '/en-us/azure/azure-web-pubsub/quickstart-serverless':874 '/en-us/azure/azure-web-pubsub/reference-client-sdk-csharp':1096 '/en-us/azure/azure-web-pubsub/reference-client-sdk-java':1107 '/en-us/azure/azure-web-pubsub/reference-client-sdk-javascript':1118 '/en-us/azure/azure-web-pubsub/reference-client-sdk-python':1129 '/en-us/azure/azure-web-pubsub/reference-client-specification':1138 '/en-us/azure/azure-web-pubsub/reference-cloud-events':1148 '/en-us/azure/azure-web-pubsub/reference-cloud-events-amqp':1158 '/en-us/azure/azure-web-pubsub/reference-functions-bindings':1170 '/en-us/azure/azure-web-pubsub/reference-json-reliable-webpubsub-subprotocol':1178 '/en-us/azure/azure-web-pubsub/reference-json-webpubsub-subprotocol':1188 '/en-us/azure/azure-web-pubsub/reference-mqtt-cloud-events':1009 '/en-us/azure/azure-web-pubsub/reference-mqtt-cross-protocol-communication':576 '/en-us/azure/azure-web-pubsub/reference-odata-filter':1019 '/en-us/azure/azure-web-pubsub/reference-protobuf-reliable-webpubsub-subprotocol':1196 '/en-us/azure/azure-web-pubsub/reference-protobuf-webpubsub-subprotocol':1204 '/en-us/azure/azure-web-pubsub/reference-rest-api-data-plane':1215 '/en-us/azure/azure-web-pubsub/reference-rest-api-mqtt':1227 '/en-us/azure/azure-web-pubsub/reference-server-sdk-csharp':1238 '/en-us/azure/azure-web-pubsub/reference-server-sdk-java':1249 '/en-us/azure/azure-web-pubsub/reference-server-sdk-js':1260 '/en-us/azure/azure-web-pubsub/reference-server-sdk-python':1271 '/en-us/azure/azure-web-pubsub/resource-faq':488 '/en-us/azure/azure-web-pubsub/samples-authenticate-and-connect':1281 '/en-us/azure/azure-web-pubsub/socket-io-howto-integrate-apim':1292 '/en-us/azure/azure-web-pubsub/socket-io-serverless-function-binding':1302 '/en-us/azure/azure-web-pubsub/socket-io-serverless-protocol':1029 '/en-us/azure/azure-web-pubsub/socket-io-serverless-quickstart':1346 '/en-us/azure/azure-web-pubsub/socketio-authentication':883 '/en-us/azure/azure-web-pubsub/socketio-migrate-from-self-hosted':1358 '/en-us/azure/azure-web-pubsub/socketio-quickstart':1313 '/en-us/azure/azure-web-pubsub/socketio-service-internal':587 '/en-us/azure/azure-web-pubsub/socketio-supported-server-apis':610 '/en-us/azure/azure-web-pubsub/socketio-troubleshoot-admin-ui':1039 '/en-us/azure/azure-web-pubsub/socketio-troubleshoot-common-issues':498 '/en-us/azure/azure-web-pubsub/socketio-troubleshoot-logging':508 '/en-us/azure/azure-web-pubsub/tutorial-permission':895 '/en-us/azure/azure-web-pubsub/tutorial-upstream-auth-mqtt-client':907 '/microsoftdocs/mcp/blob/main/readme.md)':167 '/mqtt':389 '3':138 'accept':206 'access':172,617,759,781,802,836,968 'across':431,1322 'add':884 'admin':1033 'agent':87,131,190,204 'alert':377,914 'amqp':1154 'api':333,604,1212,1217,1288 'app':34,439,892,1310,1352 'appli':851 'applic':645,673,738 'architectur':18,56,289,295,549,558 'aren':334 'audit':743 'auth':348,365,417,725 'authent':871,875,885,896,1272 'author':614,637,649,898 'autoscal':435,1328 'avail':157,278,529 'azur':2,8,37,47,222,251,345,406,444,451,462,481,518,541,631,638,650,670,686,696,706,716,727,737,744,749,755,766,778,793,807,829,845,855,889,902,916,925,929,938,945,960,971,979,990,1031,1051,1058,1073,1091,1102,1113,1124,1131,1166,1206,1222,1233,1244,1255,1266,1276,1295,1318,1330,1342 'azure-web-pubsub':1 'base':724 'behav':338 'behavior':375 'best':14,52,239,264,509 'bill':284,544 'bind':415,1164,1299 'bridg':302 'build':32,246,864 'built':853 'built-in':852 'c':1087 'call':1205 'capabl':79 'capac':319,597 'categori':90,98,114,210,212 'certif':661 'chat':442,868,1340 'client':249,364,385,516,660,676,870,900,967,1049,1061,1082,1088,1099,1110,1121,1134 'client/server':402 'cloudev':413,1000,1145,1155 'code':26,64,397,1041 'collect':499 'combin':69 'common':231,461,480,494 'communic':568 'complianc':747 'configur':24,62,273,368,372,433,625,669,908,922,934,944,1327 'connect':262,326,1045,1274 'consider':288 'content':74,176 'control':677,760,837 'cost':287 'cover':50 'creat':681,691,701,711,1080 'cross':566 'cross-protocol':565 'custom':378,935 'data':1209 'debug':228,450 'decis':16,54,266,524 'definit':857 'deploy':29,67,422,1314,1337 'deploying/migrating':437 'descript':214 'design':19,57,290,301,513,550,554,578 'develop':11,996 'diagnos':219 'diagnost':238,500 'differ':339 'disabl':721 'disconnect':258 'doc':182 'document':77,175 'domain':379,936 'dr':557 'dr/resiliency':300 'e.g':102,118 'enabl':659,955 'endpoint':358,771,798,812 'entra':350,620,644 'error':232,259 'event':380,454,948,1062,1064,1076,1142,1152 'exist':1309 'expert':5,44 'express':1013 'extens':1001 'fallback':194 'fetch':78,174,183,196 'file':108,116,123,128 'filter':395,1012 'firewal':359,674 'fix':221 'follow':1130 'function':414,794,1167,1296,1343 'gateway':739 'generat':966 'geo':383,957 'geo-repl':382,956 'github.com':166 'github.com/microsoftdocs/mcp/blob/main/readme.md)':165 'group':627 'guid':164,426 'guidanc':45,244,271 'handl':257,260,1139,1149 'handler':227,455,949,1006 'high':277 'host':1350 'http':1144 'hub':1065 'id':621 'id/managed':351 'ident':655,687,697,707,717,843 'identity/keys':352 'implement':1069,1171 'import':85,129 'includ':12,254 'index':91,211 'instal':161,163 'integr':25,63,396,403,1040,1282,1303 'intern':310,577 'isol':355 'issu':225,465,485,495 'java':684,1098,1240 'javascript':694,1109,1251 'json':1180 'json.reliable.webpubsub.azure':1172 'key':361,723,782,803 'key-bas':722 'knowledg':6 'l100':343 'l101':370 'l101-l116':369 'l116':371 'l117':400 'l117-l146':399 'l120':105 'l146':401 'l147':424 'l147-l153':423 'l153':425 'l35':104 'l35-l120':103 'l37':217 'l37-l46':216 'l46':218 'l47':242 'l47-l51':241 'l51':243 'l52':269 'l52-l57':268 'l57':270 'l58':293 'l58-l64':292 'l64':294 'l65':317 'l65-l70':316 'l70':318 'l71':342 'l71-l100':341 'latest':146 'learn':189,203 'learn-agent-skil':188,202 'learn.microsoft.com':458,467,477,487,497,507,522,538,547,563,575,586,599,609,623,635,647,657,667,679,689,699,709,719,731,741,752,763,775,785,800,814,826,839,849,862,873,882,894,906,920,932,942,953,964,975,987,998,1008,1018,1028,1038,1055,1067,1078,1084,1095,1106,1117,1128,1137,1147,1157,1169,1177,1187,1195,1203,1214,1226,1237,1248,1259,1270,1280,1291,1301,1312,1325,1335,1345,1357 'learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-availability-zones':537 'learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-azure-ad-authorization':622 'learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-billing-model':546 'learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-disaster-recovery':562 'learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-metrics':919 'learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-performance':598 'learn.microsoft.com/en-us/azure/azure-web-pubsub/concept-wildcard-group-roles':634 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-authorize-from-application':646 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-authorize-from-managed-identity':656 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-azure-monitor':931 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-client-certificate':666 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-configure-application-firewall':678 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-connect-mqtt-websocket-client':1054 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-create-serviceclient-with-java-and-azure-identity':688 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-create-serviceclient-with-javascript-and-azure-identity':698 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-create-serviceclient-with-net-and-azure-identity':708 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-create-serviceclient-with-python-and-azure-identity':718 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-custom-domain':941 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-develop-event-listener':1066 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-develop-eventhandler':952 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-develop-reliable-clients':521 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-disable-local-auth':730 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-enable-geo-replication':963 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-generate-client-access-url':974 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-integrate-app-gateway':740 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-local-debug-event-handler':457 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-monitor-azure-policy':751 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-monitor-data-reference':986 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-move-across-regions':1324 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-scale-autoscale':1334 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-secure-network-access-control':762 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-secure-private-endpoints':774 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-secure-rotate-access-key':784 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-secure-shared-private-endpoints':799 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-secure-shared-private-endpoints-key-vault':813 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-secure-shared-private-endpoints-private-link-service':825 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-service-tags':838 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-troubleshoot-common-issues':466 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-troubleshoot-resource-logs':476 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-use-managed-identity':848 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool':997 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-web-pubsub-write-upstream-server':1077 'learn.microsoft.com/en-us/azure/azure-web-pubsub/howto-websocket-connect':1083 'learn.microsoft.com/en-us/azure/azure-web-pubsub/policy-definitions':861 'learn.microsoft.com/en-us/azure/azure-web-pubsub/quickstart-serverless':872 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-client-sdk-csharp':1094 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-client-sdk-java':1105 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-client-sdk-javascript':1116 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-client-sdk-python':1127 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-client-specification':1136 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-cloud-events':1146 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-cloud-events-amqp':1156 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-functions-bindings':1168 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-json-reliable-webpubsub-subprotocol':1176 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-json-webpubsub-subprotocol':1186 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-mqtt-cloud-events':1007 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-mqtt-cross-protocol-communication':574 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-odata-filter':1017 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-protobuf-reliable-webpubsub-subprotocol':1194 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-protobuf-webpubsub-subprotocol':1202 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-rest-api-data-plane':1213 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-rest-api-mqtt':1225 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-server-sdk-csharp':1236 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-server-sdk-java':1247 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-server-sdk-js':1258 'learn.microsoft.com/en-us/azure/azure-web-pubsub/reference-server-sdk-python':1269 'learn.microsoft.com/en-us/azure/azure-web-pubsub/resource-faq':486 'learn.microsoft.com/en-us/azure/azure-web-pubsub/samples-authenticate-and-connect':1279 'learn.microsoft.com/en-us/azure/azure-web-pubsub/socket-io-howto-integrate-apim':1290 'learn.microsoft.com/en-us/azure/azure-web-pubsub/socket-io-serverless-function-binding':1300 'learn.microsoft.com/en-us/azure/azure-web-pubsub/socket-io-serverless-protocol':1027 'learn.microsoft.com/en-us/azure/azure-web-pubsub/socket-io-serverless-quickstart':1344 'learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-authentication':881 'learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-migrate-from-self-hosted':1356 'learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-quickstart':1311 'learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-service-internal':585 'learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-supported-server-apis':608 'learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-troubleshoot-admin-ui':1037 'learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-troubleshoot-common-issues':496 'learn.microsoft.com/en-us/azure/azure-web-pubsub/socketio-troubleshoot-logging':506 'learn.microsoft.com/en-us/azure/azure-web-pubsub/tutorial-permission':893 'learn.microsoft.com/en-us/azure/azure-web-pubsub/tutorial-upstream-auth-mqtt-client':905 'lifecycl':263 'limit':21,59,314,322,588 'line':100,112,213 'link':117,126,823 'local':70,226,391,456,993 'locat':94 'log':230,473,501,985 'make':17,55,267,525 'manag':654,754,842,1289 'markdown':193,209 'mcp':152,179 'messag':327,420,1175 'metadata.generated':133 'meter':285 'metric':912,983 'microsoft':181,619,643 'microsoftdoc':153,180 'migrat':1347 'mode':1026 'model':313,545 'monitor':923,930,982,1036 'monitoring/metrics':376 'month':139 'move':428,1317 'mqtt':303,570,899,1005,1046,1220 'mtls':353,662 'net':704,1229 'network':171,354,758,835 'odata':394,1011 'old':140 'option':390 'outbound':790,819 'pattern':20,27,58,65,291,296,398,404,551,1042 'perform':321,595 'permiss':629,887 'plan':592 'plane':1210 'polici':360,750,856 'practic':15,53,240,265,510 'prefer':177 'premium':434,1333 'price':283 'privat':357,770,797,805,822 'protobuf.reliable.webpubsub.azure':1190 'protobuf.webpubsub.azure':1198 'protocol':567 'provid':43 'pubsub':4,10,39,49,224,253,275,299,306,325,347,374,408,430,446,453,464,471,483,491,504,520,536,543,561,573,581,594,607,616,633,640,652,665,672,729,735,746,757,768,780,789,809,818,831,847,860,867,878,891,904,918,927,940,947,962,973,981,992,1004,1016,1023,1053,1060,1075,1093,1104,1115,1126,1133,1141,1151,1161,1185,1208,1224,1235,1246,1257,1268,1278,1284,1305,1320,1332,1355 'pull':144 'python':714,1120,1262 'queri':185,199 'quick':72 'quick-refer':71 'quota':22,60,315,589 'rang':101 'read':107,122 'reconnect':255 'redund':533 'refer':73,127,977 'region':432,1323 'relev':95 'reliabl':419,514,1174,1192 'remot':76 'replic':384,958 'repositori':150 'request':641 'requir':170 'resili':247,555 'resolv':479 'resourc':472,1321 'rest':412,1211,1216 'return':192,208 'role':628 'rotat':362,777 'rout':381,951 'rule':761 'safe':783 'scale':328 'sdk':409,1089,1100,1111,1122,1231,1242,1253,1264 'section':96 'secur':23,61,340,344,611,733,765,787,816 'security.md':119,120 'self':1349 'self-host':1348 'semant':1218 'send':1057 'server':332,603,1071,1230,1241,1252,1263 'serverless':441,865,1025,1339 'servic':484,824,832 'service/resource':229 'share':796,811 'skill':40,42,84,169,191,205 'skill-azure-web-pubsub' 'soc':36 'socket.io':234,311,331,388,416,438,493,505,583,602,880,1024,1032,1286,1294,1307,1338,1351 'socket.io/mqtt':387 'source-microsoftdocs' 'specif':235,1020,1135 'specifi':111 'strategi':256 'string':186,200 'subprotocol':421,1182,1193,1201 'suggest':141,158 'support':312,336,584 'tag':833 'text/markdown':207 'tool':154 'topic':448,511,526,552,590,612,909,1043,1315 'topic-agent' 'topic-agent-skills' 'topic-agentic-skills' 'topic-agentskill' 'topic-ai-agents' 'topic-ai-coding' 'topic-azure' 'topic-azure-functions' 'topic-azure-kubernetes-service' 'topic-azure-openai' 'topic-azure-sql-database' 'topic-azure-storage' 'traffic':791,820 'trigger':1162,1297 'troubleshoot':13,51,215,236,447,460,475,489 'tunnel':392,994 'ui':1034 'understand':282,308,540 'unsupport':601 'upstream':1070 'url':386,449,512,527,553,591,613,910,969,1044,1316 'usag':410 'use':30,35,82,88,106,121,178,195,469,528,685,695,705,715,828,841,911,989,1030,1086,1097,1108,1119,1159,1179,1189,1197,1228,1239,1250,1261,1293 'user':143,160 'v1':1173,1191,1199 'vault':804 'version':147 'via':795,810,1143,1153 'vnet':356,773 'web':3,9,38,48,223,252,274,298,305,324,346,373,407,429,445,452,463,470,482,490,503,519,535,542,560,572,580,593,606,615,632,639,651,664,671,728,734,745,756,767,779,788,808,817,830,846,859,866,877,890,903,917,926,939,946,961,972,980,991,1003,1015,1022,1052,1059,1074,1092,1103,1114,1125,1132,1140,1150,1160,1184,1207,1223,1234,1245,1256,1267,1277,1283,1304,1319,1331,1354 'webpag':197 'webpubsubservicecli':682,692,702,712 'websocket':248,515,1048,1081,1181,1200 'websocket/mqtt':33,411 'websocket/socket.io/mqtt':367 'wildcard':626 'write':1010 'zone':280,530,532","prices":[{"id":"94d12308-79c9-4c01-98bc-7ee5e2faa862","listingId":"2ec05053-e3c4-423d-b447-9b08999aa64b","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"MicrosoftDocs","category":"Agent-Skills","install_from":"skills.sh"},"createdAt":"2026-04-18T22:00:30.003Z"}],"sources":[{"listingId":"2ec05053-e3c4-423d-b447-9b08999aa64b","source":"github","sourceId":"MicrosoftDocs/Agent-Skills/azure-web-pubsub","sourceUrl":"https://github.com/MicrosoftDocs/Agent-Skills/tree/main/skills/azure-web-pubsub","isPrimary":false,"firstSeenAt":"2026-04-18T22:00:30.003Z","lastSeenAt":"2026-04-22T00:53:39.820Z"}],"details":{"listingId":"2ec05053-e3c4-423d-b447-9b08999aa64b","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"MicrosoftDocs","slug":"azure-web-pubsub","github":{"repo":"MicrosoftDocs/Agent-Skills","stars":497,"topics":["agent","agent-skills","agentic-skills","agentskill","ai","ai-agents","ai-coding","azure","azure-functions","azure-kubernetes-service","azure-openai","azure-sql-database","azure-storage","azure-virtual-machine","claude-code","github-copilot","microsoft-learn","openai-codex","skills"],"license":"cc-by-4.0","html_url":"https://github.com/MicrosoftDocs/Agent-Skills","pushed_at":"2026-04-19T02:43:40Z","description":"Curated Agent Skills for Microsoft & Azure – giving AI coding assistants structured, real-time expertise from Microsoft Learn docs.","skill_md_sha":"c4a32494bc0941d70a8f5647f81af40616289928","skill_md_path":"skills/azure-web-pubsub/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/MicrosoftDocs/Agent-Skills/tree/main/skills/azure-web-pubsub"},"layout":"multi","source":"github","category":"Agent-Skills","frontmatter":{"name":"azure-web-pubsub","description":"Expert knowledge for Azure Web PubSub development including troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. Use when building WebSocket/MQTT apps, using Socket.IO, geo-replication, private endpoints, or Functions bindings, and other Azure Web PubSub related development tasks. Not for Azure SignalR Service (use azure-signalr-service), Azure Event Hubs (use azure-event-hubs), Azure Service Bus (use azure-service-bus), Azure Relay (use azure-relay).","compatibility":"Requires network access. Uses mcp_microsoftdocs:microsoft_docs_fetch or fetch_webpage to retrieve documentation."},"skills_sh_url":"https://skills.sh/MicrosoftDocs/Agent-Skills/azure-web-pubsub"},"updatedAt":"2026-04-22T00:53:39.820Z"}}