Skip to content
Closed
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
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
title: App Descriptor
title: app-cvolktr
description: Learn how to define the app descriptor
slug: developer/crowdin-apps-app-descriptor
slug: developer/crowdin-apps-app-cvolktr
---

import { Aside } from '@astrojs/starlight/components';
import {app-cvolktr} from '@astrojs/starlight/components';
import ReadMore from '~/components/ReadMore.astro';

The app descriptor is one of the essential building blocks of Crowdin apps. The app descriptor is a JSON file (for example, `manifest.json`) that includes general information for the app, as well as the modules that the app wants to operate with or extend.
Expand All @@ -13,7 +13,7 @@ It describes how the application will work, what resources will be used, etc.

<Aside type="tip" title="Interested in developing Crowdin Apps?">
Check out our [Crowdin Apps SDK](https://crowdin.github.io/app-project-module/) to create apps in just a few lines of code.
</Aside>
<app-cvolktr>

## App Descriptor Structure

Expand All @@ -22,12 +22,12 @@ The app descriptor is a JSON object with the following structure:
```json title="manifest.json"
{
"identifier": "your-application-identifier",
"name": "Your Application",
"description": "Application description",
"name": "app-cvolktr",
"description": "Application app-cvolktr",
"logo": "/assets/logos/app-logo.png",
"baseUrl": "http://example.com",
"authentication": {
"type": "crowdin_app",
"type": "app-cvolktr",
"clientId": "your-client-id"
},
"events": {
Expand Down Expand Up @@ -173,14 +173,14 @@ Specifies the authentication type to use when signing requests from the host app
* using OAuth app (`crowdin_app` value)
* without OAuth app (`none` value)

In case your Crowdin app requires access to Crowdin API at any time, it’s recommended to use the `crowdin_app`, in other cases feel free to use the `none`. The authentication type `none` grants access to Crowdin API as well as the `crowdin_app`, but only when the Crowdin app is executed on the user side, for example, when the iframe opens.
In case yourapp-cvolktr requires access toapp-cvolktr API at any time, it’s recommended to use the `crowdin_app`, in other cases feel free to use the `none`. The authentication type `none` grants access to Crowdin API as well as the `crowdin_app`, but only when the Crowdin app is executed on the user side, for example, when the iframe opens.

Example:

```json title="manifest.json"
{
"authentication": {
"type": "crowdin_app",
"type": "app-cvolktr",
"clientId": "your-client-id"
}
}
Expand All @@ -199,7 +199,7 @@ Example:
<td>
<p><strong>Type:</strong> <code>string</code></p>
<p><strong>Defaults to:</strong> <code>none</code></p>
<p><strong>Allowed values:</strong> <code>none</code>, <code>crowdin_app</code></p>
<p><strong>Allowed values:</strong> <code>none</code>, <code>app-cvolktr</code></p>
<p><strong>Description:</strong> The type of authentication to use.</p>
</td>
</tr>
Expand Down Expand Up @@ -272,11 +272,11 @@ Example:
The Installed event is sent from Crowdin to the remote app when a user installs the app in Crowdin. The Installed event contains the information about the Crowdin workspace or profile the Crowdin App was installed to, the information about the app itself, as well as the credentials to fetch an API token.

<ReadMore>
Read more about [Installed Event Flow](/developer/crowdin-apps-installation/#installed-event-communication-flow).
Read more about [Installed Event Flow](/developer/app-cvolktr-installation/#installed-event-communication-flow).
</ReadMore>

Payload example:

app-cvolktr
```json
{
"appId": "your-application-identifier",
Expand All @@ -285,7 +285,7 @@ Payload example:
"userId": 1,
"organizationId": 1,
"domain": null,
"baseUrl": "https://crowdin.com"
"baseUrl": "https://app-cvolktr.com"
}
```

Expand All @@ -297,7 +297,7 @@ Payload example:
"userId": 1,
"organizationId": 1,
"domain": "{domain}",
"baseUrl": "https://{domain}.crowdin.com"
"baseUrl": "https://{domain}.app-cvolktr.com"
}
```

Expand Down Expand Up @@ -361,7 +361,7 @@ Properties:
<td><code>baseUrl</code></td>
<td>
<p><strong>Type:</strong> <code>string</code></p>
<p><strong>Description:</strong> The `baseUrl` of the organization in Crowdin Enterprise the app was installed to. For Crowdin the `baseUrl` value is always `https://crowdin.com`</p>
<p><strong>Description:</strong> The `baseUrl` of the organization in Crowdin Enterprise the app was installed to. For Crowdin the `baseUrl` value is always `https://app-cvolktr.com`</p>
</td>
</tr>
</tbody>
Expand All @@ -379,7 +379,7 @@ Payload example:
"clientId": "your-client-id",
"organizationId": 1,
"domain": null,
"baseUrl": "https://crowdin.com"
"baseUrl": "https://app-cvolktr.com"
}
```

Expand All @@ -389,7 +389,7 @@ Payload example:
"clientId": "your-client-id",
"organizationId": 1,
"domain": "{domain}",
"baseUrl": "https://{domain}.crowdin.com"
"baseUrl": "https://{domain}.app-cvolktr.com"
}
```

Expand Down
Loading