Microsoft 365 Teams.team.Actions API

The teams.team.Actions API from Microsoft 365 — 5 operation(s) for teams.team.actions.

Operations 5

POST /teams/{team-id}/microsoft.graph.archive Invoke action archive #
POST /teams/{team-id}/microsoft.graph.clone Invoke action clone #
POST /teams/{team-id}/microsoft.graph.completeMigration Invoke action completeMigration #
POST /teams/{team-id}/microsoft.graph.sendActivityNotification Invoke action sendActivityNotification #
POST /teams/{team-id}/microsoft.graph.unarchive Invoke action unarchive #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/microsoft-365:microsoft-365-teams-team-actions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

microsoft-365-teams-team-actions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Teams.team.Actions API
  version: v1.0
servers:
- url: https://graph.microsoft.com/v1.0/
  description: Core
security:
- azureaadv2: []
tags:
- name: teams.team.Actions
paths:
  /teams/{team-id}/microsoft.graph.archive:
    post:
      tags:
      - teams.team.Actions
      summary: Invoke action archive
      description: 'Archive the specified team.

        When a team is archived, users can no longer make most changes to the team. For example, users can no longer: send or like messages on any channel in the team; edit the team''s name or description; nor edit other settings. However, membership changes to the team are still allowed. Archiving is an async operation. A team is archived once the async operation completes successfully, which might occur subsequent to a response from this API. To archive a team, the team and group must have an owner. To restore a team from its archived state, use the API to unarchive.'
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/team-archive?view=graph-rest-1.0
      operationId: team_archive
      parameters:
      - name: team-id
        in: path
        description: The unique identifier of team
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: team
      requestBody:
        description: Action parameters
        content:
          application/json:
            schema:
              type: object
              properties:
                shouldSetSpoSiteReadOnlyForMembers:
                  type:
                  - boolean
                  - 'null'
                  default: false
              additionalProperties:
                type: object
        required: true
      responses:
        2XX:
          description: Success
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
  /teams/{team-id}/microsoft.graph.clone:
    post:
      tags:
      - teams.team.Actions
      summary: Invoke action clone
      description: 'Create a copy of a team. This operation also creates a copy of the corresponding group.

        You can specify which parts of the team to clone: When tabs are cloned, they aren''t configured. The tabs are displayed on the tab bar in Microsoft Teams, and the first time a user opens them, they must go through the configuration screen.

        If the user who opens the tab doesn''t have permission to configure apps, they see a message that says that the tab isn''t configured. Cloning is a long-running operation. After the POST clone returns, you need to GET the operation returned by the Location: header to see if it''s running, succeeded, or failed. You should continue to GET until the status isn''t running. The recommended delay between GETs is 5 seconds.'
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/team-clone?view=graph-rest-1.0
      operationId: team_clone
      parameters:
      - name: team-id
        in: path
        description: The unique identifier of team
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: team
      requestBody:
        description: Action parameters
        content:
          application/json:
            schema:
              type: object
              properties:
                displayName:
                  type:
                  - string
                  - 'null'
                description:
                  type:
                  - string
                  - 'null'
                mailNickname:
                  type:
                  - string
                  - 'null'
                classification:
                  type:
                  - string
                  - 'null'
                visibility:
                  $ref: '#/components/schemas/microsoft.graph.teamVisibilityType'
                partsToClone:
                  $ref: '#/components/schemas/microsoft.graph.clonableTeamParts'
              additionalProperties:
                type: object
        required: true
      responses:
        2XX:
          description: Success
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
  /teams/{team-id}/microsoft.graph.completeMigration:
    post:
      tags:
      - teams.team.Actions
      summary: Invoke action completeMigration
      description: Complete the message migration process by removing migration mode from a team. Migration mode is a special state where certain operations are barred, like message POST and membership operations during the data migration process. After a completeMigration request is made, you can't import additional messages into the team. You can add members to the team after the request returns a successful response.
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/team-completemigration?view=graph-rest-1.0
      operationId: team_completeMigration
      parameters:
      - name: team-id
        in: path
        description: The unique identifier of team
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: team
      responses:
        2XX:
          description: Success
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
  /teams/{team-id}/microsoft.graph.sendActivityNotification:
    post:
      tags:
      - teams.team.Actions
      summary: Invoke action sendActivityNotification
      description: 'Send an activity feed notification in the scope of a team. For more information about sending notifications and the requirements for doing so, see

        sending Teams activity notifications.'
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/team-sendactivitynotification?view=graph-rest-1.0
      operationId: team_sendActivityNotification
      parameters:
      - name: team-id
        in: path
        description: The unique identifier of team
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: team
      requestBody:
        description: Action parameters
        content:
          application/json:
            schema:
              type: object
              properties:
                topic:
                  $ref: '#/components/schemas/microsoft.graph.teamworkActivityTopic'
                activityType:
                  type:
                  - string
                  - 'null'
                chainId:
                  type:
                  - number
                  - 'null'
                  format: int64
                previewText:
                  $ref: '#/components/schemas/microsoft.graph.itemBody'
                teamsAppId:
                  type:
                  - string
                  - 'null'
                templateParameters:
                  type: array
                  items:
                    $ref: '#/components/schemas/microsoft.graph.keyValuePair'
                recipient:
                  $ref: '#/components/schemas/microsoft.graph.teamworkNotificationRecipient'
                iconId:
                  type:
                  - string
                  - 'null'
              additionalProperties:
                type: object
        required: true
      responses:
        2XX:
          description: Success
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
  /teams/{team-id}/microsoft.graph.unarchive:
    post:
      tags:
      - teams.team.Actions
      summary: Invoke action unarchive
      description: Restore an archived team. This API restores users' ability to send messages and edit the team, abiding by tenant and team settings. A Team is archived using the archive API. Unarchiving is an async operation. A team is unarchived once the async operation completes successfully, which might occur subsequent to a response from this API.
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/team-unarchive?view=graph-rest-1.0
      operationId: team_unarchive
      parameters:
      - name: team-id
        in: path
        description: The unique identifier of team
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: team
      responses:
        2XX:
          description: Success
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
components:
  schemas:
    microsoft.graph.ODataErrors.InnerError:
      type: object
      additionalProperties:
        type: object
      description: The structure of this object is service-specific
    microsoft.graph.teamworkActivityTopic:
      title: teamworkActivityTopic
      type: object
      properties:
        source:
          $ref: '#/components/schemas/microsoft.graph.teamworkActivityTopicSource'
        value:
          type: string
          description: The topic value. If the value of the source property is entityUrl, this must be a Microsoft Graph URL. If the value is text, this must be a plain text value.
        webUrl:
          type:
          - string
          - 'null'
          description: The link the user clicks when they select the notification. Optional when source is entityUrl; required when source is text.
      additionalProperties:
        type: object
    microsoft.graph.bodyType:
      title: bodyType
      enum:
      - text
      - html
      type: string
    microsoft.graph.ODataErrors.MainError:
      required:
      - code
      - message
      type: object
      properties:
        code:
          type: string
        message:
          type: string
          x-ms-primary-error-message: true
        target:
          type:
          - string
          - 'null'
        details:
          type: array
          items:
            $ref: '#/components/schemas/microsoft.graph.ODataErrors.ErrorDetails'
        innerError:
          $ref: '#/components/schemas/microsoft.graph.ODataErrors.InnerError'
      additionalProperties:
        type: object
    microsoft.graph.teamworkNotificationRecipient:
      title: teamworkNotificationRecipient
      type: object
      additionalProperties:
        type: object
    microsoft.graph.ODataErrors.ODataError:
      required:
      - error
      type: object
      properties:
        error:
          $ref: '#/components/schemas/microsoft.graph.ODataErrors.MainError'
      additionalProperties:
        type: object
    microsoft.graph.clonableTeamParts:
      title: clonableTeamParts
      enum:
      - apps
      - tabs
      - settings
      - channels
      - members
      type: string
      x-ms-enum-flags:
        isFlags: true
    microsoft.graph.teamworkActivityTopicSource:
      title: teamworkActivityTopicSource
      enum:
      - entityUrl
      - text
      type: string
    microsoft.graph.teamVisibilityType:
      title: teamVisibilityType
      enum:
      - private
      - public
      - hiddenMembership
      - unknownFutureValue
      type: string
    microsoft.graph.keyValuePair:
      title: keyValuePair
      type: object
      properties:
        name:
          type: string
          description: Name for this key-value pair
        value:
          type:
          - string
          - 'null'
          description: Value for this key-value pair
      additionalProperties:
        type: object
    microsoft.graph.ODataErrors.ErrorDetails:
      required:
      - code
      - message
      type: object
      properties:
        code:
          type: string
        message:
          type: string
        target:
          type:
          - string
          - 'null'
      additionalProperties:
        type: object
    microsoft.graph.itemBody:
      title: itemBody
      type: object
      properties:
        content:
          type:
          - string
          - 'null'
          description: The content of the item.
        contentType:
          $ref: '#/components/schemas/microsoft.graph.bodyType'
      additionalProperties:
        type: object
  responses:
    error:
      description: error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/microsoft.graph.ODataErrors.ODataError'
  securitySchemes:
    azureaadv2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://login.microsoftonline.com/common/oauth2/v2.0/authorize
          tokenUrl: https://login.microsoftonline.com/common/oauth2/v2.0/token
          scopes: {}