FORMAT: 1A

# XOS
 
 
# Group Deployments

List of the XOS deployments

## Deployments [/api/core/deployments/{id}/]

### List all deployments [GET]

+ Response 200 (application/json)

        [
            {
                "humanReadableName": "MyDeployment",
                "id": 1,
                "created": "2016-04-29T16:19:03.549901Z",
                "updated": "2016-04-29T16:19:05.624151Z",
                "enacted": null,
                "policed": null,
                "backend_register": "{}",
                "backend_status": "0 - Provisioning in progress",
                "deleted": false,
                "write_protect": false,
                "lazy_blocked": false,
                "no_sync": true,
                "name": "MyDeployment",
                "accessControl": "allow all",
                "images": [
                    "1"
                ],
                "sites": [
                    "1"
                ],
                "flavors": [
                    "1",
                    "2",
                    "3"
                ],
                "dashboardviews": [
                    "1"
                ]
            }
        ]

### Create a deployment [POST]

+ Request (application/json)

        {
            "humanReadableName": "MyDeployment",
        }

+ Response 200 (application/json)

        {
            "humanReadableName": "MyDeployment",
            "id": 1,
            "created": "2016-04-29T16:19:03.549901Z",
            "updated": "2016-04-29T16:19:05.624151Z",
            "enacted": null,
            "policed": null,
            "backend_register": "{}",
            "backend_status": "0 - Provisioning in progress",
            "deleted": false,
            "write_protect": false,
            "lazy_blocked": false,
            "no_sync": true,
            "name": "MyDeployment",
            "accessControl": "allow all",
            "images": [
                "1"
            ],
            "sites": [
                "1"
            ],
            "flavors": [
                "1",
                "2",
                "3"
            ],
            "dashboardviews": [
                "1"
            ]
        }

### View a Deployment Detail [GET]

+ Parameters
    + id: 1 (number) - ID of the Deployment in the form of an integer

+ Response 200 (application/json)

        {
            "humanReadableName": "MyDeployment",
            "id": 1,
            "created": "2016-04-27T21:46:57.354544Z",
            "updated": "2016-04-27T21:47:05.221720Z",
            "enacted": null,
            "policed": null,
            "backend_register": "{}",
            "backend_status": "0 - Provisioning in progress",
            "deleted": false,
            "write_protect": false,
            "lazy_blocked": false,
            "no_sync": true,
            "name": "MyDeployment",
            "accessControl": "allow all",
            "images": [],
            "sites": [
                "1"
            ],
            "flavors": [
                "3",
                "2",
                "1"
            ],
            "dashboardviews": [
                "3"
            ]
        }

### Delete a Deployment [DELETE]

+ Parameters
    + id: 1 (number) - ID of the Deployment in the form of an integer

+ Response 204
 
 
# Group Flavors

List of the XOS flavors

## Flavors [/api/core/flavors/{id}/]

### List all flavors [GET]

+ Response 200 (application/json)

        [
            {
                "humanReadableName": "m1.large",
                "id": 1,
                 "created": "2016-04-29T16:19:01.979548Z",
                "updated": "2016-04-29T16:19:03.568238Z",
                "enacted": null,
                "policed": null,
                "backend_register": "{}",
                "backend_status": "0 - Provisioning in progress",
                "deleted": false,
                "write_protect": false,
                "lazy_blocked": false,
                "no_sync": true,
                "name": "m1.large",
                "description": null,
                "flavor": "m1.large",
                "order": 0,
                "default": false,
                "deployments": [
                    "1"
                ]
            }
        ]

### Create a Flavor [POST]

+ Request (application/json)

        {
            "humanReadableName": "mq.test",
        }

+ Response 200 (application/json)

        {
            "humanReadableName": "m1.large",
            "id": 1,
             "created": "2016-04-29T16:19:01.979548Z",
            "updated": "2016-04-29T16:19:03.568238Z",
            "enacted": null,
            "policed": null,
            "backend_register": "{}",
            "backend_status": "0 - Provisioning in progress",
            "deleted": false,
            "write_protect": false,
            "lazy_blocked": false,
            "no_sync": true,
            "name": "m1.large",
            "description": null,
            "flavor": "m1.large",
            "order": 0,
            "default": false,
            "deployments": [
                "1"
            ]
        }

