Skip to content

Contact us

    Talk to our Experts


    +1 920 303 0470
    info@smart-is.com 1302 S Main ST , Oshkosh , WI 54902-6518

    Automated Site Collection Provisioning

    In this post, I would like to talk about automated site collection and Teams (Microsoft Teams) provisioning in Microsoft 365. We had to provide a Self-Service site and Team creation for one of the clients instead of depending on Admins and at the same time without compromising governance. For this, we have introduced Admin approvals. The SharePoint site also should be created with a custom template.

    We have developed a Governed Self-Service Site Creation solution. The process is as follows (this process was inspired by the MS Doc article):

    -We have created a hub site to group/organize all the sites requested by a specific group/department.

    -Custom List is used to drive user requests for a new site and it is maintained in the hub site.

    -Invoke Power Automate for approval by admin before creating a site ( Power Automate Process including, Approval and Call Azure Function to initiate provisioning).

    Provisioning Solution
    1. Create a Site Template using the PnP provisioning engine. The following articles explain the easier way to create a site template:

    https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/pnp-provisioning-tenant-templates

    https://www.erwinmcm.com/getting-started-with-the-pnp-provisioning-engine-and-pnp-powershell/

    2. Create a Tenant Template to provision teams in Microsoft Teams using the PnP provisioning engine.

    3. Setup the Daemon app in Azure Active Directory to provision resources as the Azure function executes the scripts using application identity instead of user identity. Daemon app needs following permissions to provision Sites and Teams.

    4. Create a Hub site

    5. Create a List to handle user requests.

    6. Create a Power Automate to trigger when an item added to the above list.

    7. Approval request will be sent to Admin. If Admin approves, then approval confirmation email sent to the requestor and SharePoint list item status changed to “Provisioning”. Otherwise, a rejection email will be sent to the requestor and the status changed to “Rejected”.

    8. After updating the status, we have initiated a few variables to invoke the Azure function.

    9. We have created three Http trigger Azure Functions to perform the complete provisioning process. First one is for Create Site, the second one is to apply Site Template and the third one is for Teamify the newly created site.

    10. If all activities are successfully completed then success notification, otherwise failure notification, will be sent to the requestor.

    11. We have followed this article to create azure functions as we have used PnP PowerShell commands to do all activities.

    Let’s look at the PowerShell scripts of each function.

    Create Site:

    Apply Site Template:

    Create Teams (Teamify):

    Exported from pokurim365.blogspot.com on November 1st, 2020

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    Recent Stories

    View All
    Blog Feature Image
    ForgeViu: Visual Experiences for an Intent-Centric Enterprise
    Jun 12, 2026

    Technology has a habit of making us believe that every new breakthrough renders everything that came before it obsolete. When television became mainstream, many predicted the end of radio. When e-commerce emerged, some predicted the end of physical retail. When smartphones arrived, there were predictions that desktop computing would become irrelevant. Reality is usually more

    Read More
    Beyond the Crawl: A Coding Agent for Proprietary Programming Languages
    May 17, 2026

    General-purpose coding models perform well on languages that are well-represented on the public internet. They fail predictably on proprietary or domain-specific languages: hallucinated identifiers, wrong call shapes, and confident reproduction of deprecated patterns. MOCA, the scripting language inside Blue Yonder’s Warehouse Management System, is one of those failure cases, the entire ecosystem (grammar, command catalog,

    Read More
    The Generalist Manifesto: Why “Broad Intelligence + Skill” Is the Future of AI
    May 08, 2026

    For the past couple of years, we’ve seen a massive push toward Specialized LLMs. The argument seems intuitive: if you need legal expertise, use a legal model. If you need medical expertise, use a medical model. Why rely on a “general” model when you can have one trained specifically for the task at hand? In

    Read More
    Safety by Ignorance vs Safety by Understanding: What the Claude–DoD Debate Is Really About
    Apr 03, 2026

    There is a growing debate in AI governance that is often framed as a dispute over “safeguards,” “alignment,” or “responsible AI.” A recent flashpoint involves models developed by Anthropic (notably Claude) and the U.S. Department of Defense, but the disagreement is deeper than any single vendor or contract. At its core, the debate is not

    Read More
    From Chat to Capability: Operationalizing Enterprise AI Intents
    Apr 02, 2026

    In earlier posts, I argued two related ideas: This post builds directly on those ideas and takes the next logical step. If intent is the real abstraction — and if enterprises need repeatable, governed intelligence — then the obvious question is: Where does intent actually live, and how does it execute? The Missing Layer: Intent

    Read More
    Enterprise Cognitive Intelligence, Without the Complexity
    Feb 17, 2026

      In our previous post, we showed how our MCP framework removes the friction from exposing system capabilities to AI. MCP solves access. Cognition requires meaning. Because enterprises don’t think in systems.They think in business concepts. The Limits of System-Level Intelligence Most MCP servers today expose a single system — ERP, WMS, OMS, planning engines —

    Read More
    From APIs to Intelligence: How Our MCP Framework Makes Any System AI-Ready
    Feb 17, 2026

    Everyone wants to “add AI” to their systems — but few succeed. Not because AI models aren’t powerful — they are. But because exposing enterprise systems to AI is still too hard. So for most teams, the friction is simply too high. A Useful Analogy: AI as a Researcher Think of AI as a researcher. At

    Read More
    F
    From System Silos to System Intelligence: The AI Shift Enterprises Cannot Afford to Ignore
    Dec 10, 2025

    Enterprises today operate in an environment where systems multiply, data sits fragmented, and real-time decisions depend on information scattered across platforms. The divide between organizations’ need for instant, secure, conversational access to enterprise intelligence and their reliance on siloed screens, complicated integrations, and manual reporting processes is increasing each year.   According to a survey report

    Read More
    Why Traditional Deployment Playbooks No Longer Keep Up with Modern Warehouses
    Oct 30, 2025

    Modern warehouses are evolving faster than the deployment practices that support them. What was once a predictable, linear, and manual deployment cycle has turned into a complex, high-stakes process that no longer fits the pace of operations. Traditional deployment playbooks were designed for slower systems with fewer moving parts. Today’s warehouses operate across multiple sites,

    Read More
    The Hidden Cost of Screen Development in Warehouse Reporting and the Solution
    The Hidden Cost of Screen Development in Warehouse Reporting and the Solution
    Oct 16, 2025

    Reporting sits at the core of every warehouse operation. It is the lens through which leaders make decisions, monitor performance, and anticipate challenges. Yet, behind the charts and dashboards lies a process that is often far more complex and costly than it should be. Screen development in warehouse reporting has become a silent drain on

    Read More