web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Automate / Help creating a comple...
Power Automate
Answered

Help creating a completely new list from Power Automate using Send HTTP request

(1) ShareShare
ReportReport
Posted on by 69
I'm attempting to create a power automate workflow that creates new SharePoint when the flow is triggered.  I tried using templates and copying an existing list to make a fresh new list. Neither worked out.  So I want to use straight coding to exactly what I'm looking for. While I have the Parse JSON Schema, I'm looking for the proper formatting for creating a new brand-new list with a new title and setting up all the columns directly from the HTTP Send HTTP request.  If anyone could point me in a direction in any resources or tutorials remotely relevant to this, it would be a big help.
Categories:
I have the same question (0)
  • Suggested answer
    stampcoin Profile Picture
    5,058 Super User 2025 Season 2 on at
    I believe the official doc will be helpful.
    Then you will know how to use Send an http request (not only for sharepoint but also for other apps).
     
    Enjoy.
  • Suggested answer
    Srini007 Profile Picture
    3,327 Super User 2025 Season 2 on at
     
    For creating a new list and the columns in the list, you can refer below link
     
    Hope this helps you
     

    (If this answers your question you can mark as Answered and give it a Like)

    Regards,
    Srini
  • Verified answer
    Riyaz_riz11 Profile Picture
    3,860 Super User 2025 Season 2 on at
    Hi,

    Let me search for more specific information about creating SharePoint lists with REST API and the exact JSON structure needed.

    Based on the search results and current best practices, here's a comprehensive solution for creating a new SharePoint list with custom columns using Power Automate and HTTP requests:

     

    Complete Solution for Creating SharePoint Lists with HTTP Requests

     

    Step 1: Create the List Structure

     

    Use the "Send an HTTP request to SharePoint" action with these settings:

     

    Action Configuration:

     

    • Site Address: Your SharePoint site URL

    • Method: POST

    • Uri: _api/web/lists


    •  
     

    Headers:

     
     
    json
    {
      "Accept": "application/json;odata=verbose",
      "Content-Type": "application/json;odata=verbose"
    }
     

    Body for Creating the List:

     
     
    json
    {
      "__metadata": {
        "type": "SP.List"
      },
      "Title": "Your New List Title",
      "Description": "Description of your new list",
      "BaseTemplate": 100,
      "AllowContentTypes": true,
      "ContentTypesEnabled": true
    }
     

    Step 2: Add Custom Columns

    After creating the list, you'll need separate HTTP requests for each column. You need to send POST requests to add fields to your newly created list Power AutomateTom Riha.

    For Text Columns:


    • Method: POST

    • Uri: _api/web/lists/getbytitle('Your New List Title')/fields
     
    json
    {
      "__metadata": {
        "type": "SP.Field"
      },
      "Title": "Column Display Name",
      "FieldTypeKind": 2,
      "Required": false,
      "MaxLength": 255
    }
     

    For Choice Columns:

     
    json
    {
      "__metadata": {
        "type": "SP.FieldChoice"
      },
      "Title": "Status",
      "FieldTypeKind": 6,
      "Required": false,
      "Choices": {
        "__metadata": {
          "type": "Collection(Edm.String)"
        },
        "results": ["Active", "Inactive", "Pending"]
      },
      "DefaultValue": "Active"
    }
     

    For Date/Time Columns:

     
    json
    {
      "__metadata": {
        "type": "SP.Field"
      },
      "Title": "Due Date",
      "FieldTypeKind": 4,
      "Required": false
    }
     

    For Number Columns:

     
     
    json
    {
      "__metadata": {
        "type": "SP.Field"
      },
      "Title": "Priority",
      "FieldTypeKind": 9,
      "Required": false
    }
     

    For Person/Group Columns:

     
     
    json
    {
      "__metadata": {
        "type": "SP.FieldUser"
      },
      "Title": "Assigned To",
      "FieldTypeKind": 20,
      "Required": false,
      "SelectionMode": 0
    }
     

    Step 3: Complete Power Automate Flow Structure

    Here's the recommended flow structure


    1. Trigger (Manual or scheduled)

    2. Send HTTP Request - Create List (using the list creation JSON above)

    3. Parse JSON (to extract the list ID if needed)

    4. Send HTTP Request - Add Column 1

    5. Send HTTP Request - Add Column 2

    6. Send HTTP Request - Add Column 3 (repeat for each column)

    7. Step 4: Parse JSON Schema for List Creation Response
     

    After creating the list, use this schema to parse the response:

     
     
    json
    {
      "type": "object",
      "properties": {
        "d": {
          "type": "object",
          "properties": {
            "__metadata": {
              "type": "object"
            },
            "Id": {
              "type": "string"
            },
            "Title": {
              "type": "string"
            },
            "Created": {
              "type": "string"
            }
          }
        }
      }
    }
     

    Step 5: Field Type Reference

    For different column types, use these FieldTypeKind values 

     

    • Text: 2

    • Note (Multi-line): 3

    • DateTime: 4

    • Choice: 6

    • Number: 9

    • Boolean: 8

    • User: 20

    • Lookup: 7


    •  

    Step 6: Error Handling Best Practice


    1. Add Configure run after to handle failures

    2. Use Compose actions to test your JSON before sending

    3. Add Condition checks to verify successful creation before adding columns


    4.  

    Common Issues and Solutions:

     

    1. List already exists: Check if the list exists first using a GET request

    2. Column creation fails: Ensure the list is fully created before adding columns

    3. Permission issues: The Send HTTP Request to SharePoint action uses the permissions of the flow creator Power Automate With SharePoint - 'Update Item' Action - Working With M


    4.  

    Alternative Approach - Using Microsoft Graph API

    If you prefer using Microsoft Graph API instead of SharePoint REST API:


    • Method: POST

    • Uri: https://graph.microsoft.com/v1.0/sites/{site-id}/lists

    • Use "Send an HTTP request to Microsoft Graph" action


    •  

    This approach provides a more modern API experience and better error handling.

     

    If I have answered your question, please mark it as the preferred solution ✅ . If you like my response, please give it a Thumbs Up 👍.
    Regards,
    Riyaz

  • robethom Profile Picture
    69 on at
    Thanks you.  That was a HUGE help. Would anyone no the attribute to enable it in the main view.  Again major thanks.

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Forum hierarchy changes are complete!

In our never-ending quest to improve we are simplifying the forum hierarchy…

Ajay Kumar Gannamaneni – Community Spotlight

We are honored to recognize Ajay Kumar Gannamaneni as our Community Spotlight for December…

Leaderboard > Power Automate

#1
Michael E. Gernaey Profile Picture

Michael E. Gernaey 503 Super User 2025 Season 2

#2
Tomac Profile Picture

Tomac 321 Moderator

#3
abm abm Profile Picture

abm abm 237 Most Valuable Professional

Last 30 days Overall leaderboard