# Routing & Controllers

All about Umbraco's routing pipeline & the types of Controllers used in Umbraco, how they work, and what they are used for.

## [Request Pipeline](/umbraco-cms/13.latest/reference/routing/request-pipeline.md)

Explains how Umbraco builds its URLs and how the URLs are mapped back to content items.

## [Routing Properties](/umbraco-cms/13.latest/reference/routing/routing-properties.md)

Describes the Umbraco special/reserved Property Type aliases that can be used to directly manipulate Umbraco's default routing pipeline. These special Property Type aliases can be useful when creating an Umbraco website.

## [Surface Controllers](/umbraco-cms/13.latest/reference/routing/surface-controllers.md)

What is a Surface Controller and how to use them?

## [Umbraco API Controllers](/umbraco-cms/13.latest/reference/routing/umbraco-api-controllers.md)

What is an API Controller and how to use them?

## [Custom Controllers (hijacking routes)](/umbraco-cms/13.latest/reference/routing/custom-controllers.md)

Creating custom controllers to have 100% full control over how your pages are rendered. Also known as: Hijacking Umbraco Routes

## [Custom Routes](/umbraco-cms/13.latest/reference/routing/custom-routes.md)

How to specify your own custom MVC routes in your Umbraco application?

## [Routes & Authentication](/umbraco-cms/13.latest/reference/routing/authorized.md)

Routing requirements for authenticated controllers for both front-end and the backoffice.

## [URL Tracking](/umbraco-cms/13.latest/reference/routing/url-tracking.md)

Moving and renaming Umbraco documents will lead to URL redirects to be created.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.umbraco.com/umbraco-cms/13.latest/reference/routing.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
