Microsoft Planner · Arazzo Workflow

Microsoft Planner Stand Up a Plan with a Bucket and First Task

Version 1.0.0

Create a plan in a group, add a bucket to it, then create the first task in that bucket.

1 workflow 3 source APIs 1 provider
View Spec View on GitHub CollaborationMicrosoft 365ProductivityProject ManagementTask ManagementArazzoWorkflows

Provider

microsoft-planner

Workflows

create-plan-bucket-task
Create a plan, a bucket inside it, and a first task inside the bucket.
Bootstraps a Planner workspace by chaining createPlan, createBucket, and createTask, carrying the plan id into the bucket and the plan and bucket ids into the task.
3 steps inputs: bucketName, bucketOrderHint, containerUrl, planTitle, taskTitle outputs: bucketId, planId, taskId
1
createPlan
createPlan
Create a new plan contained by the supplied Microsoft 365 group. Planner returns 201 with the created plan including its id and ETag.
2
createBucket
createBucket
Create a bucket inside the newly created plan so tasks can be organized. Planner returns 201 with the created bucket id.
3
createTask
createTask
Create the first task in the plan and place it into the new bucket. Planner returns 201 with the created task id.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Microsoft Planner Stand Up a Plan with a Bucket and First Task
  summary: Create a plan in a group, add a bucket to it, then create the first task in that bucket.
  description: >-
    The canonical Planner bootstrap flow. It creates a new plannerPlan contained
    by a Microsoft 365 group, adds a plannerBucket to organize work within that
    plan, and finally creates a plannerTask placed into the new bucket. Each step
    threads the identifier returned by the previous create into the next request
    so a fully organized plan exists after a single pass. Every request is spelled
    out inline so the flow can be read and executed without opening the underlying
    OpenAPI description.
  version: 1.0.0
  x-realizes-capability-ids:
  - BC-900.30
  x-capability-derivation:
    method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
    min_confidence: 0.7
    sources:
    - capability_id: BC-900.30
      capability_name: Project Management
      spec: microsoft-planner-tasks-api-openapi.yml
      confidence: 0.7
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: bucketsApi
  url: ../openapi/_superseded/microsoft-planner-buckets-api-openapi.yml
  type: openapi
- name: plansApi
  url: ../openapi/_superseded/microsoft-planner-plans-api-openapi.yml
  type: openapi
- name: tasksApi
  url: ../openapi/_superseded/microsoft-planner-tasks-api-openapi.yml
  type: openapi
workflows:
- workflowId: create-plan-bucket-task
  summary: Create a plan, a bucket inside it, and a first task inside the bucket.
  description: >-
    Bootstraps a Planner workspace by chaining createPlan, createBucket, and
    createTask, carrying the plan id into the bucket and the plan and bucket ids
    into the task.
  inputs:
    type: object
    required:
    - containerUrl
    - planTitle
    - bucketName
    - taskTitle
    properties:
      containerUrl:
        type: string
        description: >-
          The full canonical URL of the Microsoft 365 group container that will
          own the plan (e.g. https://graph.microsoft.com/v1.0/groups/{group-id}).
      planTitle:
        type: string
        description: Title for the new plan.
      bucketName:
        type: string
        description: Name for the bucket to create inside the plan.
      bucketOrderHint:
        type: string
        description: Optional order hint used to position the bucket.
      taskTitle:
        type: string
        description: Title for the first task created inside the bucket.
  steps:
  - stepId: createPlan
    description: >-
      Create a new plan contained by the supplied Microsoft 365 group. Planner
      returns 201 with the created plan including its id and ETag.
    operationId: createPlan
    requestBody:
      contentType: application/json
      payload:
        title: $inputs.planTitle
        container:
          url: $inputs.containerUrl
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      planId: $response.body#/id
      planEtag: $response.body#/@odata.etag
  - stepId: createBucket
    description: >-
      Create a bucket inside the newly created plan so tasks can be organized.
      Planner returns 201 with the created bucket id.
    operationId: createBucket
    requestBody:
      contentType: application/json
      payload:
        name: $inputs.bucketName
        planId: $steps.createPlan.outputs.planId
        orderHint: $inputs.bucketOrderHint
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      bucketId: $response.body#/id
  - stepId: createTask
    description: >-
      Create the first task in the plan and place it into the new bucket.
      Planner returns 201 with the created task id.
    operationId: createTask
    requestBody:
      contentType: application/json
      payload:
        planId: $steps.createPlan.outputs.planId
        bucketId: $steps.createBucket.outputs.bucketId
        title: $inputs.taskTitle
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      taskId: $response.body#/id
      taskEtag: $response.body#/@odata.etag
  outputs:
    planId: $steps.createPlan.outputs.planId
    bucketId: $steps.createBucket.outputs.bucketId
    taskId: $steps.createTask.outputs.taskId

Work with this as data

Every workflow 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 arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • 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 workflow
curl "https://apis.io/api/v1/arazzo/microsoft-planner-create-plan-bucket-task-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?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.