Azure Communication Services REST API

Azure Communication Services REST API provides cloud-based communication capabilities for voice calling, video calling, SMS messaging, email, and chat. It supports Teams interoperability, phone number management, call recording, and identity management for custom communication applications.

OpenAPI Specification

microsoft-azure-communication-services-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Azure Communication Services REST API
  description: Azure Communication Services REST APIs provide messaging, telephony, identity, chat, and
    email capabilities. Authentication uses HMAC SHA256 or Azure AD tokens.
  version: '2024-08-01'
externalDocs:
  description: Azure Communication Services REST API Documentation
  url: https://learn.microsoft.com/en-us/rest/api/communication/
servers:
- url: https://{resource}.communication.azure.com
  variables:
    resource:
      default: myresource
tags:
- name: Identity
- name: SMS
- name: Email
- name: Chat
security:
- hmac: []
paths:
  /identities:
    post:
      operationId: createIdentity
      summary: ACS Create identity
      description: Creates a new communication user identity.
      tags:
      - Identity
      parameters:
      - name: api-version
        in: query
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Identity created
          content:
            application/json:
              schema:
                type: object
                properties:
                  identity:
                    type: object
                    properties:
                      id:
                        type: string
  /identities/{id}:
    parameters:
    - name: id
      in: path
      required: true
      schema:
        type: string
    - name: api-version
      in: query
      required: true
      schema:
        type: string
    delete:
      operationId: deleteIdentity
      summary: ACS Delete identity
      description: Deletes a communication user identity.
      tags:
      - Identity
      responses:
        '204':
          description: Identity deleted
  /identities/{id}/:issueAccessToken:
    parameters:
    - name: id
      in: path
      required: true
      schema:
        type: string
    - name: api-version
      in: query
      required: true
      schema:
        type: string
    post:
      operationId: issueAccessToken
      summary: ACS Issue access token
      description: Issues a scoped access token for an identity.
      tags:
      - Identity
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                scopes:
                  type: array
                  items:
                    type: string
      responses:
        '200':
          description: Token issued
          content:
            application/json:
              schema:
                type: object
                properties:
                  token:
                    type: string
                  expiresOn:
                    type: string
  /sms:
    post:
      operationId: sendSms
      summary: ACS Send SMS
      description: Sends one or more SMS messages.
      tags:
      - SMS
      parameters:
      - name: api-version
        in: query
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                from:
                  type: string
                smsRecipients:
                  type: array
                  items:
                    type: object
                message:
                  type: string
      responses:
        '202':
          description: Send accepted
          content:
            application/json:
              schema:
                type: object
  /emails:send:
    post:
      operationId: sendEmail
      summary: ACS Send email
      description: Queues an email for delivery.
      tags:
      - Email
      parameters:
      - name: api-version
        in: query
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '202':
          description: Email accepted
          headers:
            Operation-Location:
              schema:
                type: string
components:
  securitySchemes:
    hmac:
      type: apiKey
      in: header
      name: Authorization
      description: HMAC-SHA256 signed Authorization header
x-generated-from: https://learn.microsoft.com/en-us/rest/api/communication/
x-generated-by: claude-crawl-2026-05-08