Title page. Alcatel-Lucent 5620 SERVICE AWARE MANAGER 13.0 R7



Similar documents
Oracle Fusion Middleware Oracle API Gateway OAuth User Guide 11g Release 2 ( )

How To Use Kiteworks On A Microsoft Webmail Account On A Pc Or Macbook Or Ipad (For A Webmail Password) On A Webcomposer (For An Ipad) On An Ipa Or Ipa (For

OAuth 2.0 Developers Guide. Ping Identity, Inc th Street, Suite 100, Denver, CO

Title page. Alcatel-Lucent SERVICE AWARE MANAGER Rel R6

Table of Contents. Open-Xchange Authentication & Session Handling. 1.Introduction...3

Axway API Gateway. Version 7.4.1

PingFederate. Windows Live Cloud Identity Connector. User Guide. Version 1.0

Fairsail REST API: Guide for Developers

CA Nimsoft Service Desk

Cloud Elements! Marketing Hub Provisioning and Usage Guide!

vcloud Air Platform Programmer's Guide

IBM WebSphere Application Server

Force.com REST API Developer's Guide

Contents. 2 Alfresco API Version 1.0

Riverbed Cascade Shark Common REST API v1.0

AIRTEL INDIA OPEN API. Application Developer Guide for OAuth2 Authentication and Authorization. Document Version 1.1

Copyright Pivotal Software Inc, of 10

Cloud Elements ecommerce Hub Provisioning Guide API Version 2.0 BETA

CA Spectrum and CA Service Desk

API documentation - 1 -

Using SAML for Single Sign-On in the SOA Software Platform

Audit Management Reference

Common definitions and specifications for OMA REST interfaces

Application Note. Gemalto s SA Server and OpenLDAP

EHR OAuth 2.0 Security

An Oracle White Paper June RESTful Web Services for the Oracle Database Cloud - Multitenant Edition

Qlik REST Connector Installation and User Guide


M86 Web Filter USER GUIDE for M86 Mobile Security Client. Software Version: Document Version:

Application Note. Citrix Presentation Server through a Citrix Web Interface with OTP only

Dell One Identity Cloud Access Manager How to Develop OpenID Connect Apps

Manage Address Book. Administrator's Guide

ACR Connect Authentication Service Developers Guide

Login with Amazon. Developer Guide for Websites

MadCap Software. Upgrading Guide. Pulse

RealPresence Platform Director

HPSM Integration Guide

Netwrix Auditor. Administrator's Guide. Version: /30/2015

App Orchestration 2.5

Dell Statistica Document Management System (SDMS) Installation Instructions

Tenrox. Single Sign-On (SSO) Setup Guide. January, Tenrox. All rights reserved.

vshield API Programming Guide vshield Manager 4.1 vshield App 1.0 vshield Edge 1.0 vshield Endpoint 1.0

D&B Direct+ API Documentation for IP Address Detail Lookup. Version 1, REST Interface. Intended for Early Adopter Program Participants

User Self-Service Configuration Overview

Synology SSO Server. Development Guide

docs.rackspace.com/api

CA Spectrum and CA Embedded Entitlements Manager

A Standards-based Mobile Application IdM Architecture

Bitcoin Payment Gateway API

Sage 200 Web Time & Expenses Guide

CaseWare Time. CaseWare Cloud Integration Guide. For Time 2015 and CaseWare Cloud

Portal Administration. Administrator Guide


Application Lifecycle Manager Deployment Guide

Certificate Management

HP Operations Orchestration Software

Cisco UCS Director Payment Gateway Integration Guide, Release 4.1

CA Unified Infrastructure Management Server

LAN API FOR DOORBIRD AND BIRDGUARD

Google Docs Print. Administrator's Guide

Jobs Guide Identity Manager February 10, 2012

fåíéêåéí=péêîéê=^çãáåáëíê~íçêûë=dìáçé

User Guide Novell iprint 1.1 March 2015

Business Interaction Server. Configuration Guide Rev A

Installing Management Applications on VNX for File

IBM Aspera Add-in for Microsoft Outlook 1.3.2

Keeping access control while moving to the cloud. Presented by Zdenek Nejedly Computing & Communications Services University of Guelph

Active Directory Extension User Guide. Version 1.0

CA Nimsoft Service Desk

Google Drive. Administrator's Guide

Request Manager Installation and Configuration Guide

Installation Guide ARGUS Symphony 1.6 and Business App Toolkit. 6/13/ ARGUS Software, Inc.

Cisco TelePresence Authenticating Cisco VCS Accounts Using LDAP

Getting Started with the icontact API

Simple Cloud Identity Management (SCIM)

INTEGRATION GUIDE. DIGIPASS Authentication for Citrix NetScaler (with AGEE)

Enterprise Self Service Quick start Guide

Junos Space. Junos Space Security Director Restful Web Services API Reference. Modified: Copyright 2016, Juniper Networks, Inc.

CA Nimsoft Monitor Snap

How To Login To The Mft Internet Server (Mft) On A Pc Or Macbook Or Macintosh (Macintosh) With A Password Protected (Macbook) Or Ipad (Macro) (For Macintosh) (Macros

Synology NAS Server Mail Station User Guide

SOA Software API Gateway Appliance 7.1.x Administration Guide


Authenticate and authorize API with Apigility. by Enrico Zimuel Software Engineer Apigility and ZF2 Team

Configuring IBM Cognos Controller 8 to use Single Sign- On

OAuth Guide Release 6.0

SevOne NMS Download Installation and Implementation Guide

Service Description: Cisco Prime Home Hosted Services. This document describes the Cisco Prime Home Hosted Services.

Using EMC Unisphere in a Web Browsing Environment: Browser and Security Settings to Improve the Experience

DIGIPASS Authentication for Microsoft ISA 2006 Single Sign-On for Outlook Web Access

reference: HTTP: The Definitive Guide by David Gourley and Brian Totty (O Reilly, 2002)

Copyright 2013, 3CX Ltd.

Setup Guide Access Manager Appliance 3.2 SP3

RSA Authentication Manager 8.1 Help Desk Administrator s Guide

Startup guide for Zimonitor

Centrify Mobile Authentication Services

Dell One Identity Cloud Access Manager How to Configure vworkspace Integration

Intel Storage System SSR212CC Enclosure Management Software Installation Guide For Red Hat* Enterprise Linux

CORPORATE HEADQUARTERS Elitecore Technologies Ltd. 904 Silicon Tower, Off. C.G. Road, Ahmedabad , INDIA

Administration Quick Start

Transcription:

Title page Alcatel-Lucent 5620 SERVICE AWARE MANAGER 13.0 R7 APPLICATION API DEVELOPER GUIDE 3HE-10590-AAAA-TQZZA Issue 1 December 2015

Legal notice Legal notice Alcatel, Lucent, Alcatel-Lucent and the Alcatel-Lucent logo are trademarks of Alcatel-Lucent. All other trademarks are the property of their respective owners. The information presented is subject to change without notice. Alcatel-Lucent assumes no responsibility for inaccuracies contained herein. Copyright 2015 Alcatel-Lucent. All rights reserved. Disclaimers Alcatel-Lucent products are intended for commercial uses. Without the appropriate network design engineering, they must not be sold, licensed or otherwise distributed for use in any hazardous environments requiring fail-safe performance, such as in the operation of nuclear facilities, aircraft navigation or communication systems, air traffic control, direct life-support machines, or weapons systems, in which the failure of products could lead directly to death, personal injury, or severe physical or environmental damage. The customer hereby agrees that the use, sale, license or other distribution of the products for any such application without the prior written consent of Alcatel-Lucent, shall be at the customer's sole risk. The customer hereby agrees to defend and hold Alcatel-Lucent harmless from any claims for loss, cost, damage, expense or liability that may arise out of or in connection with the use, sale, license or other distribution of the products in such applications. This document may contain information regarding the use and installation of non-alcatel-lucent products. Please note that this information is provided as a courtesy to assist you. While Alcatel-Lucent tries to ensure that this information accurately reflects information provided by the supplier, please refer to the materials provided with any non-alcatel-lucent product and contact the supplier for confirmation. Alcatel-Lucent assumes no responsibility or liability for incorrect or incomplete information provided about non-alcatel-lucent products. However, this does not constitute a representation or warranty. The warranties provided for Alcatel-Lucent products, if any, are set forth in contractual documentation entered into by Alcatel-Lucent and its customers. This document was originally written in English. If there is any conflict or inconsistency between the English version and any other version of a document, the English version shall prevail.

Contents About this document Purpose...v Document support...v How to comment...v Part I: Getting started 1 Getting started... 1-1 Part II: Applications and OSS 2 Applications overview... 2-1 Applications... 2-1 Applications API... 2-2 3 OSS communication with applications... 3-1 OSS communication... 3-1 Workflow to access an application resource... 3-3 Part III: OSS domains 4 Network and service assurance... 4-1 Fault Management... 4-1 iii

Contents Part IV: Appendices 5 Error handling... 5-1 Error handling... 5-1 6 Application REST API examples... 6-1 Examples... 6-1 iv

About this document this document Purpose The Application API Developer Guide provides information to help OSS developers create business applications which interact with applications in order to perform various network management functions. Document support Customer documentation and product support URLs: Customer documentation welcome page https://infoproducts.alcatel-lucent.com/cgi-bin/doc_welc.pl Technical support http://support.alcatel-lucent.com How to comment Documentation feedback documentation.feedback@alcatel-lucent.com... v

About this document vi

Part I: Getting started Purpose This volume provides an overview of OSS application development and Open Interfaces Professional Services. Contents Chapter 1, Getting started 1-1... I-1

Getting started I-2

1 1Getting started About this guide Before you begin This guide provides information to help OSS developers create business applications which interact with applications in order to perform various network management functions. Alcatel-Lucent recommends that you do the following before you start your OSS application development: review the requirements for licenses for the application with which you plan to integrate understand OSS interfaces in general and knowledge of the following technologies, which are beyond the scope of this guide: HTTP(S) HyperText Transfer Protocol (Secure) REST architecture Representational State Transfer JSON Javascript Object Notation oauth 2.0 applications Open Interfaces Professional Services The Alcatel-Lucent OIPS (Open Interfaces Professional Services) portfolio provides OSS developers support how to integrate with our suite of applications. OSS integration initiatives include project review, design consultation, development support, and training for integration projects.... 1-1

Getting started Key elements of each service offering include: Design consultation and high-level project reviews. Extensive software design consultation provides architectural review of a proposed design and guidance on whether the design methodology is suited to the proposed application given Alcatel-Lucent experience with the platform and interface. software development support and technical guidance sample code that provide examples to facilitate rapid OSS integration OSS product training that minimizes project down time and optimizes development efficiency Alcatel-Lucent OIPS can customize the support content and contract length to meet the unique development requirements of service providers. 1-2

Part II: Applications and OSS Purpose This volume describes the applications, API, OSS communications, and OSS domains. Contents Chapter 2, Applications overview 2-1 Chapter 3, OSS communication with applications 3-1... II-1

Applications and OSS II-2

2 2Applications overview Purpose This chapter describes the applications and the application RESTful interfaces. Contents Applications 2-1 Applications API 2-2 Applications The provides network management functions using browser-based applications. The applications are external to the client GUI and do not require a local client installation. The use of the applications is intended mainly for network fault monitoring and troubleshooting. Each application publishes a set of URLs which point to resources, or web services, managed by them. Each domain application documents the URLs that are available to users. These URLs can be accessed through a browser by any authorized user, including OSSs which can use them to cross launch from their own application. To view a dashboard of all the available applications: http(s)://<host> Where host is the hostname or IP address where the is installed. HTTP(S) must be used when the system is secure. To view the published URLs of a given application:... 2-1

Applications overview Applications http(s)://<host>/<app_name>/api-docs Where host is the hostname or IP address which hosts the application, app_name is the name of the application. For example, Fault Management. For more information on the applications, see the User Guide and System Administrator Guide. Applications API In addition to the published URLs, each application also makes a set of REST north bound API available, when applicable, to allow OSSs to access the resources of the application. The applications have a number of services, or resources, that OSSs can access through a REST API. The following figure illustrates the major components during interactions between an OSS and a application in general. REST OSS Client HTTP(s) HTTP(s) REST oauth 2.0 REST Web App REST oauth 2.0 REST Web App Primary 5620 SamServer- Web Server Secondary 5620 SamServer- Web Server Managed network DB DB Legend: Standby 25443 2-2

Applications overview Applications API The REST OSS client is an application that can communicate using the HTTP(S) protocol with the system. There is only one active server at a time, which is the primary server. The OSS client application must only communicate with the active server. The OSS client sends a JSON formatted REST request using the standard HTTP(S) protocol to the appropriate application in the system. The application processes the request and returns a JSON formatted response through the same HTTP protocol. 2-3

Applications overview Applications API 2-4

3 3OSS communication with applications Purpose This chapter describes how an OSS communicates with applications and the underlying network through the application REST interface. Contents OSS communication 3-1 Workflow to access an application resource 3-3 OSS communication The OSS application communicates with the applications using the HTTP(S) protocol. The requests and responses are formatted using JSON. An OSS client must first determine the hostnames (or IP addresses) of the primary and secondary (for a redundant system) workstations which host the applications. The primary and secondary hostname (or IP addresses) are provided by the applications administrator.... 3-1

OSS communication with applications OSS communication The OSS client must always communicate with applications hosted on the same workstation as the active server. The following steps are required to determine the primary application host in a redundant system: 1. If the OSS application is integrated with JMS, it receives a notification which indicates which is the active server. For more information see the XML OSS Developer Guide. If JMS is not used, go to step 2. 2. The OSS client issues the HTTP(S) request to the primary hostname. If the request fails with error code HTTP/1.1 503 Service Unavailable, go to step 3. 3. The OSS client issues the HTTP(s) request to the second hostname. If the request fails again, return to step 1. Once the primary application host is established, the OSS application sends a JSON formatted HTTP(S) request to access application resources through the RESTful API provided by the application. These resources are protected. OSS applications require a valid user to access them: User security for the applications is currently administered by the user security system. See user security in the System Administrator Guide for more information. With a authenticated user, OSS applications can open a web session (using oauth 2.0 framework) which allows them to invoke the applications RESTful APIs. The following figure shows how an OSS communicates with an application. OSS Client oauth 2.0 Server WebApp 1.1 Open web session (Request access token) Authentication and authorize user if valid 1.2 Return access token 2.1 Open web session (Request access token) Process request 2.2 Return data 3.1 Terminate web session (Request to revoke access token) Access token revoked 3.2 Successful revocation 25442 3-2

OSS communication with applications OSS communication Workflow to access an application resource The following workflow describes how to access a web resource through its RESTful API. See Chapter 6, Application REST API examples. Process... 1 Open a web session uses oauth 2.0 standard mechanism The web service owner (i.e. the system administrator) provides user credentials (username and password) to OSS application (client). To obtain an access token: 1. The OSS client issues a request to obtain an access token (or a bearer token) from the authorization server using the user credentials: An HTTP(S) POST request is sent to http(s)://host/auth/api/v1. The request header must contain Content-Type field with value application/json and Authorization field with value Basic <base 64 encoding of username:password>. The request body must contain grant_type field with value client_credentials. 2. The authorization server authenticates the OSS client user credentials. If the credentials are valid, the authorization server issues the bearer token in the response. The OSS client application has an active session as long as the bearer token is valid.... 2 Access the protected resource using your active web session. To access an application resource: 1. Obtain the URL of the REST API. 2. Build your JSON-formatted request using the schema of the REST API; the request header must contain the field Authorization with value Bearer <access token received in workflow step 1 of the opened web session>. 3. Issue the HTTP(S) request (e.g. GET, POST, etc). When required, use URL double encoding/decoding to handle special characters (not allowed in URL). 4. Data is returned to be processed by the OSS application.... 3 Terminate the web session. 3-3

OSS communication with applications Workflow to access an application resource The web session must be terminated when it is no longer needed by the OSS application because the token does not expire. To terminate a web session: 1. Send an HTTP(S) request to terminate the web session by revoking the bearer token: An HTTP(S) POST request is sent to http(s)://host/auth/api/v1 The request header must contain Authorization field with value Bearer <access token> The request body must contain revoke_type field with value token and username field with value set to the username of the user who obtained the token earlier 2. The access token is rendered invalid and can no longer be used. 3-4

Part III: OSS domains Purpose This volume contains information that a developer can use to help with the development of applications for OSS domains. Contents Chapter 4, Network and service assurance 4-1... III-1

OSS domains III-2

4 4Network and service assurance Purpose This chapter contains information that a developer can use to help with the development of applications for the following OSS domains: Fault Management Contents Fault Management 4-1 Fault Management Fault Management API The Fault Management application provides a means of investigating faults in a network. A user can obtain information about faults, such as their causes and impacts. The Fault Management Application provides a list of published URLs that can be launched from OSS applications and a set of RESTful APIs designed for Fault Management OSS applications. Information model documentation The Fault Management application provides REST interfaces to expose some of its resources, the information model of these REST APIs can be accessed as follows: https://<host>/faultmanagement/api-docs Where host is the hostname or IP address which hosts the application. Fault management application example on host 135.121.156.20: http://135.121.156.20/faultmanagement/api-docs/.... 4-1

Network and service assurance Fault Management To obtain the full URL of the REST API, append the name of API to the base URL shown at the bottom. For example, the URL to retrieve the alarms is http://135.121.156.20/faultmanagement/api/v1/alarms. To view the schema of a particular REST API, click on the interface name. For example, if you click on /v1/alarms/{objectfullname}/causes, the following information about the specific alarm is shown: 4-2

Network and service assurance Fault Management OSS use case: Root Cause analysis and impact of an alarm 1. OSS application receives a critical alarm through the JMS notification system. The alarm objectfullname is faultmanager:svc-mgr@service- 5@35.121.20.55@circuit-21-37 alarm-221-30-166. 2. To determine what other alarms have been caused by this alarm, the OSS issues the following request (the objectfullname of the alarm is URL encoded): GET /FaultManagement/api/v1/alarms/faultManager%3Asvc- mgr%40service-5%4035.121.20.55%40circuit-21-37%7calarm-221-30-166/causes HTTP/1.1 Host: 135.121.158.77 Authorization: Bearer YWRtaW4tNDMxNmJkYTktZjQxMC00YmRiLWExYzItMTFhY2E0MjA4NGFj Cache-Control: no-cache The response is a JSON formatted tree of alarm causes: 4-3

Network and service assurance Fault Management { "objectfullname": "faultmanager:svc-mgr@service- 5@35.121.20.55@circuit-21-37 alarm-221-30-166", "causes": [{"objectfullname": "faultmanager:servicetunnel@from- 35.121.20.55-id-21 alarm-30-12-23", } "causes": [] } ] The response shows a tree of alarms caused by the current alarm. 3. To determine the impact this alarm has on the network objects, the OSS issues the following request: GET /FaultManagement/api/v1/alarms/ faultmanager%3asvc- mgr%40service-5%4035.121.20.55%40circuit-21-37%7calarm-221-30-166/impacts HTTP/1.1 Host: 135.121.158.77 Authorization: Bearer YWRtaW4tNDMxNmJkYTktZjQxMC00YmRiLWExYzItMTFhY2E0MjA4NGFj Cache-Control: no-cache The response is JSON formatted tree of impacted alarms: { "objectfullname": "faultmanager:svc-mgr@service- 5@35.121.20.55@circuit-21-37 alarm-221-30-166", "impacts": [ { "objectfullname": "faultmanager:svc-mgr@service- 5@35.121.20.55 alarm-97-16-83","impacts": [] } } ] The response is a tree of impacted alarms. Fault Management cross-launch The Fault Management application publishes a list of URLs which allows an OSS application to perform various functions on alarms. The full list of public URLs can be viewed at: 4-4

Network and service assurance Fault Management http(s)://<host>/faultmanagement/api-docs/ Where host is the hostname or IP address which hosts the Fault Management application (which is typically the workstation which hosts the system). Below are examples of the published URLs: <host>/faultmanagement/ <host>/faultmanagement/?view=<viewname> Where viewname is one of: unhealthyne, alarmlist, neinspector, topproblems. <host>/faultmanagement/?view=alarmlistimpacts&objectfullname=<alarm_objectfullname> Where alarm_objectfullname is a double URL-encoded alarm objectfullname. Use case: cross-launch Fault Management from an OSS application 1. OSS application receives a critical alarm (vpls.site down) through the 5620 JMS notification system. The alarm objectfullname is faultmanager:svc-mgr@service- 9@35.121.20.55 alarm-97-16-83 2. OSS wants to determine the impact of this alarm by cross-launching the Fault Management application. It issues the following request (Notice that the objectfullname of the alarm is URL encoded): http://135.121.158.77/faultmanagement/?view=alarmlistimpacts&objectfullname=faultmanager%3asvcmgr%40service-9%4035.121.20.55%7calarm-97-16-83 3. The Fault Management application is launched in a web browser and opened to the Alarm Impacts window. You can quickly assess the impact of the alarm including the affected objects. 4-5

Network and service assurance Fault Management 4-6

Part IV: Appendices Purpose The following appendices contain additional reference information about the application API. Contents Chapter 5, Error handling 5-1 Chapter 6, Application REST API examples 6-1... IV-1

Appendices IV-2

5 5Error handling Purpose This appendix describes error handling. Contents Error handling 5-1 Error handling HTTP(S) Error codes API Specific Errors The HTTP(S) protocol is used between the OSS application and the applications; all standard HTTP(S) error codes must be handled accordingly. Each REST interface documents error codes specific to the interface; see interface documentation on how to handle these errors.... 5-1

Error handling Error handling 5-2

6 6Application REST API examples Purpose This appendix provides application API examples. Contents Examples 6-1 Examples OSS user authorization and authentication Example request: POST /auth/api/v1 HTTP/1.1 Host: mairead Authorization: Basic ehz6mwv2rlm0d0vfufrhruzqsejvzzpmohfxovbaevjnnmlls0dfs2hab2xhqzb2sldmd == Content-Type: application/json Content-Length: 29 Accept-Encoding: gzip {"grant_type":"client_credentials"} Example response: HTTP/1.1 200 OK Status: 200 OK... 6-1

Application REST API examples Examples Content-Type: application/json; charset=utf-8... Content-Encoding: gzip Content-Length: 140 {"token_type":"bearer", "access_token":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%2f"} Access an application resource Example request: GET /FaultManagement/api/v1/alarms HTTP/1.1 Host: mairead Authorization: Bearer AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%2F Accept-Encoding: gzip Terminate a web session Example request: POST /auth/api/v1 HTTP/1.1 Host: mairead Authorization: Bearer AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%2F Content-Length: 29 Accept-Encoding: gzip {"revoke_type":"token","username":"my_username" } 6-2