### View a Flavors Detail [GET]

+ Parameters
    + id: 1 (number) - ID of the Flavors in the form of an integer

+ Response 200 (application/json)

        {
            "humanReadableName": "m1.large",
            "id": 1,
             "created": "2016-04-29T16:19:01.979548Z",
            "updated": "2016-04-29T16:19:03.568238Z",
            "enacted": null,
            "policed": null,
            "backend_register": "{}",
            "backend_status": "0 - Provisioning in progress",
            "deleted": false,
            "write_protect": false,
            "lazy_blocked": false,
            "no_sync": true,
            "name": "m1.large",
            "description": null,
            "flavor": "m1.large",
            "order": 0,
            "default": false,
            "deployments": [
                "1"
            ]
        }

### Delete a Flavors Detail [DELETE]

+ Parameters
    + id: 1 (number) - ID of the Flavors in the form of an integer

+ Response 204 
 
 
# Group Instances

List of the XOS instances

## Instances Collection [/api/core/instances/{?no_hyperlinks}]

    + no_hyperlinks (number, optional) - Wheter to return relation with links or ids
        + Default: `0`

### List all Instances [GET]

+ Response 200 (application/json)

        [
            {
                "id": 1,
                "humanReadableName": "uninstantiated-1",
                "created": "2016-04-26T00:36:22.465259Z",
                "updated": "2016-04-26T00:36:22.465288Z",
                "enacted": null,
                "policed": null,
                "backend_register": "{}",
                "backend_status": "0 - Provisioning in progress",
                "deleted": false,
                "write_protect": false,
                "lazy_blocked": false,
                "no_sync": false,
                "instance_id": null,
                "instance_uuid": null,
                "name": "mysite_vcpe",
                "instance_name": null,
                "ip": null,
                "image": "1",
                "creator": "1",
                "slice": "1",
                "deployment": "1",
                "node": "1",
                "numberCores": 0,
                "flavor": "1",
                "userData": null,
                "isolation": "vm",
                "volumes": "/etc/dnsmasq.d,/etc/ufw",
                "parent": null,
                "networks": [
                    "1"
                ]
            }
        ]

### Create an Instance [POST]

+ Parameters
    + no_hyperlinks: 1

+ Request (application/json)

        {
            "name": "test-instance",
            "image": 1,
            "slice": 1,
            "deployment": 1,
            "node": 1
        }

+ Response 200 (application/json)

        {
            "id": 1,
            "humanReadableName": "uninstantiated-1",
            "created": "2016-04-26T00:36:22.465259Z",
            "updated": "2016-04-26T00:36:22.465288Z",
            "enacted": null,
            "policed": null,
            "backend_register": "{}",
            "backend_status": "0 - Provisioning in progress",
            "deleted": false,
            "write_protect": false,
            "lazy_blocked": false,
            "no_sync": false,
            "instance_id": null,
            "instance_uuid": null,
            "name": "test-instance",
            "instance_name": null,
            "ip": null,
            "image": "1",
            "creator": "1",
            "slice": "1",
            "deployment": "1",
            "node": "1",
            "numberCores": 0,
            "flavor": "1",
            "userData": null,
            "isolation": "vm",
            "volumes": "/etc/dnsmasq.d,/etc/ufw",
            "parent": null,
            "networks": [
                "1"
            ]
        }

## Instances Detail [/api/core/instances/{id}/]

### Get instance details [GET]

+ Parameters
    + id: 1 (number) - ID of the Instance in the form of an integer

+ Response 200 (application/json)

        {
            "id": 1,
            "humanReadableName": "uninstantiated-1",
            "created": "2016-04-26T00:36:22.465259Z",
            "updated": "2016-04-26T00:36:22.465288Z",
            "enacted": null,
            "policed": null,
            "backend_register": "{}",
            "backend_status": "0 - Provisioning in progress",
            "deleted": false,
            "write_protect": false,
            "lazy_blocked": false,
            "no_sync": false,
            "instance_id": null,
            "instance_uuid": null,
            "name": "mysite_vcpe",
            "instance_name": null,
            "ip": null,
            "image": "1",
            "creator": "1",
            "slice": "1",
            "deployment": "1",
            "node": "1",
            "numberCores": 0,
            "flavor": "1",
            "userData": null,
            "isolation": "vm",
            "volumes": "/etc/dnsmasq.d,/etc/ufw",
            "parent": null,
            "networks": [
                "1"
            ]
        }

