Answer a Microsoft Teams Call

VerifiedSafe

Answer an incoming call via the Microsoft Teams API using the answer endpoint. Requires an access token and appropriate scopes.

Sby Skills Guide Bot
ProductivityIntermediate
8/1/2026
Claude CodeCursorWindsurfCopilotCodex
#microsoft-teams#calls#rest-api#oauth#communications

Recommended for

Automated summary

This skill answers an incoming Microsoft Teams call through the Graph API by sending a POST request to /communications/calls/{call-id}/answer.

Strengths

  • Documents the endpoint, required headers and request body parameters precisely
  • Provides a complete curl example with the expected JSON payload
  • Specifies the required OAuth scope (Calls.Initiate.All) and the 202 Accepted response
  • Covers accepted modalities (audio, video, screen sharing) and optional media configuration

Limitations

  • Assumes the call ID and access token are already obtained
  • Does not describe error handling or possible failure status codes
  • mediaConfig is only referenced as an opaque blob with little detail
When to use it

Use it when a bot or agent must programmatically answer a known incoming Teams call.

When not to use it

Avoid it if you first need to discover or list incoming calls, since this skill only covers the answer action.

Security analysis

Safe
Quality score82/100

The skill documents a specific Microsoft Teams API call using a localhost sandbox and includes a curl example with placeholder credentials. It does not instruct destructive actions, exfiltration, obfuscation, or disabling safety controls. The only mild consideration is that it shows how to send a bearer token, but this is standard API usage and not inherently risky.

No concerns found

How this analysis is made

Examples

Answer an audio call
Answer the incoming Teams call with ID abc-123 accepting only audio, using https://bot.example.com/api/calls as the callback URI.
Answer with video and screen sharing
Answer Teams call 7f2c9d accepting audio, video and videoBasedScreenSharing, and set the callback URL to my bot endpoint.
Answer with app-hosted media
Send the POST to /communications/calls/{call-id}/answer with acceptedModalities ['audio'] and an appHostedMediaConfig blob, then confirm the 202 status.

Answer Call

Answer an incoming call in Microsoft Teams communications.

API Details

  • API Name: Microsoft Teams API
  • OpenAPI Ref: ../../openapi/microsoft-teams-openapi.yaml
  • Endpoint: POST /communications/calls/{call-id}/answer
  • Operation ID: answerCall
  • Tag: Calls

Sandbox

  • Base URL: http://localhost:8080/rest/microsoft-teams-api/1.0.0

Required Headers

  • Authorization: Bearer {access_token}
  • Content-Type: application/json

OAuth Scopes

  • Calls.Initiate.All

Parameters

Path Parameters

| Name | Type | Required | Description | |------|------|----------|-------------| | call-id | string | Yes | The unique identifier of the call |

Request Body

| Name | Type | Required | Description | |------|------|----------|-------------| | callbackUri | string | Yes | The callback URL for call state notifications | | acceptedModalities | array | Yes | The accepted modalities (audio, video, videoBasedScreenSharing) | | mediaConfig | object | No | The media configuration for the call |

Example Request

curl -X POST "http://localhost:8080/rest/microsoft-teams-api/1.0.0/communications/calls/{call-id}/answer" \
  -H "Authorization: Bearer {access_token}" \
  -H "Content-Type: application/json" \
  -d '{
    "callbackUri": "https://bot.example.com/api/calls",
    "acceptedModalities": ["audio"],
    "mediaConfig": {
      "@odata.type": "#microsoft.graph.appHostedMediaConfig",
      "blob": "<Media Session Configuration>"
    }
  }'

Example Response

No content body is returned.

Status Code: 202 Accepted

Instructions

  1. Obtain a valid access token with the Calls.Initiate.All scope.
  2. Identify the call ID for the incoming call you want to answer.
  3. Construct the request body with the callbackUri and acceptedModalities.
  4. Optionally include mediaConfig to configure the media session.
  5. The acceptedModalities array can include audio, video, or videoBasedScreenSharing.
  6. Send a POST request to the /communications/calls/{call-id}/answer endpoint.
  7. A successful request returns a 202 status code indicating the answer operation has been accepted.

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/answer-a-microsoft-teams-call-ms9wnyj2/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/answer-a-microsoft-teams-call-ms9wnyj2' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/answer-a-microsoft-teams-call-ms9wnyj2/download' --output '.skill-downloads/answer-a-microsoft-teams-call-ms9wnyj2/SKILL.md.part' && mv '.skill-downloads/answer-a-microsoft-teams-call-ms9wnyj2/SKILL.md.part' '.skill-downloads/answer-a-microsoft-teams-call-ms9wnyj2/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

This file does not provide a usable name/description header for this native procedure. It remains available to download and inspect; use the manual method below.

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/answer-a-microsoft-teams-call-ms9wnyj2/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills