2013-04-22 14:58:53 +00:00
{
"_copyright" : "Copyright (C) 2012 - 2013, Digium, Inc." ,
"_author" : "David M. Lee, II <dlee@digium.com>" ,
"_svn_revision" : "$Revision$" ,
"apiVersion" : "0.0.1" ,
"swaggerVersion" : "1.1" ,
"basePath" : "http://localhost:8088/stasis" ,
"resourcePath" : "/api-docs/recordings.{format}" ,
"apis" : [
{
"path" : "/recordings/stored" ,
"description" : "Recordings" ,
"operations" : [
{
"httpMethod" : "GET" ,
"summary" : "List recordings that are complete." ,
"nickname" : "getStoredRecordings" ,
"responseClass" : "List[StoredRecording]"
}
]
},
{
2013-07-03 17:58:45 +00:00
"path" : "/recordings/stored/{recordingName}" ,
2013-04-22 14:58:53 +00:00
"description" : "Individual recording" ,
"operations" : [
{
"httpMethod" : "GET" ,
"summary" : "Get a stored recording's details." ,
"nickname" : "getStoredRecording" ,
"responseClass" : "StoredRecording" ,
"parameters" : [
{
2013-07-03 17:58:45 +00:00
"name" : "recordingName" ,
"description" : "The name of the recording" ,
2013-04-22 14:58:53 +00:00
"paramType" : "path" ,
"required" : true ,
"allowMultiple" : false ,
"dataType" : "string"
}
]
},
{
"httpMethod" : "DELETE" ,
"summary" : "Delete a stored recording." ,
"nickname" : "deleteStoredRecording" ,
"responseClass" : "void" ,
"parameters" : [
{
2013-07-03 17:58:45 +00:00
"name" : "recordingName" ,
"description" : "The name of the recording" ,
2013-04-22 14:58:53 +00:00
"paramType" : "path" ,
"required" : true ,
"allowMultiple" : false ,
"dataType" : "string"
}
]
}
]
},
{
"path" : "/recordings/live" ,
"description" : "Recordings that are in progress" ,
"operations" : [
{
"httpMethod" : "GET" ,
"summary" : "List libe recordings." ,
"nickname" : "getLiveRecordings" ,
"responseClass" : "List[LiveRecording]"
}
]
},
{
2013-07-03 17:58:45 +00:00
"path" : "/recordings/live/{recordingName}" ,
2013-04-22 14:58:53 +00:00
"description" : "A recording that is in progress" ,
"operations" : [
{
"httpMethod" : "GET" ,
"summary" : "List live recordings." ,
"nickname" : "getLiveRecording" ,
"responseClass" : "LiveRecording" ,
"parameters" : [
{
2013-07-03 17:58:45 +00:00
"name" : "recordingName" ,
"description" : "The name of the recording" ,
2013-04-22 14:58:53 +00:00
"paramType" : "path" ,
"required" : true ,
"allowMultiple" : false ,
"dataType" : "string"
}
2013-08-06 14:44:45 +00:00
],
"errorResponses" : [
{
"code" : 404 ,
"reason" : "Recording not found"
}
2013-04-22 14:58:53 +00:00
]
},
{
"httpMethod" : "DELETE" ,
"summary" : "Stop a live recording and discard it." ,
"nickname" : "cancelRecording" ,
"responseClass" : "void" ,
"parameters" : [
{
2013-07-03 17:58:45 +00:00
"name" : "recordingName" ,
"description" : "The name of the recording" ,
2013-04-22 14:58:53 +00:00
"paramType" : "path" ,
"required" : true ,
"allowMultiple" : false ,
"dataType" : "string"
}
2013-08-06 14:44:45 +00:00
],
"errorResponses" : [
{
"code" : 404 ,
"reason" : "Recording not found"
}
2013-04-22 14:58:53 +00:00
]
}
]
},
{
2013-07-03 17:58:45 +00:00
"path" : "/recordings/live/{recordingName}/stop" ,
2013-04-22 14:58:53 +00:00
"operations" : [
{
"httpMethod" : "POST" ,
"summary" : "Stop a live recording and store it." ,
"nickname" : "stopRecording" ,
"responseClass" : "void" ,
"parameters" : [
{
2013-07-03 17:58:45 +00:00
"name" : "recordingName" ,
"description" : "The name of the recording" ,
2013-04-22 14:58:53 +00:00
"paramType" : "path" ,
"required" : true ,
"allowMultiple" : false ,
"dataType" : "string"
}
2013-08-06 14:44:45 +00:00
],
"errorResponses" : [
{
"code" : 404 ,
"reason" : "Recording not found"
}
2013-04-22 14:58:53 +00:00
]
}
]
},
{
2013-07-03 17:58:45 +00:00
"path" : "/recordings/live/{recordingName}/pause" ,
2013-04-22 14:58:53 +00:00
"operations" : [
{
"httpMethod" : "POST" ,
"summary" : "Pause a live recording." ,
2013-08-06 14:44:45 +00:00
"notes" : "Pausing a recording suspends silence detection, which will be restarted when the recording is unpaused. Paused time is not included in the accounting for maxDurationSeconds." ,
2013-04-22 14:58:53 +00:00
"nickname" : "pauseRecording" ,
"responseClass" : "void" ,
"parameters" : [
{
2013-07-03 17:58:45 +00:00
"name" : "recordingName" ,
"description" : "The name of the recording" ,
2013-04-22 14:58:53 +00:00
"paramType" : "path" ,
"required" : true ,
"allowMultiple" : false ,
"dataType" : "string"
}
2013-08-06 14:44:45 +00:00
],
"errorResponses" : [
{
"code" : 404 ,
"reason" : "Recording not found"
},
{
"code" : 409 ,
"reason" : "Recording not in session"
}
2013-04-22 14:58:53 +00:00
]
}
]
},
{
2013-07-03 17:58:45 +00:00
"path" : "/recordings/live/{recordingName}/unpause" ,
2013-04-22 14:58:53 +00:00
"operations" : [
{
"httpMethod" : "POST" ,
"summary" : "Unpause a live recording." ,
"nickname" : "unpauseRecording" ,
"responseClass" : "void" ,
"parameters" : [
{
2013-07-03 17:58:45 +00:00
"name" : "recordingName" ,
"description" : "The name of the recording" ,
2013-04-22 14:58:53 +00:00
"paramType" : "path" ,
"required" : true ,
"allowMultiple" : false ,
"dataType" : "string"
}
2013-08-06 14:44:45 +00:00
],
"errorResponses" : [
{
"code" : 404 ,
"reason" : "Recording not found"
},
{
"code" : 409 ,
"reason" : "Recording not in session"
}
2013-04-22 14:58:53 +00:00
]
}
]
},
{
2013-07-03 17:58:45 +00:00
"path" : "/recordings/live/{recordingName}/mute" ,
2013-04-22 14:58:53 +00:00
"operations" : [
{
"httpMethod" : "POST" ,
"summary" : "Mute a live recording." ,
2013-07-03 17:58:45 +00:00
"notes" : "Muting a recording suspends silence detection, which will be restarted when the recording is unmuted." ,
2013-04-22 14:58:53 +00:00
"nickname" : "muteRecording" ,
"responseClass" : "void" ,
"parameters" : [
{
2013-07-03 17:58:45 +00:00
"name" : "recordingName" ,
"description" : "The name of the recording" ,
2013-04-22 14:58:53 +00:00
"paramType" : "path" ,
"required" : true ,
"allowMultiple" : false ,
"dataType" : "string"
}
2013-08-06 14:44:45 +00:00
],
"errorResponses" : [
{
"code" : 404 ,
"reason" : "Recording not found"
},
{
"code" : 409 ,
"reason" : "Recording not in session"
}
2013-04-22 14:58:53 +00:00
]
}
]
},
{
2013-07-03 17:58:45 +00:00
"path" : "/recordings/live/{recordingName}/unmute" ,
2013-04-22 14:58:53 +00:00
"operations" : [
{
"httpMethod" : "POST" ,
"summary" : "Unmute a live recording." ,
"nickname" : "unmuteRecording" ,
"responseClass" : "void" ,
"parameters" : [
{
2013-07-03 17:58:45 +00:00
"name" : "recordingName" ,
"description" : "The name of the recording" ,
2013-04-22 14:58:53 +00:00
"paramType" : "path" ,
"required" : true ,
"allowMultiple" : false ,
"dataType" : "string"
}
2013-08-06 14:44:45 +00:00
],
"errorResponses" : [
{
"code" : 404 ,
"reason" : "Recording not found"
},
{
"code" : 409 ,
"reason" : "Recording not in session"
}
2013-04-22 14:58:53 +00:00
]
}
]
}
],
"models" : {
"StoredRecording" : {
"id" : "StoredRecording" ,
2013-07-03 16:32:41 +00:00
"description" : "A past recording that may be played back." ,
2013-04-22 14:58:53 +00:00
"properties" : {
"id" : {
"required" : true ,
"type" : "string"
},
"formats" : {
"required" : true ,
"type" : "List[string]"
},
2013-07-03 16:32:41 +00:00
"duration_seconds" : {
2013-04-22 14:58:53 +00:00
"required" : false ,
"type" : "int"
},
"time" : {
"description" : "Time recording was started" ,
"required" : false ,
"type" : "Date"
}
}
},
"LiveRecording" : {
"id" : "LiveRecording" ,
2013-07-03 16:32:41 +00:00
"description" : "A recording that is in progress" ,
2013-04-22 14:58:53 +00:00
"properties" : {
2013-07-19 19:35:21 +00:00
"name" : {
"required" : true ,
"type" : "string"
},
"state" : {
"required" : true ,
"type" : "string"
},
"format" : {
2013-04-22 14:58:53 +00:00
"required" : true ,
"type" : "string"
}
}
}
}
}