# Authentication

### Authenticate as an ICR app

Your app should authenticate as itself when it needs to generate an installation access token. An installation access token is required to authenticate as an app installation. Your app should also authenticate as itself when it needs to make API requests to manage resources related to the app. For example, when it needs to list the organizations where it is installed. For more information, see "[Authenticating as an ICR App](/documentation/carbonregistry.com/api/apps/authentication/authenticate-as-an-app.md)".

### Authenticate as an app installation

Your app should authenticate as an app installation when you want to attribute app activity to the app. Authenticating as an app installation lets your app access resources that are owned by the organization that installed the app. For more information, see "[Authenticating as an ICR App installation](/documentation/carbonregistry.com/api/apps/authentication/authenticate-as-an-installation.md)."


---

# 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://documentation.carbonregistry.com/documentation/carbonregistry.com/api/apps/authentication.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.
