Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 47 additions & 0 deletions main/docs/quickstart/backend/aspnet-core-webapi/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,53 @@
title: 'ASP.NET Core Web API'
description: 'Add Auth0 JWT authentication to an ASP.NET Core Web API with protected endpoints'
---
import {JsonLd} from "/snippets/JsonLd.jsx";

<JsonLd data={{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "ASP.NET Core Web API",
"description": "Add Auth0 JWT authentication to an ASP.NET Core Web API with protected endpoints",
"step": [
{
"@type": "HowToStep",
"position": 1,
"name": "Create a new project",
"text": "Create a new project"
},
{
"@type": "HowToStep",
"position": 2,
"name": "Install the Auth0 SDK",
"text": "Install the Auth0 SDK"
},
{
"@type": "HowToStep",
"position": 3,
"name": "Setup your Auth0 API",
"text": "Setup your Auth0 API"
},
{
"@type": "HowToStep",
"position": 4,
"name": "Configure authentication",
"text": "Configure authentication"
},
{
"@type": "HowToStep",
"position": 5,
"name": "Create public and protected endpoints",
"text": "Create public and protected endpoints"
},
{
"@type": "HowToStep",
"position": 6,
"name": "Run your API",
"text": "Run your API"
}
]
}} />

<Callout icon="pencil" color="#FFC107" iconType="solid">
This Quickstart is currently in **Beta**. We'd love to hear your feedback!
</Callout>
Expand Down
53 changes: 53 additions & 0 deletions main/docs/quickstart/backend/fastapi/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,59 @@ description: 'Add Auth0 JWT authentication to an FastAPI with protected endpoint
sidebarTitle: FastAPI API
title: 'FastAPI API'
---
import {JsonLd} from "/snippets/JsonLd.jsx";

<JsonLd data={{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "FastAPI API",
"description": "Add Auth0 JWT authentication to an FastAPI with protected endpoints",
"step": [
{
"@type": "HowToStep",
"position": 1,
"name": "Create a new FastAPI project",
"text": "Create a new FastAPI project"
},
{
"@type": "HowToStep",
"position": 2,
"name": "Install dependencies",
"text": "Install dependencies"
},
{
"@type": "HowToStep",
"position": 3,
"name": "Setup your Auth0 API",
"text": "Setup your Auth0 API"
},
{
"@type": "HowToStep",
"position": 4,
"name": "Define API permissions",
"text": "Define API permissions"
},
{
"@type": "HowToStep",
"position": 5,
"name": "Configure the Auth0 client",
"text": "Configure the Auth0 client"
},
{
"@type": "HowToStep",
"position": 6,
"name": "Create protected routes",
"text": "Create protected routes"
},
{
"@type": "HowToStep",
"position": 7,
"name": "Run your API",
"text": "Run your API"
}
]
}} />

<Accordion title="AI Prompt" defaultOpen icon="microchip-ai" iconType="sharp-solid">
**Using AI to integrate Auth0?** Add this prompt to Cursor, Windsurf, Copilot, Claude Code or your favourite AI-powered IDE to speed up development.

Expand Down
53 changes: 53 additions & 0 deletions main/docs/quickstart/backend/fastify/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,59 @@ sidebarTitle: Fastify API
title: Protect Your Fastify API
---

import {JsonLd} from "/snippets/JsonLd.jsx";

<JsonLd data={{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "Protect Your Fastify API",
"description": "This guide demonstrates how to protect Fastify API endpoints using JWT access tokens with the Auth0 Fastify API SDK.",
"step": [
{
"@type": "HowToStep",
"position": 1,
"name": "Create a new project",
"text": "Create a new project"
},
{
"@type": "HowToStep",
"position": 2,
"name": "Install the Auth0 Fastify API SDK",
"text": "Install the Auth0 Fastify API SDK"
},
{
"@type": "HowToStep",
"position": 3,
"name": "Setup your Auth0 API",
"text": "Setup your Auth0 API"
},
{
"@type": "HowToStep",
"position": 4,
"name": "Configure the Auth0 API plugin",
"text": "Configure the Auth0 API plugin"
},
{
"@type": "HowToStep",
"position": 5,
"name": "Create API routes",
"text": "Create API routes"
},
{
"@type": "HowToStep",
"position": 6,
"name": "Run your API",
"text": "Run your API"
},
{
"@type": "HowToStep",
"position": 7,
"name": "Test your API",
"text": "Test your API"
}
]
}} />

<Accordion title="Use AI to integrate Auth0" icon="microchip-ai" iconType="solid" defaultOpen>