### Delete instance [DELETE]

+ Parameters
    + id: 1 (number) - ID of the Instance in the form of an integer

+ Response 204
 
 
# Group Nodes

List of the XOS nodes

## Nodes [/api/core/nodes/{id}/]

### List all nodes [GET]

+ Response 200 (application/json)

        [
            {
                "humanReadableName": "node2.opencloud.us",
                "id": 1,
                "created": "2016-04-29T16:19:05.661567Z",
                "updated": "2016-04-29T16:19:05.661454Z",
                "enacted": null,
                "policed": null,
                "backend_register": "{}",
                "backend_status": "0 - Provisioning in progress",
                "deleted": false,
                "write_protect": false,
                "lazy_blocked": false,
                "no_sync": true,
                "name": "node2.opencloud.us",
                "site_deployment": "1",
                "site": "1",
                "nodelabels": []
            }
        ]

 
 
# Group Sites

List of the XOS sites

## Sites [/api/core/sites/{id}/]

### List all sites [GET]

+ Response 200 (application/json)

        {
            "humanReadableName": "MySite",
            "id": 1,
            "created": "2016-04-29T16:19:03.587770Z",
            "updated": "2016-04-29T16:19:05.651933Z",
            "enacted": null,
            "policed": null,
            "backend_register": "{}",
            "backend_status": "0 - Provisioning in progress",
            "deleted": false,
            "write_protect": false,
            "lazy_blocked": false,
            "no_sync": false,
            "name": "MySite",
            "site_url": "http://opencord.us/",
            "enabled": true,
            "hosts_nodes": true,
            "hosts_users": true,
            "location": null,
            "longitude": null,
            "latitude": null,
            "login_base": "mysite",
            "is_public": true,
            "abbreviated_name": "",
            "deployments": [
                "1"
            ]
        }
 
 
# Group Slices

List of the XOS slices

## Slices [/api/core/slices/{id}/]

### List all slices [GET]

+ Response 200 (application/json)

        [
            {
                "humanReadableName": "mysite_slice",
                "id": 1,
                "created": "2016-04-29T16:23:22.505072Z",
                "updated": "2016-04-29T16:23:22.504691Z",
                "enacted": null,
                "policed": "2016-04-29T16:23:22.781298Z",
                "backend_register": "{}",
                "backend_status": "0 - Provisioning in progress",
                "deleted": false,
                "write_protect": false,
                "lazy_blocked": false,
                "no_sync": false,
                "name": "mysite_slice",
                "enabled": true,
                "omf_friendly": false,
                "description": "",
                "slice_url": "",
                "site": "http://apt118.apt.emulab.net/api/core/sites/1/",
                "max_instances": 10,
                "service": null,
                "network": null,
                "exposed_ports": null,
                "serviceClass": "http://apt118.apt.emulab.net/api/core/serviceclasses/1/",
                "creator": "http://apt118.apt.emulab.net/api/core/users/1/",
                "default_flavor": null,
                "default_image": null,
                "mount_data_sets": "GenBank",
                "default_isolation": "vm",
                "networks": [
                    "http://apt118.apt.emulab.net/api/core/networks/1/"
                ]
            }
        ]
        
 
 
# Group Users

List of the XOS users

## Users [/api/core/users/{id}/]

### List all Users [GET]

