openapi: 3.0.3 info: title: Microsoft Graph Teams Apps Calls API description: Core REST API for accessing Microsoft Teams data including teams, channels, messages, tabs, apps, calls, and online meetings through Microsoft Graph. version: 1.0.0 contact: name: Microsoft Graph Support url: https://developer.microsoft.com/graph/support license: name: Microsoft API Terms of Use url: https://learn.microsoft.com/en-us/legal/microsoft-apis/terms-of-use x-generated-from: documentation x-last-validated: '2026-04-18' servers: - url: https://graph.microsoft.com/v1.0 description: Microsoft Graph v1.0 production endpoint security: - oauth2: - Team.ReadBasic.All - Channel.ReadBasic.All - ChatMessage.Read tags: - name: Calls description: Operations for initiating and managing calls. paths: /communications/calls: post: operationId: createCall summary: Microsoft Teams Create Call description: Create a new outgoing call or join a meeting. tags: - Calls requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Call' examples: CreateCallRequestExample: summary: Default createCall request x-microcks-default: true value: callbackUri: https://contoso.com/callback requestedModalities: - audio subject: Quick sync responses: '201': description: Call created successfully. content: application/json: schema: $ref: '#/components/schemas/Call' '400': description: Bad request. '401': description: Unauthorized. x-microcks-operation: delay: 0 dispatcher: FALLBACK /communications/calls/{call-id}: get: operationId: getCall summary: Microsoft Teams Get Call description: Retrieve the current state of a call. tags: - Calls parameters: - name: call-id in: path required: true description: The unique identifier of the call. schema: type: string responses: '200': description: Call returned successfully. content: application/json: schema: $ref: '#/components/schemas/Call' '401': description: Unauthorized. '404': description: Call not found. x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: hangUpCall summary: Microsoft Teams Hang Up Call description: Hang up or terminate an active call. tags: - Calls parameters: - name: call-id in: path required: true description: The unique identifier of the call. schema: type: string responses: '204': description: Call terminated successfully. '401': description: Unauthorized. '404': description: Call not found. x-microcks-operation: delay: 0 dispatcher: FALLBACK /communications/calls/{call-id}/answer: post: operationId: answerCall summary: Microsoft Teams Answer Call description: Answer an incoming call. tags: - Calls parameters: - name: call-id in: path required: true description: The unique identifier of the call. schema: type: string requestBody: required: true content: application/json: schema: type: object properties: callbackUri: type: string format: uri acceptedModalities: type: array items: type: string mediaConfig: type: object responses: '202': description: Call answer accepted. '401': description: Unauthorized. x-microcks-operation: delay: 0 dispatcher: FALLBACK /communications/calls/{call-id}/reject: post: operationId: rejectCall summary: Microsoft Teams Reject Call description: Reject an incoming call. tags: - Calls parameters: - name: call-id in: path required: true description: The unique identifier of the call. schema: type: string requestBody: content: application/json: schema: type: object properties: reason: type: string enum: - none - busy - forbidden responses: '202': description: Call rejection accepted. '401': description: Unauthorized. x-microcks-operation: delay: 0 dispatcher: FALLBACK /communications/calls/{call-id}/transfer: post: operationId: transferCall summary: Microsoft Teams Transfer Call description: Transfer an active call to another participant. tags: - Calls parameters: - name: call-id in: path required: true description: The unique identifier of the call. schema: type: string requestBody: required: true content: application/json: schema: type: object properties: transferTarget: type: object properties: identity: type: object properties: user: type: object properties: id: type: string responses: '202': description: Transfer accepted. '401': description: Unauthorized. x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: Call: type: object description: Represents a call in Teams. properties: id: type: string description: Unique identifier for the call. example: call-abc123 state: type: string enum: - incoming - establishing - ringing - established - hold - transferring - transferAccepted - redirecting - terminating - terminated description: Current call state. example: established direction: type: string enum: - incoming - outgoing description: Direction of the call. example: outgoing subject: type: string description: Subject of the call. example: Quick sync callbackUri: type: string format: uri description: Callback URL for call notifications. requestedModalities: type: array items: type: string enum: - audio - video - videoBasedScreenSharing description: Requested communication modalities. securitySchemes: oauth2: type: oauth2 description: OAuth 2.0 authorization using Microsoft Identity Platform flows: authorizationCode: authorizationUrl: https://login.microsoftonline.com/common/oauth2/v2.0/authorize tokenUrl: https://login.microsoftonline.com/common/oauth2/v2.0/token scopes: Team.ReadBasic.All: Read teams basic info Team.Create: Create teams Channel.ReadBasic.All: Read channel basic info Channel.Create: Create channels ChannelMessage.Read.All: Read channel messages ChatMessage.Read: Read chat messages ChatMessage.Send: Send chat messages Calls.Initiate.All: Initiate calls Calls.JoinGroupCall.All: Join group calls OnlineMeetings.ReadWrite.All: Create and manage online meetings