forked from SimplesIP/pabx-app
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
172 lines
6.8 KiB
172 lines
6.8 KiB
{ |
|
"_copyright": "Copyright (C) 2013, Digium, Inc.", |
|
"_author": "David M. Lee, II <dlee@digium.com>", |
|
"_svn_revision": "$Revision$", |
|
"apiVersion": "1.10.0", |
|
"swaggerVersion": "1.1", |
|
"basePath": "http://localhost:8088/ari", |
|
"resourcePath": "/api-docs/applications.{format}", |
|
"apis": [ |
|
{ |
|
"path": "/applications", |
|
"description": "Stasis applications", |
|
"operations": [ |
|
{ |
|
"httpMethod": "GET", |
|
"summary": "List all applications.", |
|
"nickname": "list", |
|
"responseClass": "List[Application]" |
|
} |
|
] |
|
}, |
|
{ |
|
"path": "/applications/{applicationName}", |
|
"description": "Stasis application", |
|
"operations": [ |
|
{ |
|
"httpMethod": "GET", |
|
"summary": "Get details of an application.", |
|
"nickname": "get", |
|
"responseClass": "Application", |
|
"parameters": [ |
|
{ |
|
"name": "applicationName", |
|
"description": "Application's name", |
|
"paramType": "path", |
|
"required": true, |
|
"allowMultiple": false, |
|
"dataType": "string" |
|
} |
|
], |
|
"errorResponses": [ |
|
{ |
|
"code": 404, |
|
"reason": "Application does not exist." |
|
} |
|
] |
|
} |
|
] |
|
}, |
|
{ |
|
"path": "/applications/{applicationName}/subscription", |
|
"description": "Stasis application", |
|
"operations": [ |
|
{ |
|
"httpMethod": "POST", |
|
"summary": "Subscribe an application to a event source.", |
|
"notes": "Returns the state of the application after the subscriptions have changed", |
|
"nickname": "subscribe", |
|
"responseClass": "Application", |
|
"parameters": [ |
|
{ |
|
"name": "applicationName", |
|
"description": "Application's name", |
|
"paramType": "path", |
|
"required": true, |
|
"allowMultiple": false, |
|
"dataType": "string" |
|
}, |
|
{ |
|
"name": "eventSource", |
|
"description": "URI for event source (channel:{channelId}, bridge:{bridgeId}, endpoint:{tech}[/{resource}], deviceState:{deviceName}", |
|
"paramType": "query", |
|
"required": true, |
|
"allowMultiple": true, |
|
"dataType": "string" |
|
} |
|
], |
|
"errorResponses": [ |
|
{ |
|
"code": 400, |
|
"reason": "Missing parameter." |
|
}, |
|
{ |
|
"code": 404, |
|
"reason": "Application does not exist." |
|
}, |
|
{ |
|
"code": 422, |
|
"reason": "Event source does not exist." |
|
} |
|
] |
|
}, |
|
{ |
|
"httpMethod": "DELETE", |
|
"summary": "Unsubscribe an application from an event source.", |
|
"notes": "Returns the state of the application after the subscriptions have changed", |
|
"nickname": "unsubscribe", |
|
"responseClass": "Application", |
|
"parameters": [ |
|
{ |
|
"name": "applicationName", |
|
"description": "Application's name", |
|
"paramType": "path", |
|
"required": true, |
|
"allowMultiple": false, |
|
"dataType": "string" |
|
}, |
|
{ |
|
"name": "eventSource", |
|
"description": "URI for event source (channel:{channelId}, bridge:{bridgeId}, endpoint:{tech}[/{resource}], deviceState:{deviceName}", |
|
"paramType": "query", |
|
"required": true, |
|
"allowMultiple": true, |
|
"dataType": "string" |
|
} |
|
], |
|
"errorResponses": [ |
|
{ |
|
"code": 400, |
|
"reason": "Missing parameter; event source scheme not recognized." |
|
}, |
|
{ |
|
"code": 404, |
|
"reason": "Application does not exist." |
|
}, |
|
{ |
|
"code": 409, |
|
"reason": "Application not subscribed to event source." |
|
}, |
|
{ |
|
"code": 422, |
|
"reason": "Event source does not exist." |
|
} |
|
] |
|
} |
|
] |
|
} |
|
], |
|
"models": { |
|
"Application": { |
|
"id": "Application", |
|
"description": "Details of a Stasis application", |
|
"properties": { |
|
"name": { |
|
"type": "string", |
|
"description": "Name of this application", |
|
"required": true |
|
}, |
|
"channel_ids": { |
|
"type": "List[string]", |
|
"description": "Id's for channels subscribed to.", |
|
"required": true |
|
}, |
|
"bridge_ids": { |
|
"type": "List[string]", |
|
"description": "Id's for bridges subscribed to.", |
|
"required": true |
|
}, |
|
"endpoint_ids": { |
|
"type": "List[string]", |
|
"description": "{tech}/{resource} for endpoints subscribed to.", |
|
"required": true |
|
}, |
|
"device_names": { |
|
"type": "List[string]", |
|
"description": "Names of the devices subscribed to.", |
|
"required": true |
|
} |
|
} |
|
} |
|
} |
|
}
|
|
|