Proclaim App Command API

Print Friendly and PDF

Proclaim has many built-in commands that can be executed from third-party devices. To control these with midi, look here. To control Proclaim, you will be making HTTP requests against Proclaim’s internal HTTP server.

 

Connecting

First, ensure Proclaim’s local server is enabled. To do so, open Proclaim and Go to Settings > Remote and hit Enable. If on Windows, you may be prompted to allow Proclaim to make a firewall exception for the port it needs to expose.

 

Proclaim exposes the API on port 52195. Currently, this port cannot be changed.

 

Authentication

Proclaim will allow requests unauthenticated if they originate from the same computer. This allows for easy integration with our official Stream Deck plugin.

 

For calls originating outside your local machine, you will need to authenticate with Proclaim first. To do so, you will make a POST request to the authenticate route with the network password supplied in the BODY. This password defaults to ‘proclaim’ and can be changed in Proclaim > Settings > Remote > Network Control Password.

Note: This password will be passed as plain text over your network, so do not use a password that is important to you.

 

Path: /appCommand/authenticate

Method: POST

Port: 52195

Body: JSON object with the following shape:

{

"Password": "proclaim or your own password"

}

 

Example:

POST http://[ipaddress]:52195/appCommand/authenticate

Body:

{

"Password": "proclaim"

}

 

On return, if the correct password was sent, Proclaim will respond with JSON containing the Proclaim Auth Token like:

{

"proclaimAuthToken":"oxdBKO0NkEyMGj4-UqYVGQ"

}

 

In all future requests, include this auth token in a header called ProclaimAuthToken.



Perform App Commands

To perform an app command, you will need to hit the /appCommand route along with 1 or 2 parameters. The first is `appCommandName` and is required. The second, is `index` and is optional and only needed for a few App Commands. You can see which ones in the list toward the bottom of this article.

 

Path: /appCommand/perform

Query Params:

appCommandName: A valid, case-insensitive app command name.

index: optional index to provide along with the app command.

Method: GET

Port: 52195

Headers: ProclaimAuthHeader={proclaim auth token}


Example:

GET http://[ipaddress]:52195/appCommand/perform?appCommandName=nextSlide

 

Example with index

GET http://[ipaddress]:52195/appCommand/perform?appCommandName=goToServiceItem&index=4



List of App Commands

The following are the support app commands today. You can see a similar list in Proclaim when setting up MIDI Input.

For commands that require an index, the index is expected to be a value between 1 - 254 and will be annotated with a *

 

Slide

 

NextSlide

PreviousSlide

NextServiceItem

PreviousServiceItem

StartPreService

StartWarmUp

StartService

StartPostService

GoToServiceItem*

GoToSlide*

 

Audio Video

 

NextAudioItem

PreviousPreviousAudioItem

VideoRestart

VideoRewind

VideoFastForward

VideoPlay

VideoPause

 

QuickScreens

 

ShowBlankQuickScreen

ShowLogoQuickScreen

ShowNoTextQuickScreen

ShowFloatingHeartsQuickScreen

ShowFloatingAmensQuickScreen

ShowAmenQuickScreen

ShowHallelujahQuickScreen

ShowPraiseTheLordQuickScreen

ShowHeIsRisenQuickScreen

ShowHeIsRisenWhiteQuickScreen

 

On/Off Air

 

GoOnAir

GoOffAir

 

Song Commands

 

For songs, the index is which part of the song it is. So Verse 1 would be 1. Chorus would be 1, Chorus 2 would be 2, etc. For Chorus, Bridge or other un-index values you can ignore the index parameter.

 

ShowSongLyricsVerseByIndex*

ShowSongLyricsBridgeByIndex*

ShowSongLyricsChorusByIndex*

ShowSongLyricsPreChorusByIndex*

ShowSongLyricsEndingByIndex*

ShowSongLyricsInterludeByIndex*

ShowSongLyricsTagByIndex*

 

Additional API

The OnAir session route returns a unique on air session id if Proclaim is On Air and returns nothing if Proclaim is not On Air. The session id is stable for the duration of the On Air session. If Proclaim is taken off air and goes back On Air, it will return a new session id.

 

This route does not require any authentication.

 

Path: /onair/session

Method: GET

Port: 52195

 

Example:

GET http://[ipaddress]:52195/onair/session



Was this article helpful?
Suggest an improvement or request a feature

Can't find what you need? Give us a call!