"_copyright": "Copyright (C) 2012 - 2013, Digium, Inc.",
"_author": "David M. Lee, II <dlee@digium.com>",
"_svn_revision": "$Revision$",
- "apiVersion": "0.0.1",
+ "apiVersion": "1.0.0",
"swaggerVersion": "1.1",
"basePath": "http://localhost:8088/stasis",
"resourcePath": "/api-docs/endpoints.{format}",
"operations": [
{
"httpMethod": "GET",
- "summary": "List available endoints.",
- "nickname": "getEndpoints",
+ "summary": "List all endpoints.",
+ "nickname": "list",
+ "responseClass": "List[Endpoint]"
+ }
+ ]
+ },
+ {
+ "path": "/endpoints/{tech}",
+ "description": "Asterisk endpoints",
+ "operations": [
+ {
+ "httpMethod": "GET",
+ "summary": "List available endoints for a given endpoint technology.",
+ "nickname": "listByTech",
"responseClass": "List[Endpoint]",
"parameters": [
{
- "name": "withType",
- "description": "Filter endpoints by type (sip,iax2,dhadi,...)",
- "paramType": "query",
- "required": false,
- "allowMultiple": true,
+ "name": "tech",
+ "description": "Technology of the endpoints (sip,iax2,...)",
+ "paramType": "path",
"dataType": "string"
}
+ ],
+ "errorResponses": [
+ {
+ "code": 404,
+ "reason": "Endpoints not found"
+ }
]
}
]
},
{
- "path": "/endpoints/{endpointId}",
+ "path": "/endpoints/{tech}/{resource}",
"description": "Single endpoint",
"operations": [
{
"httpMethod": "GET",
"summary": "Details for an endpoint.",
- "nickname": "getEndpoint",
+ "nickname": "get",
"responseClass": "Endpoint",
"parameters": [
{
- "name": "endpointId",
+ "name": "tech",
+ "description": "Technology of the endpoint",
+ "paramType": "path",
+ "dataType": "string"
+ },
+ {
+ "name": "resource",
"description": "ID of the endpoint",
"paramType": "path",
"dataType": "string"
}
+ ],
+ "errorResponses": [
+ {
+ "code": 404,
+ "reason": "Endpoints not found"
+ }
]
}
]
"models": {
"Endpoint": {
"id": "Endpoint",
+ "description": "An external device that may offer/accept calls to/from Asterisk.\n\nUnlike most resources, which have a single unique identifier, an endpoint is uniquely identified by the technology/resource pair.",
"properties": {
"technology": {
"type": "string",
+ "description": "Technology of the endpoint",
"required": true
},
- "name": {
+ "resource": {
"type": "string",
+ "description": "Identifier of the endpoint, specific to the given technology.",
+ "required": true
+ },
+ "state": {
+ "type": "string",
+ "description": "Endpoint's state",
+ "required": false,
+ "allowableValues": {
+ "valueType": "LIST",
+ "values": [
+ "unknown",
+ "offline",
+ "online"
+ ]
+ }
+ },
+ "channel_ids": {
+ "type": "List[string]",
+ "description": "Id's of channels associated with this endpoint",
"required": true
}
}