-
-
Notifications
You must be signed in to change notification settings - Fork 202
FPP 5.0 API Migration
Greg Hormann edited this page Feb 7, 2021
·
83 revisions
With FPP 5.0, the FPP will be deprecating the fppjson.php and fppxml.php APIs. Relevant end points will be ported to the REST api which is already documented on every FPP instance using /apihelp.php page. This document is being used to track progress. Where known, this also describes where external systems like xLights or older multi-sync interfaces depend on the legacy end point. Going forward, the follow conventions will be used for the REST API
- GET - Fetch value
- PUT - Update a value
- POST - Create new (or replace full)
- DELETE - Remove record
- Required parameters will appear as /api/base/:parm1/:parm2
- Optional parameters will be implemented as /api/base?parm1=val&parm2=val
- PROPOSED : Will be replaced by not designed yet
- PROPOSED : New Endpoint Proposed
- DESIGNED : End point agreed to by dev team but not yet implemented.
- API READY : End point implemented, but UI not updated to use it everywhere.
- COMPLETE : New Endpoint in Master and FPP Endpoint updated to use it.
- KEPT LEGACY : New Endpoint in Master and FPP Endpoint updated to use it but old API kept for backwards compatibility.
Old Endpoint | New End Point | Used Externally by | Status |
---|---|---|---|
getOutputProcessors | GET /api/outputProcessors | NONE | PROPOSED |
setOutputProcessors | POST /api/outputProcessors (still full JSON) | NONE | PROPOSED |
getChannelOutputs | GET /api/channelOutputs | xLights (ALL) | PROPOSED |
setChannelOutputs | POST /api/channelOutputs (still full JSON) | xLights (ALL) | PROPOSED |
setUniverses | Remove? Not sure why this can't be UI only | NONE | PROPOSED |
getDNSInfo | GET /api/network/dns | NONE | PROPOSED |
setDNSInfo | POST /api/network/dns | NONE | PROPOSED |
getFPPDUptime | Add to existing GET api/fppd/status | NONE | COMPLETE |
applyInterfaceInfo | POST /api/network/restart | NONE | PROPOSED |
getInterfaceInfo | GET /api/network/interface/:interface | NONE | PROPOSED |
setInterfaceInfo | POST /api/network/interface/:interface | NONE | PROPOSED |
getFPPSystems | Merge with Existing GET /api/fppd/multiSyncSystems | xLights (ALL), MultiSync (<5.0) | PROPOSED |
getFPPstatus | GET /api/fppd/status | MultiSync (<5.0)??? | API READY |
getSetting | GET /api/settings/:SettingName | NONE | API READY |
setSetting | POST /api/settings/:SettingName | xLights (ALL) | PROPOSED |
startSequence | GET /api/sequence/:SequenceName/start (repeat is optional param) |
NONE | PROPOSED |
stopSequence | GET /api/sequence/:SequenceName/stop | NONE | PROPOSED |
toggleSequencePause | GET /api/sequence/:SequenceName/pause (also /resume) If if already paused will resume (still a toggle) |
NONE | PROPOSED |
singleStepSequence | GET /api/sequence/:SequenceName/step (only valid when paused) |
NONE | PROPOSED |
singleStepSequenceBack | GET /api/sequence/:SequenceName/stepback (only valid when paused) |
NONE | PROPOSED |
getPlayListEntries | Enhance Existing GET /api/playlist/:PlaylistName mergeSubs and fromMemory are options |
NONE | PROPOSED |
getSequenceInfo | Enhance GET /api/sequence/:SequenceName/meta | NONE | PROPOSED |
getMediaDuration | Existing GET /media/:MediaName/duration | NONE | PROPOSED |
getFileSize | GET /api/file/:name/meta (May return more than size) |
NONE | PROPOSED |
copyFile | GET /api/file/:name/copy/:newName | NONE | PROPOSED |
renameFile | GET /api/file/:name/rename/:newName | NONE | PROPOSED |
getPluginSetting | GET /api/plugin/:plugin/setting/:key | Plugins | PROPOSED |
setPluginSetting | POST /api/plugin/:plugin/setting/:key | Plugins | PROPOSED |
getPluginJSON | GET /api/plugin/:plugin/json | Plugins | PROPOSED |
setPluginJSON | POST /api/plugin/:plugin/json | Plugins | PROPOSED |
saveScript | POST /api/file/:Name | NONE | PROPOSED |
setTestMode | POST /api/testmode | NONE | PROPOSED |
getTestMode | GET /api/testmode | NONE | PROPOSED |
setupExtGPIO | POST /api/GPIOSetup/:pin (mode is in payload) |
NONE | PROPOSED |
extGPIO | POST /api/GPIO/:pin (mode and value in payload) |
NONE | PROPOSED |
getSysInfo | Enhance GET /api/fppd/status | xLights(ALL), MultiSync | PROPOSED |
getHostNameInfo | Enhance GET /api/fppd/status | MultiSync | PROPOSED |
clearPersistentNetNames | DELETE /api/network/presisentNames | NONE | COMPLETE |
createPersistentNetNames | POST /api/network/presisentNames | NONE | COMPLETE |
Old Endpoint | New End Point | Used Externally by | Status |
---|---|---|---|
changeGitBranch | Use changebranch.php instead | NONE | COMPLETE |
cloneUniverse | Move to GUI | NONE | PROPOSED |
deleteEffect | DELETE /api/file/:Name | NONE | COMPLETE |
deleteEvent | DELETE /api/event/:Name | NONE | PROPOSED |
deleteFile | DELETE /api/file/:DirName/:Name | NONE | COMPLETE |
deleteUniverse | Move to GUI | NONE | PROPOSED |
extGPIO | POST /api/GPIO/:pin (mode and value in payload) |
NONE | PROPOSED |
getBridgeInputDelayBeforeBlack | GET /api/settings/:SettingName | NONE | COMPLETE |
getFiles | GET /api/files/:type | NONE | COMPLETE |
getFile | GET /api/file/:name tail is optional parameter | NONE | COMPLETE |
getFPPDmode | GET api/settings/fppMode | NONE | COMPLETE |
getFPPstatus | GET /api/fppd/status | NONE | COMPLETE |
getGitOriginLog | GET /api/git/originLog | NONE | COMPLETE |
getInterfaceInfo | DROP -- Never Used | NONE | COMPLETE |
getPixelnetDMXoutputs | GET /api/output/PixelnetDMX | NONE | PROPOSED |
getRunningEffects | GET /api/effects/running | NONE | PROPOSED |
getUniverseReceivedBytes | GET /api/universes/bytes | NONE | PROPOSED |
getUniverses | GET /api/universes/ | NONE | PROPOSED |
getVolume | GET /api/fppd/status | NONE | COMPLETE |
getZip | GET /api/files/zip | NONE | PROPOSED |
gitStatus | GET /api/git/status | NONE | COMPLETE |
installRemoteScript | GET /api/script/install/:category/:filename | NONE | PROPOSED |
isFPPDrunning | GET /api/fppd/status | NONE | PROPOSED |
moveFile | GET /api/file/:name/rename/:newName | xLights | PROPOSED |
playEffect | DEPRECATED - Use Command API | NONE | PROPOSED |
rebootPi | GET /api/system/reboot | MultiSync | KEPT LEGACY |
resetGit | GET /api/git/reset | NONE | COMPLETE |
restartFPPD | GET /api/fppd/restart | xLights(All), Multisync | KEPT LEGACY |
saveEvent | POST /api/event/:major/:minor | NONE | PROPOSED |
saveUSBDongle | POST /api/settings/:SettingName | NONE | PROPOSED |
setBridgeInputDelayBeforeBlack | PUT /api/settings/:SettingName | NONE | COMPLETE |
setFPPDmode | POST api/settings/fppMode | xLights(All), Multisync | KEPT LEGACY |
setUniverseCount | DEPRECATE - Move to UI | NONE | PROPOSED |
setupExtGPIO | POST /api/GPIOSetup/:pin (mode is in payload) |
NONE | PROPOSED |
setVolume | POST /api/audio/volume | NONE | PROPOSED |
shutdownPi | GET /api/system/shutdown | Multisync | KEPT LEGACY |
startFPPD | GET /api/system/fppd/start | NONE | COMPLETE |
startPlaylist | GET /api/playlist/:PlaylistName/start | NONE | PROPOSED |
stopEffectByName | DEPRECATE - Use Commands API | NONE | PROPOSED |
stopEffect | DEPRECATE - Use Commands API | NONE | PROPOSED |
stopFPPD | GET /api/fppd/stop | NONE | COMPLETE |
stopGracefullyAfterLoop | DEPRECATE - Use Commands API | NONE | PROPOSED |
stopGracefully | DEPRECATE - Use Commands API | NONE | PROPOSED |
stopNow | DEPRECATE - Use Commands API | NONE | PROPOSED |
tailFile | GET /api/file/:name tail is optional parameter | NONE | COMPLETE |
triggerEvent | DEPRECATE - Use Commands API | xLights(all) | PROPOSED |
upgradeFPPVersion | GET /api/system/upgradeFPP | NONE | PROPOSED |
viewReleaseNotes | GET /api/system/releaseNotes | NONE | PROPOSED |
viewRemoteScript | GET /api/script/view/:category/:filename | NONE | PROPOSED |