mirror of https://github.com/asterisk/asterisk
				
				
				
			
			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.
		
		
		
		
		
			
		
			
				
					
					
						
							173 lines
						
					
					
						
							4.3 KiB
						
					
					
				
			
		
		
	
	
							173 lines
						
					
					
						
							4.3 KiB
						
					
					
				| {
 | |
| 	"_copyright": "Copyright (C) 2013, Digium, Inc.",
 | |
| 	"_author": "David M. Lee, II <dlee@digium.com>",
 | |
| 	"_svn_revision": "$Revision$",
 | |
| 	"apiVersion": "1.9.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
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 	}
 | |
| }
 |