Dev & Engineering ✓ Microsoft · Official fastapipythonrest-apicrudauthenticationpydantic

FastAPI Router Builder

Create consistent FastAPI CRUD routes with authentication and typed responses.

FollowSkills review · FSRS-2.0
Use with care
51/ 100 5-point scale 2.6 / 5
1 2 3 4 5 6
1Trust15 / 25 · 3.0/5

The skill provides a FastAPI code template without credential theft, covert exfiltration, or malicious behavior, and it shows authentication dependencies. However, list and detail endpoints allow anonymous access by default, ownership enforcement is commented out as optional, the delete endpoint does not actually verify ownership, and there is no sensitive-data guidance, confirmation, rollback, or data-flow disclosure, so points are deducted.

2Reliability8 / 20 · 2.0/5

The instructions, template, and reference file are broadly consistent and cover authentication, status codes, pagination, and async-I/O concerns. However, the template depends on unspecified project modules, constructs a service per request without demonstrating lifecycle management, and gives limited abnormal-input, concurrency, exception, and diagnostic-feedback guidance. Static calibration caps this score at 10, so it is scored 8.

3Adaptability9 / 15 · 3.0/5

The audience and trigger scenarios are reasonably clear for generating CRUD routers in an existing FastAPI project. Input assumptions, non-fit boundaries, project-layout variation, authorization models, and Chinese-language support are not defined; the fixed app-package layout also limits environment fit, so the score is reduced.

4Convention9 / 15 · 3.0/5

The SKILL.md is concise and layered with quick start, a reference file, integration steps, license metadata, and a version field. It lacks dependency installation notes, stable parameter conventions, complete examples, FAQs, known limitations, changelog information, and a clear maintenance/update path. The repository MIT license and official organization provenance help governance evidence but do not fill the skill's documentation gaps.

5Effectiveness6 / 15 · 2.0/5

The template is a useful CRUD starting point with response models, pagination, authentication dependencies, and basic 404 handling. It still requires placeholder replacement plus creation of models, services, router mounting, and frontend functions; ownership protection is incomplete and delete authorization may require revision. Therefore it plausibly completes the core task but is not directly production-ready. Static calibration caps this score at 7, so it is scored 6.

6Verifiability4 / 10 · 2.0/5

The skill files, template, and capability checklist are auditable, and the repository shows general CI and test infrastructure. The supplied material contains no skill-specific committed tests, real generated-output examples, or third-party execution evidence, so key-path reproduction remains limited. Static calibration caps this score at 5, so it is scored 4.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 9ccaf7c3704a
Before you use it
  • The template's claim of required authentication and ownership is inconsistent with its code: update only checks existence, and delete performs no ownership check. Add mandatory authorization according to the application policy before deployment.
  • Optional authentication on list and detail endpoints may unintentionally expose resources; explicitly define public versus private semantics and apply least privilege.
  • The template assumes fixed app.auth, app.models, and app.services modules plus async service methods; verify project structure, dependency versions, and resource lifetimes before copying.
  • Repository-level CI and test material does not demonstrate execution coverage for this specific skill's key paths.
See the full review method →

What does this skill do, and when should you use it?

This Python Agent Skill helps developers build REST API routers for FastAPI applications. It covers CRUD operations, optional and required authentication dependencies, response models, and HTTP status codes. It includes a copyable router template with naming placeholders and a sequence for integrating the router into an application. It is useful for standardizing backend endpoints, but it is not a complete FastAPI tutorial or standalone generator.

It instructs developers to copy assets/template.py and replace resource-name placeholders; shape FastAPI routers with CRUD operations, authentication dependencies, response models, and HTTP status codes; place routers in src/backend/app/routers/ and mount them from src/backend/app/main.py; add corresponding Pydantic models, a service layer when needed, and frontend API functions; and choose def or async def according to async I/O usage while managing long-lived resources through lifespan.

  1. A backend developer needs a standard CRUD router for a new resource in a FastAPI application.
  2. A team needs endpoints with either optional user context or mandatory authentication dependencies.
  3. A developer wants GET, POST, and DELETE routes to declare response models and appropriate HTTP status codes.
  4. A maintainer is adding routes to an existing FastAPI project and needs guidance on router, application, model, and service-layer integration.

What are this skill's strengths and limitations?

Pros
  • Covers core router concerns: CRUD operations, authentication dependencies, response models, and common HTTP status codes.
  • Provides naming placeholders and concrete integration locations for getting started quickly.
  • Explicitly addresses sync versus async handlers and avoiding blocking I/O in async endpoints.
  • Licensed under MIT and authored by Microsoft.
