Manual App Installation
As long as the app is not yet published in the Marketplace, it can be installed manually.
Installation in Crowdin
Go to the Account Settings > Crowdin Applications tab.
- In the upper-right corner, click your profile photo and select Settings.

- Select the Crowdin Applications tab and click Install.

- In the appeared dialog, paste in the Crowdin app Manifest URL and click Install.

- In the appeared window, you can select the categories of users that will be able to use the app: only project owner or all users in the projects/resources. Additionally, you can select the projects where users will be able to use the app: all projects or selected projects.

Installation in Crowdin Enterprise
Go to the Organization Settings > Apps page.
- You can find Organization Settings under the user icon in the top menu bar.

- Switch to the Apps page on the left menu bar and click Install Application.

- In the appeared dialog, paste in the Crowdin app Manifest URL and click Install.

- In the appeared window, you can select the categories of users that will be able to use the app: only organization admins or all users in the organization projects/resources. Additionally, you can select the projects where users will be able to use the app: all projects or selected projects.

Installed Event Communication Flow
Note: Installed Event is used only for authorization.type: "crowdin_app"
.
When a Crowdin App is installed in the Account Settings the authorization flow takes place during which Crowdin and Crowdin App exchange the authorization data (the authorization code is being exchanged for an access token). In the following illustration, you can see the events that take place during this process.

Let’s examine in detail each step that happens in the illustration:
- Installation of the Manifest URL - the user pastes in the Manifest URL in the Account Settings > Crowdin Applications and clicks Install.
- Fetching content from the Manifest URL - the request is sent to Crowdin App.
- Response: manifest JSON - Crowdin App returns the Manifest JSON that contains the data about the app.
- Manifest Data Validation - the received content is validated according to the structure and data of the Manifest JSON.
- Prompt to install - the information about the Crowdin App, as well as the list of permissions and the Install button is displayed to the user.
- Confirmation of the installation - the user confirms the installation of the Crowdin App.
- The Installed event - Crowdin sends the Installed event with the authorization code to the Crowdin App for API token generation.
-
Token request - Crowdin App sends the request for API token acquiring:
POST https://accounts.crowdin.com/oauth/token
Parameters
grant_type: crowdin_app | Type: string Required: yes Description: The parameter is used for the flow specification of an OAuth app. |
client_id | Type: string Required: yes Description: Client ID for the app is received when the app is registered. |
client_secret | Type: string Required: yes Description: Client Secret for the app is received when the app is registered. |
app_id | Type: string Required: yes Description: Crowdin app identifier from the app descriptor. |
app_secret | Type: string Required: yes Description: The unique secret used for authorization of your Crowdin app. This value is retrieved from the installed event. |
domain | Type: string|null Required: yes Description: The name of the organization from which the app is accessed. This value is retrieved from the installed event. |
user_id | Type: integer Required: yes Description: The identifier of the user who installed the app. This value is retrieved from the installed event. |
- Access Token - authorization service returns the API access token and the refresh token.
- Success Code Response - Crowdin App returns the success status code (2xx) which confirms that the application installation was successfully finished. In case the status code is different, the application will be removed from the Crowdin account.