+ Response 200 (application/json)

        [
            {
                "id": 2,
                "password": "pbkdf2_sha256$12000$9gn8DmZuIoz2$YPQkx3AOOV7jZNYr2ddrgUCkiuaPpvb8+aJR7RwLZNA=",
                "last_login": "2016-04-12T18:50:45.880823Z",
                "email": "johndoe@myhouse.com",
                "username": "johndoe@myhouse.com",
                "firstname": "john",
                "lastname": "doe",
                "phone": null,
                "user_url": null,
                "site": "http://xos.dev:9999/api/core/sites/1/",
                "public_key": null,
                "is_active": true,
                "is_admin": false,
                "is_staff": true,
                "is_readonly": false,
                "is_registering": false,
                "is_appuser": false,
                "login_page": null,
                "created": "2016-04-12T18:50:45.912602Z",
                "updated": "2016-04-12T18:50:45.912671Z",
                "enacted": null,
                "policed": null,
                "backend_status": "Provisioning in progress",
                "deleted": false,
                "write_protect": false,
                "timezone": "America/New_York"
            }
        ]
        
 
 
# Group Example

## Example Services Collection [/api/service/exampleservice/]

### List all Example Services [GET]

+ Response 200 (application/json)

        [
            {
                "humanReadableName": "MyExample",
                "id": 1,
                "service_message": "This is the test message"
            }
        ]
 
 
# Group ONOS Services

List of the active onos services

## ONOS Services Collection [/api/service/onos/]

### List all ONOS Services [GET]

+ Response 200 (application/json)

        [
            {
                "humanReadableName": "service_ONOS_vBNG",
                "id": 5,
                "rest_hostname": "",
                "rest_port": "8181",
                "no_container": false,
                "node_key": ""
            }
        ]
 
 
# Group vSG

## vSG Collection [/api/service/vsg/]

### List all vSGs [GET]

+ Response 200 (application/json)

        [
            {
                "humanReadableName": "service_vsg",
                "id": 2,
                "dns_servers": "8.8.8.8",
                "url_filter_kind": null,
                "node_label": null
            }
        ]
 
 
# Group Utility

List of the XOS Utility API

## Login [/api/utility/login/]

### Log a user in the system [POST]

+ Request (application/json)

        {
            "username": "padmin@vicci.org",
            "password": "letmein"
        }

+ Response 200 (application/json)

        {
            "xoscsrftoken":"xuvsRC1jkXAsnrdRlgJvcXpmtthTAqqf",
            "xossessionid":"7ds5a3wzjlgbjqo4odkd25qsm0j2s6zg",
            "user": "{\"policed\": null, \"site\": 3, \"is_appuser\": false, \"is_staff\": true, \"backend_status\": \"Provisioning in progress\", \"id\": 3, \"is_registering\": false, \"last_login\": \"2016-04-30T22:51:04.788675+00:00\", \"email\": \"padmin@vicci.org\", \"no_sync\": false, \"username\": \"padmin@vicci.org\", \"dashboards\": [11], \"login_page\": null, \"firstname\": \"XOS\", \"user_url\": null, \"deleted\": false, \"lastname\": \"admin\", \"is_active\": true, \"lazy_blocked\": false, \"phone\": null, \"is_admin\": true, \"enacted\": null, \"public_key\": null, \"is_readonly\": false, \"no_policy\": false, \"write_protect\": false}"
        }

## Logout [/api/utility/logout/]

### Log a user out of the system [POST]

+ Request (application/json)
        {xossessionid: "sessionId"}

+ Response 200 (application/json)

 
 
# Group Subscribers

Resource related to the CORD Subscribers.

## Subscribers [/api/tenant/cord/subscriber/{subscriber_id}/]

### List All Subscribers [GET]

+ Response 200 (application/json)

        [
            {
                "humanReadableName": "cordSubscriber-1",
                "id": 1,
                "features": {
                    "cdn": false,
                    "uplink_speed": 1000000000,
                    "downlink_speed": 1000000000,
                    "uverse": false,
                    "status": "enabled"
                },
                "identity": {
                    "account_num": "123",
                    "name": "My House"
                },
                "related": {
                    "instance_name": "mysite_vcpe",
                    "vsg_id": 4,
                    "compute_node_name": "node2.opencloud.us",
                    "c_tag": "432",
                    "instance_id": 1,
                    "wan_container_ip": null,
                    "volt_id": 3,
                    "s_tag": "222"
                }
            }
        ]


### View a Subscriber Detail [GET]

+ Parameters
    + subscriber_id: 1 (number) - ID of the Subscriber in the form of an integer

