Full-featured HTTP client to work with Gotify API.
Table of Contents
- π₯ Code gen. The client is fully compliant with the official documentation.
- π Slim. Zero dependencies.
- β¨ Runner. Browser and Node support.
- π Custom Http. If you need a custom http client, you can swap it out.
- π³ Tree shaking. Only use what you need.
- πͺοΈ TypeScript. The library is entirely made in typescript
# Using pnpm
pnpm add gotify-client -D
# Using yarn
yarn add gotify-client -D
# Using npm
npm install gotify-client -D
Gotify Client | Gotify Server |
---|---|
0.4.0 | 2.4.0 |
import { GotifyClient } from 'gotify-client'
const client = new GotifyClient('http://gotify.home', {
// You must specify at least 1 key
app: 'app_api_key',
client: 'client_api_key'
})
const message = await gotify.message.createMessage({
message: "Test message!"
})
To execute requests, you need to specify a link to the host
gotify, as well as pass api keys
.
In Gotify there are two token types:
app
: an application is something that sends messages.client
: a client is something that receives message and manages stuff like creating new tokens or delete messages.
constructor(host: string, authKeys: {
app?: string
client?: string
})
The source documentation is fully described in swagger on the official website.
Method | Description | Http request |
---|---|---|
getApps |
Return all applications. | GET /application |
createApp |
Create an application. | POST /application |
updateApplication |
Update an application. | PUT /application/${id} |
deleteApp |
Delete an application. | DELETE /application/${id} |
uploadAppImage |
Upload an image for an application. | POST /application/${id}/image |
removeAppImage |
Deletes an image of an application. | DELETE /application/${id}/image |
getAppMessages |
Return all messages from a specific application. | GET /application/${id}/message |
deleteAppMessages |
Delete all messages from a specific application. | DELETE /application/${id}/message |
Method | Description | Http request |
---|---|---|
getClients |
Return all clients. | GET /client |
createClient |
Create a client. | POST /client |
updateClient |
Update a client. | PUT /client/${id} |
deleteClient |
Delete a client. | DELETE /client/${id} |
Method | Description | Http request |
---|---|---|
currentUser |
Return the current user. | GET /current/user |
updateCurrentUser |
Update the password of the current user. | POST /current/user/password |
Method | Description | Http request |
---|---|---|
getHealth |
Get health information. | GET /health |
Method | Description | Http request |
---|---|---|
getMessages |
Return all messages. | GET /message |
createMessage |
Create a message. | POST /message |
deleteMessages |
Delete all messages. | DELETE /message |
deleteMessage |
Deletes a message with an id. | DELETE /message/${id} |
Method | Description | Http request |
---|---|---|
getPlugins |
Return all plugins. | GET /plugin |
getPluginConfig |
Get YAML configuration for Configurer plugin. | GET /plugin/${id}/config |
updatePluginConfig |
Update YAML configuration for Configurer plugin. | POST /plugin/${id}/config |
disablePlugin |
Disable a plugin. | POST /plugin/${id}/disable |
getPluginDisplay |
Get display info for a Displayer plugin. | GET /plugin/${id}/display |
enablePlugin |
Enable a plugin. | POST /plugin/${id}/enable |
Method | Description | Http request |
---|---|---|
streamMessages |
Websocket, return newly created messages. | GET /stream |
Method | Description | Http request |
---|---|---|
getUsers |
Return all users. | GET /user |
createUser |
Create a user. | POST /user |
getUser |
Get a user. | GET /user/${id} |
updateUser |
Update a user. | POST /user/${id} |
deleteUser |
Deletes a user. | DELETE /user/${id} |
Method | Description | Http request |
---|---|---|
getVersion |
Get version information. | GET /version |
import { MessageApi } from 'gotify-client'
const httpClient = new CustomHttpClient()
const messageApi = new MessageApi(httpClient)
const message = await messageApi.createMessage({
message: "Test message!"
})
This template was created under the MIT License.