If you use an AI coding assistant like Claude Code, Cursor, or GitHub Copilot, you can add Auth0 API authentication automatically in minutes using [agent skills](https://agentskills.io/home).
Expand Down
96 changes: 95 additions & 1 deletion main/docs/quickstart/backend/golang/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,100 @@ title: Protect Your Go API
---

import {AuthCodeBlock} from "/snippets/AuthCodeBlock.jsx";
import {JsonLd} from "/snippets/JsonLd.jsx";

<JsonLd data={{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "Go API: Authorization with JWT Middleware",
"description": "Secure your Go API with Auth0 using go-jwt-middleware v3",
"step": [
{
"@type": "HowToStep",
"position": 1,
"name": "Create an API",
"text": "Create an API"
},
{
"@type": "HowToStep",
"position": 2,
"name": "Configure API settings",
"text": "Configure API settings"
},
{
"@type": "HowToStep",
"position": 3,
"name": "Understand RS256",
"text": "Understand RS256"
},
{
"@type": "HowToStep",
"position": 4,
"name": "Navigate to Permissions",
"text": "Navigate to Permissions"
},
{
"@type": "HowToStep",
"position": 5,
"name": "Add permissions",
"text": "Add permissions"
},
{
"@type": "HowToStep",
"position": 6,
"name": "Initialize Go module",
"text": "Initialize Go module"
},
{
"@type": "HowToStep",
"position": 7,
"name": "Install Auth0 middleware",
"text": "Install Auth0 middleware"
},
{
"@type": "HowToStep",
"position": 8,
"name": "Download dependencies",
"text": "Download dependencies"
},
{
"@type": "HowToStep",
"position": 9,
"name": "Start the server",
"text": "Start the server"
},
{
"@type": "HowToStep",
"position": 10,
"name": "Get a test token",
"text": "Get a test token"
},
{
"@type": "HowToStep",
"position": 11,
"name": "Test public endpoint",
"text": "Test public endpoint"
},
{
"@type": "HowToStep",
"position": 12,
"name": "Test private endpoint (no token)",
"text": "Test private endpoint (no token)"
},
{
"@type": "HowToStep",
"position": 13,
"name": "Test private endpoint (with token)",
"text": "Test private endpoint (with token)"
},
{
"@type": "HowToStep",
"position": 14,
"name": "Test scoped endpoint",
"text": "Test scoped endpoint"
}
]
}} />

export const envSnippet = `# The URL of your Auth0 Tenant Domain.
# If you're using a Custom Domain, set this to that value instead.
Expand Down Expand Up @@ -887,7 +981,7 @@ Now that you have a protected API, consider exploring:
- **[Role-Based Access Control](https://auth0.com/docs/manage-users/access-control/rbac)** — Implement fine-grained permissions
- **[Access Token Best Practices](https://auth0.com/docs/secure/tokens/access-tokens)** — Learn about token security
- **[Monitor Your API](https://auth0.com/docs/deploy-monitor/logs)** — Set up logging and monitoring
- **[Production Checklist](https://auth0.com/docs/deploy-monitor/production-checks)** — Pre-launch security review
- **[Production Readiness Checks](https://auth0.com/docs/deploy-monitor/pre-deployment-checks/production-checks-best-practices)** — Pre-launch security review

---

Expand Down
47 changes: 47 additions & 0 deletions main/docs/quickstart/backend/java-spring-security5/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,53 @@ title: "Java Springboot API"
description: "Add Auth0 JWT authentication to a Spring Boot API with protected endpoints"
---

import {JsonLd} from "/snippets/JsonLd.jsx";

<JsonLd data={{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "Java Springboot API",
"description": "Add Auth0 JWT authentication to a Spring Boot API with protected endpoints",
"step": [
{
"@type": "HowToStep",
"position": 1,
"name": "Create a new project",
"text": "Create a new project"
},
{
"@type": "HowToStep",
"position": 2,
"name": "Add the Auth0 SDK",
"text": "Add the Auth0 SDK"
},
{
"@type": "HowToStep",
"position": 3,
"name": "Setup your Auth0 API",
"text": "Setup your Auth0 API"
},
{
"@type": "HowToStep",
"position": 4,
"name": "Configure authentication",
"text": "Configure authentication"
},
{
"@type": "HowToStep",
"position": 5,
"name": "Create public and protected endpoints",
"text": "Create public and protected endpoints"
},
{
"@type": "HowToStep",
"position": 6,
"name": "Run your API",
"text": "Run your API"
}
]
}} />

<Callout icon="pencil" color="#FFC107" iconType="solid">
This Quickstart is currently in **Beta**. We'd love to hear your feedback!
</Callout>
Expand Down
53 changes: 53 additions & 0 deletions main/docs/quickstart/backend/python/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,59 @@ title: 'Flask API'
description: 'This guide demonstrates how to integrate Auth0 with any new or existing Python API built with Flask.'
---

import {JsonLd} from "/snippets/JsonLd.jsx";

<JsonLd data={{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "Flask API",
"description": "This guide demonstrates how to integrate Auth0 with any new or existing Python API built with Flask.",
"step": [
{
"@type": "HowToStep",
"position": 1,
"name": "Create a new Flask project",
"text": "Create a new Flask project"
},
{
"@type": "HowToStep",
"position": 2,
"name": "Install dependencies",
"text": "Install dependencies"
},
{
"@type": "HowToStep",
"position": 3,
"name": "Setup your Auth0 API",
"text": "Setup your Auth0 API"
},
{
"@type": "HowToStep",
"position": 4,
"name": "Define API permissions",
"text": "Define API permissions"
},
{
"@type": "HowToStep",
"position": 5,
"name": "Configure the Auth0 client",
"text": "Configure the Auth0 client"
},
{
"@type": "HowToStep",
"position": 6,
"name": "Create protected routes",
"text": "Create protected routes"
},
{
"@type": "HowToStep",
"position": 7,
"name": "Run your API",
"text": "Run your API"
}
]
}} />

<Note>
**Prerequisites:** Before you begin, ensure you have the following installed:

Expand Down
Loading
Loading