$schema: http://support.riverbed.com/apis/service_def/2.2 defaultAuthorization: none id: http://support.riverbed.com/apis/common/1.0 name: common provider: riverbed resources: auth_info: additionalProperties: false description: 'Information that may be necessary to properly authenticate to the device. ' links: get: method: GET response: {$ref: '#/resources/auth_info'} self: {path: $/auth_info} properties: login_banner: {description: 'A free-form text string that should be displayed to the user prior to logging in, ala /etc/issue on UNIX systems ', type: string} specify_purpose: {description: 'Indicates whether or not this device can make use of the purpose string when logging in ', type: boolean} supported_methods: description: List of supported authentication methods items: description: A supported authentication method enum: [BASIC, COOKIE, OAUTH_2_0] type: string type: array type: object info: additionalProperties: false description: Device Info links: get: method: GET response: {$ref: '#/resources/info'} self: {path: $/info} properties: device_name: {description: Device name, type: string} hw_version: {description: Device hardware version (if applicable), type: string} mgmt_addresses: description: 'IP addresses configured/assigned to the management interface(s) of this device. ' items: {description: One management IP address, type: string} type: array model: {description: Device model, type: string} serial: {description: Device serial number (if applicable), type: string} sw_version: {description: Device software version, type: string} required: [device_name, model, sw_version] type: object ping: additionalProperties: false description: Safe resource for determining if the system is running. links: get: method: GET response: {$ref: '#/resources/ping'} self: {path: $/ping} type: object services: description: Available services on this device items: description: One service properties: id: {description: Service identifier / namespace, type: string} versions: description: API versions supported items: description: One service version links: service_definition: method: GET path: template: $/../../{name}/{version} vars: {name: 2/id, version: '0'} response: {$ref: 'http://support.riverbed.com/apis/service_def/2.2'} type: string type: array type: object links: get: method: GET response: {$ref: '#/resources/services'} self: {path: $/services} tags: relint-disable: [C0301, C0303] type: array session_auth: additionalProperties: false description: Authentication via session-based cookies links: login: description: Log in and create a new session method: POST path: $/login request: additionalProperties: false description: Login details properties: password: {description: Password to log in with, type: string} purpose: {description: Reason for logging in, type: string} username: {description: Username to log in with, type: string} required: [username, password] type: object response: additionalProperties: false properties: session_id: {description: Value to be used in a session cookie, type: string} session_key: {description: Key to be used in a session cookie, type: string} required: [session_key, session_id] type: object logout: {method: POST, path: $/logout} self: {path: $/login} type: object title: Common Resources version: '1.0'