Documentation

1. Overview
    1.1. About IoT Device Provisioning Service
2. Quickstarts
    2.1. Set up auto-provisioning - Azure CLI
    2.2. Set up auto-provisioning - Portal
    2.3. Set up auto-provisioning - Template
    2.4. Auto-provision a simulated device
        2.4.1. TPM attestation
            2.4.1.1. C
            2.4.1.2. Java
            2.4.1.3. C#
            2.4.1.4. Node.js
            2.4.1.5. Python
        2.4.2. X.509 attestation
            2.4.2.1. C
            2.4.2.2. Java
            2.4.2.3. C#
            2.4.2.4. Node.js
            2.4.2.5. Python
        2.4.3. Symmetric Key attestation
            2.4.3.1. C
    2.5. Device enrollment using provisioning service APIs
        2.5.1. TPM attestation
            2.5.1.1. Java
            2.5.1.2. C#
            2.5.1.3. Node.js
            2.5.1.4. Python
        2.5.2. X.509 attestation
            2.5.2.1. Java
            2.5.2.2. C#
            2.5.2.3. Node.js
            2.5.2.4. Python
3. Tutorials
    3.1. 1 - Set up cloud resources
    3.2. 2 - Set up device
    3.3. 3 - Provision a device to an IoT hub
        3.3.1. C
        3.3.2. C#
    3.4. 4 - Provision devices to multiple hubs
    3.5. 5 - Provision group enrollments
4. Concepts
    4.1. Auto-provisioning
    4.2. Reprovisioning
    4.3. Devices
    4.4. Security
    4.5. Service
    4.6. TPM attestation
    4.7. Symmetric key attestation
5. How-to guides
    5.1. Connect MXChip IoT DevKit to IoT Hub
    5.2. Manage Device Provisioning Service configuration
        5.2.1. Manage enrollments - Portal
        5.2.2. Manage enrollments - Service SDKs
        5.2.3. Configure verified CA certificates
        5.2.4. Roll device certificates
        5.2.5. Reprovision devices
        5.2.6. Manage disenrollment
        5.2.7. Manage deprovisioning
    5.3. Manage Device Provisioning Service
        5.3.1. Configure Device Provisioning Service using Azure CLI
        5.3.2. Control access to Provisioning Service APIs
    5.4. Provision IoT Edge devices
        5.4.1. Linux
        5.4.2. Windows
    5.5. Use attestation mechanisms with SDK
    5.6. Provision for multitenancy
    5.7. Use custom allocation policies
    5.8. Use symmetric keys with legacy devices
    5.9. Use SDK tools for development
    5.10. How to send additional data from devices
    5.11. Troubleshooting
    5.12. Communicate with your DPS using MQTT protocol
6. Reference
    6.1. REST API
    6.2. Resource Manager template
    6.3. Azure IoT SDK for C
    6.4. Azure IoT SDK for Python
    6.5. Azure IoT SDK for Node.js
    6.6. Azure IoT SDK for Java
    6.7. Azure IoT SDK for .NET
7. Related
    7.1. Solutions
        7.1.1. IoT Central
        7.1.2. IoT solution accelerators
    7.2. Platform services
        7.2.1. IoT Hub
        7.2.2. IoT Plug and Play
        7.2.3. IoT Hub Device Provisioning Service
        7.2.4. IoT Service SDKs
        7.2.5. Maps
        7.2.6. Time Series Insights
    7.3. IoT Edge
        7.3.1. Azure IoT Edge
        7.3.2. IoT Device SDKs
8. Resources
    8.1. Azure IoT Samples for C# (.NET)
    8.2. Azure IoT Samples for Node.js
    8.3. Azure IoT Samples for Java
    8.4. Azure IoT Samples for Python
    8.5. Azure IoT Samples for iOS Platform
    8.6. Azure IoT Hub
    8.7. Azure Certified for IoT device catalog
    8.8. Azure IoT Developer Center
    8.9. Customer data requests
    8.10. Azure Roadmap
    8.11. Device Explorer tool
    8.12. iothub-diagnostics tool
    8.13. MSDN forum
    8.14. Pricing
    8.15. Pricing calculator
    8.16. Service updates
    8.17. Stack Overflow
    8.18. Technical case studies
    8.19. Videos