Limitations
  • Focuses on router structure rather than providing a complete database, authentication, or service-layer implementation.
  • Does not specify supported FastAPI or Pydantic versions.
  • The supplied material does not show skill-specific tests or acceptance scenarios.
  • Installation is documented for the repository collection, not as a standalone command for this skill.

How do you install this skill?

Install the repository's skill collection with: npx skills add microsoft/skills. Select the required skill in the wizard; skills are installed into the chosen agent directory, such as .github/skills/ for GitHub Copilot. The source does not provide a separate installation command for this individual skill or commands for installing FastAPI and Pydantic.

How do you use this skill?

In an Agent Skills-compatible coding agent, try: “Create a FastAPI CRUD router for Project with required authentication, Pydantic response models, and correct HTTP status codes.” The agent should use assets/template.py, replace {{ResourceName}}, {{resource_name}}, and {{resource_plural}}, then follow the documented router mounting and model or service integration steps.

FAQ

Does it generate a complete backend feature?
No. It guides router structure, dependencies, response models, and integration. The project still needs to implement its database, authentication logic, and service layer.
Can it handle both anonymous and authenticated endpoints?
Yes. Its examples distinguish get_current_user, which may return None, from get_current_user_required, which raises 401 when the request is unauthenticated.
Is it suitable for every FastAPI project?
It is suited to projects using conventional FastAPI routers, Pydantic models, and dependency injection. Projects with substantially different layouts or authentication architectures may need to adapt the guidance.

More skills from this repository

All from microsoft/agent-skills

Dev & Engineering ✓ Microsoft · Official

Pydantic Multi-Model Architecture

Build consistent, reusable Pydantic data contracts with a structured multi-model pattern.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB Python Service Builder

Build secure, testable Azure Cosmos DB NoSQL services for Python and FastAPI applications.

Dev & Engineering ✓ Microsoft · Official

Azure Short-Audio Speech-to-Text REST

Transcribe audio up to 60 seconds with Python HTTP requests.

Dev & Engineering ✓ Microsoft · Official

Azure Monitor OpenTelemetry Exporter

Build a controlled Python OpenTelemetry pipeline that exports traces, metrics, and logs to Application Insights.

Dev & Engineering ✓ Microsoft · Official

MCP Server Development Guide

A practical guide to building clear, testable MCP servers that let LLMs work with external APIs.

Dev & Engineering ✓ Microsoft · Official

Azure Fabric Capacity Manager

Manage Microsoft Fabric capacities and their lifecycle with the Azure Python SDK.

Automation & Ops ✓ Microsoft · Official

Azure Python App Service Deployer

Deploy Flask, Django, FastAPI, or other Python apps to Azure App Service Linux.

Dev & Engineering ✓ Microsoft · Official

Azure Realtime Podcast Studio

Turn text into playable podcast-style audio with Azure OpenAI Realtime API.

Dev & Engineering ✓ Microsoft · Official

Azure AI Text Analytics for Python

Guides Python developers through Azure-powered text analysis and NLP workflows.

Dev & Engineering ✓ Microsoft · Official

Azure Data Lake Gen2 for Python

Guides Python developers through hierarchical file-system and large-file operations on Azure Data Lake Storage Gen2.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB TypeScript Skill

Gives TypeScript and JavaScript coding agents practical Cosmos DB data-access patterns.

Dev & Engineering ✓ Microsoft · Official

Microsoft Entra Agent ID Provisioning

Provision OAuth2-capable identities for AI agents through Microsoft Graph beta.

Dev & Engineering ✓ Microsoft · Official

Azure AI Transcription for Python

Guides Python applications through Azure AI real-time and batch speech-to-text transcription.

Dev & Engineering ✓ Microsoft · Official

Azure Content Understanding for Python

Extract structured multimodal content from documents, images, audio, and video with Python.

Dev & Engineering ✓ Microsoft · Official

Azure Identity for Rust

Configure Microsoft Entra ID authentication for Azure SDK clients written in Rust.

Dev & Engineering ✓ Microsoft · Official

Azure Monitor OpenTelemetry for Python

Connect Python applications to Application Insights with one-line OpenTelemetry setup.

Dev & Engineering ✓ Microsoft · Official

Azure Tables for Python

A practical guide to building authenticated Azure Tables applications with Python entity CRUD, queries, and partition-scoped batch operations.

Dev & Engineering ✓ Microsoft · Official

Azure Queue Storage for Python

Gives coding agents reliable Python patterns for secure Azure Queue Storage messaging and asynchronous task processing.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB for Python

A practical guide for building reliable Python applications on Azure Cosmos DB’s NoSQL API.

Dev & Engineering ✓ Microsoft · Official

Azure API Management for Python

Gives coding agents practical Python SDK patterns for managing Azure API Management services, APIs, products, subscriptions, and policies.

Related skills