+ Response 200 (application/json)
 
        {
            "humanReadableName": "cordSubscriber-1", 
            "id": 1, 
            "features": { 
                "cdn": false, 
                "uplink_speed": 1000000000, 
                "downlink_speed": 1000000000, 
                "uverse": false, 
                "status": "enabled" 
            }, 
            "identity": { 
                "account_num": "123",
                "name": "My House"
            }, 
            "related": { 
                "instance_name": "mysite_vcpe", 
                "vsg_id": 4, 
                "compute_node_name": "node2.opencloud.us",
                "c_tag": "432", 
                "instance_id": 1, 
                "wan_container_ip": null, 
                "volt_id": 3, 
                "s_tag": "222" 
            } 
        }

### Delete a Subscriber [DELETE]

+ Parameters
    + subscriber_id: 1 (number) - ID of the Subscriber in the form of an integer

+ Response 204

### Subscriber features [/api/tenant/cord/subscriber/{subscriber_id}/features/]

+ Parameters
    + subscriber_id: 1 (number) - ID of the Subscriber in the form of an integer

### View a Subscriber Features Detail [GET]

+ Response 200 (application/json)

        {
            "cdn": false, 
            "uplink_speed": 1000000000, 
            "downlink_speed": 1000000000, 
            "uverse": true, 
            "status": "enabled"
        }

#### Subscriber features uplink_speed [/api/tenant/cord/subscriber/{subscriber_id}/features/uplink_speed/]

+ Parameters
    + subscriber_id: 1 (number) - ID of the Subscriber in the form of an integer

#### Read Subscriber uplink_speed [GET]

+ Response 200 (application/json)

        {
            "uplink_speed": 1000000000
        }

#### Update Subscriber uplink_speed [PUT]

+ Request 200 (application/json)

        {
            "uplink_speed": 1000000000
        }

+ Response 200 (application/json)

        {
            "uplink_speed": 1000000000
        }

#### Subscriber features downlink_speed [/api/tenant/cord/subscriber/{subscriber_id}/features/downlink_speed/]

+ Parameters
    + subscriber_id: 1 (number) - ID of the Subscriber in the form of an integer

#### Read Subscriber downlink_speed [GET]

+ Response 200 (application/json)

        {
            "downlink_speed": 1000000000
        }

#### Update Subscriber downlink_speed [PUT]

+ Request 200 (application/json)

        {
            "downlink_speed": 1000000000
        }

+ Response 200 (application/json)

        {
            "downlink_speed": 1000000000
        }

#### Subscriber features cdn [/api/tenant/cord/subscriber/{subscriber_id}/features/cdn/]

+ Parameters
    + subscriber_id: 1 (number) - ID of the Subscriber in the form of an integer

#### Read Subscriber cdn [GET]

+ Response 200 (application/json)

        {
            "cdn": false
        }

#### Update Subscriber cdn [PUT]

+ Request 200 (application/json)

        {
            "cdn": false
        }

+ Response 200 (application/json)

        {
            "cdn": false
        }

#### Subscriber features uverse [/api/tenant/cord/subscriber/{subscriber_id}/features/uverse/]

+ Parameters
    + subscriber_id: 1 (number) - ID of the Subscriber in the form of an integer

#### Read Subscriber uverse [GET]

+ Response 200 (application/json)

        {
            "uverse": false
        }

#### Update Subscriber uverse [PUT]

+ Request 200 (application/json)

        {
            "uverse": false
        }

+ Response 200 (application/json)

        {
            "uverse": false
        }

#### Subscriber features status [/api/tenant/cord/subscriber/{subscriber_id}/features/status/]

+ Parameters
    + subscriber_id: 1 (number) - ID of the Subscriber in the form of an integer

#### Read Subscriber status [GET]

+ Response 200 (application/json)

        {
            "status": "enabled"
        }

#### Update Subscriber status [PUT]

+ Request 200 (application/json)

        {
            "status": "enabled"
        }

+ Response 200 (application/json)

        {
            "status": "enabled"
        }
 
 
# Group Truckroll

Virtual Truckroll, enable to perform basic test on user connectivity such as ping, traceroute and tcpdump.

