275 lines
7.2 KiB
JSON
275 lines
7.2 KiB
JSON
{
|
|
"info": {
|
|
"_postman_id": "paarrot-api-collection",
|
|
"name": "Paarrot API",
|
|
"description": "API endpoints for controlling Paarrot (Cinny Desktop) features like muting, deafening, channel navigation, and messaging.",
|
|
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
|
|
"_exporter_id": "paarrot-api"
|
|
},
|
|
"item": [
|
|
{
|
|
"name": "Health & Status",
|
|
"item": [
|
|
{
|
|
"name": "Health Check",
|
|
"request": {
|
|
"method": "GET",
|
|
"header": [],
|
|
"url": {
|
|
"raw": "{{baseUrl}}/health",
|
|
"host": [
|
|
"{{baseUrl}}"
|
|
],
|
|
"path": [
|
|
"health"
|
|
]
|
|
},
|
|
"description": "Check if the API server is running and healthy."
|
|
}
|
|
},
|
|
{
|
|
"name": "Get Status",
|
|
"request": {
|
|
"method": "GET",
|
|
"header": [],
|
|
"url": {
|
|
"raw": "{{baseUrl}}/status",
|
|
"host": [
|
|
"{{baseUrl}}"
|
|
],
|
|
"path": [
|
|
"status"
|
|
]
|
|
},
|
|
"description": "Get current application status including mute/deafen state, current room, connection status, and user ID."
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "Audio Controls",
|
|
"item": [
|
|
{
|
|
"name": "Toggle Mute",
|
|
"request": {
|
|
"method": "POST",
|
|
"header": [],
|
|
"url": {
|
|
"raw": "{{baseUrl}}/mute/toggle",
|
|
"host": [
|
|
"{{baseUrl}}"
|
|
],
|
|
"path": [
|
|
"mute",
|
|
"toggle"
|
|
]
|
|
},
|
|
"description": "Toggle microphone mute state. Works only when in an active call."
|
|
}
|
|
},
|
|
{
|
|
"name": "Set Mute",
|
|
"request": {
|
|
"method": "POST",
|
|
"header": [
|
|
{
|
|
"key": "Content-Type",
|
|
"value": "application/json"
|
|
}
|
|
],
|
|
"body": {
|
|
"mode": "raw",
|
|
"raw": "{\n \"muted\": true\n}"
|
|
},
|
|
"url": {
|
|
"raw": "{{baseUrl}}/mute",
|
|
"host": [
|
|
"{{baseUrl}}"
|
|
],
|
|
"path": [
|
|
"mute"
|
|
]
|
|
},
|
|
"description": "Set microphone mute to a specific state (true/false). Works only when in an active call."
|
|
}
|
|
},
|
|
{
|
|
"name": "Toggle Deafen",
|
|
"request": {
|
|
"method": "POST",
|
|
"header": [],
|
|
"url": {
|
|
"raw": "{{baseUrl}}/deafen/toggle",
|
|
"host": [
|
|
"{{baseUrl}}"
|
|
],
|
|
"path": [
|
|
"deafen",
|
|
"toggle"
|
|
]
|
|
},
|
|
"description": "Toggle deafen state (mutes all incoming audio and your microphone). Works only when in an active call."
|
|
}
|
|
},
|
|
{
|
|
"name": "Set Deafen",
|
|
"request": {
|
|
"method": "POST",
|
|
"header": [
|
|
{
|
|
"key": "Content-Type",
|
|
"value": "application/json"
|
|
}
|
|
],
|
|
"body": {
|
|
"mode": "raw",
|
|
"raw": "{\n \"deafened\": true\n}"
|
|
},
|
|
"url": {
|
|
"raw": "{{baseUrl}}/deafen",
|
|
"host": [
|
|
"{{baseUrl}}"
|
|
],
|
|
"path": [
|
|
"deafen"
|
|
]
|
|
},
|
|
"description": "Set deafen to a specific state (true/false). Works only when in an active call."
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "Rooms & Channels",
|
|
"item": [
|
|
{
|
|
"name": "Get Channels",
|
|
"request": {
|
|
"method": "GET",
|
|
"header": [],
|
|
"url": {
|
|
"raw": "{{baseUrl}}/channels",
|
|
"host": [
|
|
"{{baseUrl}}"
|
|
],
|
|
"path": [
|
|
"channels"
|
|
]
|
|
},
|
|
"description": "Get list of all available rooms/channels with their details (roomId, name, isDirect, avatar)."
|
|
}
|
|
},
|
|
{
|
|
"name": "Get Current Room",
|
|
"request": {
|
|
"method": "GET",
|
|
"header": [],
|
|
"url": {
|
|
"raw": "{{baseUrl}}/room/current",
|
|
"host": [
|
|
"{{baseUrl}}"
|
|
],
|
|
"path": [
|
|
"room",
|
|
"current"
|
|
]
|
|
},
|
|
"description": "Get information about the currently active room."
|
|
}
|
|
},
|
|
{
|
|
"name": "Change Channel",
|
|
"request": {
|
|
"method": "POST",
|
|
"header": [
|
|
{
|
|
"key": "Content-Type",
|
|
"value": "application/json"
|
|
}
|
|
],
|
|
"body": {
|
|
"mode": "raw",
|
|
"raw": "{\n \"roomId\": \"!YourRoomId:server.com\"\n}"
|
|
},
|
|
"url": {
|
|
"raw": "{{baseUrl}}/channel",
|
|
"host": [
|
|
"{{baseUrl}}"
|
|
],
|
|
"path": [
|
|
"channel"
|
|
]
|
|
},
|
|
"description": "Navigate to a different room/channel by providing its roomId."
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "Messaging",
|
|
"item": [
|
|
{
|
|
"name": "Send Message to Room",
|
|
"request": {
|
|
"method": "POST",
|
|
"header": [
|
|
{
|
|
"key": "Content-Type",
|
|
"value": "application/json"
|
|
}
|
|
],
|
|
"body": {
|
|
"mode": "raw",
|
|
"raw": "{\n \"roomId\": \"!YourRoomId:server.com\",\n \"message\": \"Hello from Postman!\"\n}"
|
|
},
|
|
"url": {
|
|
"raw": "{{baseUrl}}/message",
|
|
"host": [
|
|
"{{baseUrl}}"
|
|
],
|
|
"path": [
|
|
"message"
|
|
]
|
|
},
|
|
"description": "Send a text message to a specific room by providing roomId and message content."
|
|
}
|
|
},
|
|
{
|
|
"name": "Send Message to Current Room",
|
|
"request": {
|
|
"method": "POST",
|
|
"header": [
|
|
{
|
|
"key": "Content-Type",
|
|
"value": "application/json"
|
|
}
|
|
],
|
|
"body": {
|
|
"mode": "raw",
|
|
"raw": "{\n \"message\": \"Hello from Postman!\"\n}"
|
|
},
|
|
"url": {
|
|
"raw": "{{baseUrl}}/message/current",
|
|
"host": [
|
|
"{{baseUrl}}"
|
|
],
|
|
"path": [
|
|
"message",
|
|
"current"
|
|
]
|
|
},
|
|
"description": "Send a text message to the currently active room."
|
|
}
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"variable": [
|
|
{
|
|
"key": "baseUrl",
|
|
"value": "http://127.0.0.1:33384",
|
|
"type": "string"
|
|
}
|
|
]
|
|
}
|