App Installs

App installations

Write permission: canEditApp role

Queries

appInstallsByServer

GET
/api/v1/servers/:serverId/app-installs

List app installations for a server.

Terminal

curl "https://start.chat/api/v1/servers/{serverId}/app-installs" \
-H "Authorization: Bearer sk_live_xxx"

appInstallById

GET
/api/v1/app-installs/:appInstallId

Get app installation details by ID.

Terminal

curl "https://start.chat/api/v1/app-installs/{appInstallId}" \
-H "Authorization: Bearer sk_live_xxx"

Delete

DELETE
/api/v1/appInstalls/:id

Uninstall an app from a server.

Parameters

FieldTypeRequiredDescription
idstringYes

Example

Terminal

curl -X DELETE "https://start.chat/api/v1/appInstalls/{id}" \
-H "Authorization: Bearer sk_live_xxx"
import { setup, mutate } from '@start-chat/sdk'
await setup({ apiKey: 'sk_live_xxx' })
const result = await mutate.appInstall.delete({
id: 'abc123',
})

Response

{
"ok": true,
"data": {
"id": "abc123",
"appId": "app_abc123",
"createdAt": 1709251200000,
"creatorId": "usr_abc123",
"serverId": "srv_abc123"
}
}

Insert

POST
/api/v1/appInstalls

Install an app to a server.

Parameters

FieldTypeRequiredDescription
channelIdstringNo
settingsstringNorunning, idle, error
threadIdstringNo
messageIdstringNo
appIdstringYes
serverIdstringYes

Example

Terminal

curl -X POST "https://start.chat/api/v1/appInstalls" \
-H "Authorization: Bearer sk_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"appId": "app_abc123",
"serverId": "srv_abc123"
}'
import { setup, mutate } from '@start-chat/sdk'
await setup({ apiKey: 'sk_live_xxx' })
const result = await mutate.appInstall.insert({
appId: 'app_abc123',
serverId: 'srv_abc123',
})

Response

{
"ok": true,
"data": {
"id": "abc123",
"appId": "app_abc123",
"createdAt": 1709251200000,
"creatorId": "usr_abc123",
"serverId": "srv_abc123"
}
}