-
Notifications
You must be signed in to change notification settings - Fork 0
chore: Add sample documentation #WPB-19997 #185
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 1 commit
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
d222d74
chore: Add sample documentation #WPB-19997
alexandreferris c519753
chore: Add sample documentation #WPB-19997
alexandreferris 6fa7426
chore: Add sample documentation #WPB-19997
alexandreferris a84decb
Merge remote-tracking branch 'origin/chore/wpb_19997add_sample_docs' …
alexandreferris 9b963fe
chore: Add sample documentation #WPB-19997
alexandreferris 40fecd7
chore: Add sample documentation #WPB-19997
alexandreferris File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
# Understanding Apps | ||
|
||
Apps — sometimes called *integrations*, *services*, or *third-party applications* — are modular components that extend the platform without being part of its core codebase. | ||
|
||
### Key Characteristics | ||
- **Independent from core code** | ||
Apps are not bundled into the frontend or backend binaries. They live outside the main system. | ||
|
||
- **Pluggable and flexible** | ||
Apps can be added, updated, or removed without requiring a frontend/backend release. | ||
|
||
- **User-driven installation** | ||
Unlike system features that require admin deployment, apps can often be enabled (installed) directly by end users. | ||
|
||
- **Open for third parties** | ||
Apps are not limited to our company’s developers — external teams and third parties can build and operate their own apps. | ||
|
||
### How They Work | ||
Apps are separate pieces of software that communicate with the platform’s frontend and backend through a **common protocol** (such as APIs or events). | ||
They remain independent, but can seamlessly interact with the system and its users. | ||
|
||
An **App** is a way to extend and automate your team’s experience on Wire]. | ||
Apps can listen to messages, send responses, and integrate with external services. | ||
|
||
### Why Apps? | ||
- **Automation**: Reduce manual tasks and streamline workflows. | ||
- **Integration**: Connect external systems (CRMs, support tools, monitoring). | ||
- **Customization**: Tailor the platform to your team’s needs. | ||
|
||
Apps are owned and managed at the **team level**, giving administrators control over: | ||
- Which Apps can be installed | ||
- What data Apps can access | ||
|
||
### How to create an App | ||
➡️ [Learn how to create an app](./creating-an-app.md) | ||
|
||
# SDK Overview | ||
|
||
We provide an official **Kotlin SDK** to help developers build apps quickly and safely. | ||
|
||
### Why use the SDK? | ||
- Handles authentication for you | ||
- Provides event handling | ||
- Makes sending and receiving messages easier | ||
- Strongly typed for Kotlin developers | ||
|
||
### Future Plans | ||
We currently support **Kotlin**, and plan to expand to more languages (JavaScript, Python, etc.) so every developer can build apps in the language they know best. | ||
|
||
For technical SDK usage and code examples, see the [Developer Documentation on GitHub](https://github.com/wireapp/wire-apps-jvm-sdk/blob/main/docs/APPLICATION.md). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
# Creating an App | ||
|
||
Creating an App is simple and only takes a few minutes. | ||
|
||
--- | ||
|
||
## 1. Open the Team Settings Dashboard | ||
Go to [Team Settings Dashboard] and navigate to **Apps → Create New App**. | ||
|
||
 | ||
alexandreferris marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
alexandreferris marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
--- | ||
|
||
## 2. Choose a Name | ||
Pick a clear, descriptive name for your app. | ||
Example: `SupportBot`, `Daily Standup Assistant`. | ||
|
||
--- | ||
|
||
## 3. Configure Permissions | ||
Apps require **permissions** (also called security scopes). | ||
These define what your app can do. | ||
|
||
|
||
Type 1 - ALL: the same type of bot we have and know. they can do everything a normal client can - reserved for legal hold, archival bots, stuff like that. are permanently online and active | ||
|
||
Type 2 - READ/WRITE: utility bots. users interact with these bots in limited ways, on demand using some command like @poll (in contrast to type 1). Think polls, summary bots, Jira integrations, confluence integrations | ||
|
||
Type 3 - WRITE: write only bots. Think bots that notify you about stuff happening elsewhere and that need a very limited security scope. Github notifications, pager duty, jenkins bot, birthday bot. They do not receive messages. | ||
|
||
|
||
alexandreferris marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| Permission | Common Use | | ||
|---------------|--------------------------------------| | ||
| `ALL` | Can do everything a normal User can. | | ||
| `READ/WRITE` | Utility Apps. | | ||
| `WRITE` | Write only Apps. | | ||
|
||
To learn more about permissions, [click here](./permissions.md) | ||
|
||
--- | ||
|
||
## 4. Generate an App Token | ||
Once created, your app will have a **unique token** used to authenticate requests. | ||
|
||
> 🔒 Treat tokens like passwords — never share them publicly.s | ||
alexandreferris marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
# App Permissions | ||
|
||
Permissions define what your app is allowed to do inside the platform. | ||
|
||
### Permission Types: | ||
- **ALL**: Can do everything a normal User can. | ||
- Reserved for legal hold, archival bots, etc. are permanently online and active. | ||
- **READ/WRITE**: Utility Apps. | ||
- Users interact with these Apps in limited ways, on demand using some command like /poll (in contrast to type 1). Think polls, summary bots, Jira integrations, confluence integrations. | ||
- **READ/WRITE**: Utility Apps. | ||
- Apps that notify you about things happening elsewhere and that need a very limited security scope. GitHub notifications, pager duty, jenkins bot, birthday bot. They do not receive messages. | ||
alexandreferris marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
### Example Scenarios | ||
- A **standup bot** might only need `WRITE`. | ||
- A **reporting app** might need `READ/WRITE`. |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.