## Truckroll Collection [/api/tenant/truckroll/{truckroll_id}/]

### List all Truckroll [GET]

+ Response 200 (application/json)

        [
            {
                "humanReadableName": "vTR-tenant-9",
                "id": 9,
                "provider_service": 6,
                "target_id": 2,
                "scope": "container",
                "test": "ping",
                "argument": "8.8.8.8",
                "result": "",
                "result_code": "",
                "is_synced": false,
                "backend_status": "2 - Exception('Unreachable results in ansible recipe',)"
            }
        ]

### Create a Truckroll [POST]

A virtual truckroll is complete once is_synced equal true

+ Request (application/json)

        {
            "target_id": 2,
            "scope": "container",
            "test": "ping",
            "argument": "8.8.8.8"
        }

+ Response 201 (application/json)

        {
            "humanReadableName": "vTR-tenant-1",
            "id": 1,
            "provider_service": 6,
            "target_id": 2,
            "scope": "container",
            "test": "ping",
            "argument": "8.8.8.8",
            "result": null,
            "result_code": null,
            "is_synced": false,
            "backend_status": "0 - Provisioning in progress"
        }


### View a Truckroll Detail [GET]

+ Parameters
    + truckroll_id: 1 (number) - ID of the Truckroll in the form of an integer

+ Response 200 (application/json)

        {
            "humanReadableName": "vTR-tenant-10",
            "id": 10,
            "provider_service": 6,
            "target_id": 2,
            "scope": "container",
            "test": "ping",
            "argument": "8.8.8.8",
            "result": null,
            "result_code": null,
            "is_synced": false,
            "backend_status": "0 - Provisioning in progress"
        }

### Delete a Truckroll Detail [DELETE]

+ Parameters
    + truckroll_id: 1 (number) - ID of the Truckroll in the form of an integer

+ Response 204

 
 
# Group vOLT

OLT devices aggregate a set of subscriber connections

## vOLT Collection [/api/tenant/cord/volt/{volt_id}/]

### List all vOLT [GET]

+ Response 200 (application/json)

        [
            {
                "humanReadableName": "vOLT-tenant-1",
                "id": 1,
                "service_specific_id": "123",
                "s_tag": "222",
                "c_tag": "432",
                "subscriber": 1,
                "related": {
                    "instance_id": 1,
                    "instance_name": "mysite_vcpe",
                    "vsg_id": 4,
                    "wan_container_ip": null,
                    "compute_node_name": "node2.opencloud.us"
                }
            }
        ]

### Create a vOLT [POST]

+ Request (application/json)

        {
            "s_tag": "222",
            "c_tag": "432",
            "subscriber": 1
        }

+ Response 201 (application/json)

        {
                "humanReadableName": "vOLT-tenant-1",
                "id": 1,
                "service_specific_id": "123",
                "s_tag": "222",
                "c_tag": "432",
                "subscriber": 1,
                "related": {
                    "instance_id": 1,
                    "instance_name": "mysite_vcpe",
                    "vsg_id": 4,
                    "wan_container_ip": null,
                    "compute_node_name": "node2.opencloud.us"
                }
            }

### View a vOLT Detail [GET]

+ Parameters
    + volt_id: 1 (number) - ID of the vOLT in the form of an integer

+ Response 200 (application/json)

        {
            "humanReadableName": "vOLT-tenant-1",
            "id": 1,
            "service_specific_id": "123",
            "s_tag": "222",
            "c_tag": "432",
            "subscriber": 1,
            "related": {
                "instance_id": 1,
                "instance_name": "mysite_vcpe",
                "vsg_id": 4,
                "wan_container_ip": null,
                "compute_node_name": "node2.opencloud.us"
            }
        }

 
 
# Group ONOS Apps

## ONOS App Collection [/api/tenant/onos/app/]

### List all apps [GET]

+ Response 200 (application/json)

        [
            {
                "humanReadableName": "onos-tenant-7",
                "id": 7,
                "name": "vBNG_ONOS_app",
                "dependencies": "org.onosproject.proxyarp, org.onosproject.virtualbng, org.onosproject.openflow, org.onosproject.fwd"
            }
        ]