> For the complete documentation index, see [llms.txt](https://docs.cipp.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cipp.app/user-documentation/tenant/administration/applications/app-registrations.md).

# App Registrations

App registrations are the applications registered in the selected tenant, meaning the application objects the tenant itself owns. This is the definition of an application: its identifiers, sign-in audience, redirect URIs, requested permissions, and any secrets or certificates it holds. Applications consented to in the tenant but owned elsewhere appear under [Enterprise Applications](/user-documentation/tenant/administration/applications/enterprise-apps.md) instead.

The table is read live from Microsoft Graph each time the page loads.

## Table Details

The properties returned are for the Graph resource type `application`. For more information on the properties please see the [Graph documentation](https://learn.microsoft.com/en-us/graph/api/resources/application?view=graph-rest-1.0#properties).

## Table Actions

<table><thead><tr><th>Action</th><th>Description</th><th data-type="checkbox">Bulk Action Available</th></tr></thead><tbody><tr><td>View in CIPP</td><td>Opens the <a data-mention href="/pages/HZqUmtkdyFNPDV1ec3pf">/pages/HZqUmtkdyFNPDV1ec3pf</a> page for the selected app registration.</td><td>false</td></tr><tr><td>View App Registration</td><td>Opens the selected app registration in the Microsoft Entra admin center, in a new tab.</td><td>false</td></tr><tr><td>View API Permissions</td><td>Opens the API permissions view for the selected app registration in the Microsoft Entra admin center, in a new tab.</td><td>false</td></tr><tr><td>Create Enterprise App Template (Multi-Tenant)</td><td>Creates a reusable Enterprise App template from the selected app registration, copying its permissions into an automatically created permission set. Run from a customer tenant, the app registration is first copied to the partner tenant as a multi-tenant app. An option is offered to overwrite an existing template of the same name. Only available for multi-tenant applications that were not created from a gallery template.</td><td>true</td></tr><tr><td>Create Manifest Template (Single-Tenant)</td><td>Captures the application manifest into a named template that can then be deployed to any tenant. Credentials, tenant-specific identifiers and the publisher domain are stripped before the template is saved. Only available for single-tenant applications that were not created from a gallery template.</td><td>true</td></tr><tr><td>Add Client Secret</td><td>Creates a new client secret on the selected app registration, with a description of your choosing and an expiry of 3, 6, 12 or 24 months or a custom date. The secret value is shown once when it is created, with a copy button.</td><td>true</td></tr><tr><td>Remove Password Credentials</td><td>Prompts you to choose which of the application's client secrets to remove, listed by name and expiry date, then removes only those selected. Only available where the application holds password credentials.</td><td>true</td></tr><tr><td>Remove Certificate Credentials</td><td>Prompts you to choose which of the application's certificate credentials to remove, listed by name and expiry date, then removes only those selected. Only available where the application holds certificate credentials.</td><td>true</td></tr><tr><td>Delete App Registration</td><td>Deletes the selected app registration(s). Anything authenticating as the application stops working immediately.</td><td>true</td></tr><tr><td>More Info</td><td>Opens the Extended Info flyout with the full details for the selected row.</td><td>false</td></tr></tbody></table>

{% hint style="info" %}
The two template actions are mutually exclusive: which one a row offers depends on its sign-in audience, so any given application shows one or the other rather than both. Templates created either way are saved to templates and can be deployed from there.
{% endhint %}

{% hint style="warning" %}
Where the tenant enforces an application secret lifetime policy, the expiry you choose for a new client secret is shortened to fit and you are told so in the result. The secret value cannot be retrieved after the dialogue closes, so copy it before dismissing it. **Add Client Secret** is available in bulk, but a bulk run creates a separate secret on every selected application, so use it one application at a time when you need to keep the values.
{% endhint %}

## Extended Info Flyout

Alongside the usual row details, the flyout for this table renders an **Application Manifest** preview of the selected app registration:

* The display name and description, its sign-in audience, and its web redirect URIs.
* The permissions the application requests, grouped by the API that publishes them. Each group shows a count of application and delegated permissions, and expanding it lists each one by name with the description published by that API.

These are the permissions the application asks for in its manifest, which is not the same as what has been consented to in a tenant. Granted consent is shown on the Permissions tab of ...

***

## Feature Requests / Ideas

We value your feedback and ideas. Please raise any [feature requests](https://github.com/CyberDrain/CIPP/issues/new?template=feature.yml) on GitHub.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.cipp.app/user-documentation/tenant/administration/applications/app-registrations.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
