20
SAP BusinessObjects Explorer API Guide ■ SAP BusinessObjects Explorer SAP BusinessObjects Business Intelligence platform 4.1 Support Package 2 2013-11-21

SAPBusinessObjectsExplorerAPIGuide ... · • TheauthenticateoperationmusthavethecorrectlogoncredentialstoyourtargetCMS,asoperations requirealogontokenbeforebeingexecuted. • Ensurethelogontokenisusedincorrespondingsamples.Dependingonwhethertheclientapplication

  • Upload
    vandan

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

SAP BusinessObjects Explorer API Guide■ SAP BusinessObjects Explorer SAP BusinessObjects Business Intelligence platform 4.1 Support

Package 2

2013-11-21

© 2013 SAP AG or an SAP affiliate company. All rights reserved. No part of this publication may bereproduced or transmitted in any form or for any purpose without the express permission of SAP AG.

Copyright

The information contained herein may be changed without prior notice. Some software productsmarketed by SAP AG and its distributors contain proprietary software components of other softwarevendors. National product specifications may vary. These materials are provided by SAP AG and itsaffiliated companies ("SAP Group") for informational purposes only, without representation or warrantyof any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials.The only warranties for SAP Group products and services are those that are set forth in the expresswarranty statements accompanying such products and services, if any. Nothing herein should beconstrued as constituting an additional warranty. SAP and other SAP products and services mentionedherein as well as their respective logos are trademarks or registered trademarks of SAP AG inGermany and other countries. Please seehttp://www.sap.com/corporate-en/legal/copyright/index.epx#trademark for additional trademarkinformation and notices.

2013-11-21

Contents

Introducing the Explorer API...................................................................................................5Chapter 1

What operations can be performed with the API?..................................................................7Chapter 2

What files are available in the API sample package?..............................................................9Chapter 3

Prerequisites before using the samples................................................................................11Chapter 4

Updating a sample................................................................................................................13Chapter 5

About the samples................................................................................................................15Chapter 6

Using the samples.................................................................................................................17Chapter 7

Using authenticate.bat...........................................................................................................177.1Using create_new_infospace.bat............................................................................................177.2Using delete_infospace.bat....................................................................................................187.3Using get_data.bat.................................................................................................................187.4Using get_definition.bat..........................................................................................................187.5Using get_infospaces.bat.......................................................................................................197.6Using logoff.bat......................................................................................................................197.7Using replace_infospace_def_and_data.bat............................................................................197.8Opening an Information Space...............................................................................................207.9

2013-11-213

2013-11-214

Contents

Introducing the Explorer API

These samples demonstrate how to use the Input REST API for SAP BusinessObjects Explorer.

The Input REST API allows developers to create, edit, delete, and explore Information Spaces. It allowsdata to be pushed into Explorer from external sources.

2013-11-215

Introducing the Explorer API

2013-11-216

Introducing the Explorer API

What operations can be performed with the API?

The Input REST API uses a predefined XML syntax over HTTP.

Endpoints (URLs) are used with HTTP methods (PUT, POST, GET, and DELETE) to allow developersto perform different operations. A request is sent to Explorer (with or without XML data) and a responseis sent once the request is processed and complete.

The operations that can be performed are:

DELETEGETPOSTPUTENDPOINT

Not supportedGet a list of Infor-mation Spaces

Create a new In-formation SpaceNot supportedinfoSpaces

Delete an InformationSpace

Get the datachunks for a giv-en InformationSpace

Not supportedReplace Informa-tion Space defini-tion and data

infoSpaces/[id]

Delete an InformationSpace

Get the definitionof an InformationSpace

Not supportedNot supportedinfoSpaces/[id]?definition

Not supportedNot supportedGet a valid logontokenNot supportedauth

Log off a userNot supportedNot supportedNot supportedauth/[token]

Not supportedExplore an Infor-mation SpaceNot supportedopenSpace.jsp?id=[id] : Not support-

ed

2013-11-217

What operations can be performed with the API?

2013-11-218

What operations can be performed with the API?

What files are available in the API sample package?

The following files are included in the API package:

DescriptionFile

Text version of this guide and entry point to these samples.readme.txt

Files that are systematically created storing operation results.Files store either the header response or the body response.results/*.txt

Used for subsequent operations after authenticating. Storesthe token in a cookie.samples/cookie.txt

Retrieves a valid logon token.samples/authenticate.bat

Creates a new Information Space.samples/create_new_infospace.bat

Deletes a particular Information Space.samples/delete_infospace.bat

Retrieves the data chunks of a given Information Space.samples/get_data.bat

Retrieves the definition of a given Information Space.samples/get_definition.bat

Retrieves a list of Information Spaces.samples/get_infospaces.bat

Removes the user session.samples/logoff.bat

Replaces the definition and data of a particular InformationSpace.

samples/replace_infospace_def_and_data.bat

URL for auth/[token] endpoint.urls/auth_[token]_endpoint.txt

URL for the auth endpoint.urls/auth_endpoint.txt

URL for the infoSpaces/[id]?definition endpoint.urls/infoSpaces_[id]_definition_endpoint

URL for the InfoSpaces/[id] endpoint.urls/infoSpaces_[id]_endpoint.txt

URL for the infoSpaces endpoint.urls/infoSpaces_endpoint.txt

URL for the openSpace.jsp endpointurls/openSpace_jsp.txt

Example data for creating an Information Space.xml/ValidCreateInfoSpace.txt

Example data for authenticating a user.xml/ValidEnterpriseAuthentication.txt

2013-11-219

What files are available in the API sample package?

DescriptionFile

Example data for updating an Information Space.xml/ValidUpdateInfoSpace.txt

2013-11-2110

What files are available in the API sample package?

Prerequisites before using the samples

You need to do the following before you can use the samples:• Download and install CURL (open source command line tool for transferring data with URL syntax)

onto your client machine, located at: http://curl.haxx.se• Enable and start the Explorer servers in your deployment.• Ensure the application server of your deployment is started.• Ensure that you update the samples with the correct information before launching the .bat files. See

the section Updating a Sample for full information.

Related Topics• Updating a sample

2013-11-2111

Prerequisites before using the samples

2013-11-2112

Prerequisites before using the samples

Updating a sample

API operations within the samples are generally dependent on other operations. Go through thesecheck points before you launch a sample .bat file:• The authenticate operation must have the correct logon credentials to your target CMS, as operations

require a logon token before being executed.• Ensure the logon token is used in corresponding samples. Depending on whether the client application

is browser-based or desktop-based, the token can be placed in a cookie or an HTTP header. Ensurethat you update the cookie.txt file correctly.

• The cookie must use the authentication type "SBOP-Token" and the key Authentication. For example:

Authentication=SBOP-Token <TOKEN>.

• The token can also be placed in the header using the authentication type "SBOP-Token" The header

must be as follows: Authorization: SBOP-Token <TOKEN>.

• Use the Information Space ID for the infoSpaces/[id] and infoSpaces/[id]?definition endpoints. Ensurethe ID is in the samples.

Related Topics• Prerequisites before using the samples

2013-11-2113

Updating a sample

2013-11-2114

Updating a sample

About the samples

This section describes the samples location, how they are used, and the result output.

The samples:• Are located within the /samples/ directory.• Use CURL for invoking the HTTP methods. Each sample is launched by a batch (.BAT) script file

either by double-clicking the batch file or from a command line session. Ensure that you update thesamples (described in the section Updating a sample) before launching a .BAT file.

• Use the endpoints defined in the /samples/urls/ directory. The CURL -K parameter specifies aconfiguration file to read.

• Use xml data defined in text files located within in the /samples/xml/ directory (CURL data parameter).• Write the results (header and data) to the /samples/results/ directory (CURL dump-header and output

parameters). The results include HTTP response codes and if the operation fails, error information.• Use the /samples/cookie.txt file. This file is used by commands as a cookie (CURL cookie parameter),

the format is the Netscape standard and contains a valid token. Copy the result of authenticationfrom /results/AuthenticationOut.txt. If authentication fails then the AuthenticationOut.txt file will containerror information rather than a valid token. To ensure compatibility with web application servers, thecookie value may need to be surrounded by quotation marks. For example, in the authenticateoperation sample: curl -X POST --dump-header results/AuthenticationHeader.txt --outputresults/AuthenticationOut.txt"data @xml/ValidEnterpriseAuthentication.txt" urls/auth_endpoint.txt.

Related Topics• Updating a sample

2013-11-2115

About the samples

2013-11-2116

About the samples

Using the samples

Ensure that you have followed the pre-requisites for using the samples. Each sample is launched by abatch (.BAT) script file either by double-clicking the batch file or from a command line session. Ensurethat you update the samples (described in the section Updating a sample) before launching a .BAT file.An example of a workflow using the samples is as follows:• Authenticate a user.• Create a new Information Space.• Replace Information Space definition and data.• Explore the Information Space.• Logoff.

Related Topics• Prerequisites before using the samples

7.1 Using authenticate.bat

1. Ensure the login details within /xml/ValidEnterpriseAuthentication.txt are valid:username, password,CMS, port number, and auth type.

2. Check that the URL within /urls/auth_endpoint.txt points to your Explorer deployment. By default itpoints to the localhost IP and port number 8080.

3. Launch authenticate.bat, the token (if the operation was successful) is stored in/results/Authentication.txt.

7.2 Using create_new_infospace.bat

1. Launch authenticate.bat.2. Ensure that a login token is within /results/AuthenticationOut.txt.3. Edit cookie.txt to:

a. Ensure the servername IP is valid (default to 127.0.0.1).b. Replace [CopyTokenHere] with the login token found in /results/AuthenticationOut.txt.

2013-11-2117

Using the samples

4. Launch create_new_infospace.bat. The newly created Information Space ID is stored in/results/PostOut.txt.

7.3 Using delete_infospace.bat

1. Launch authenticate.bat.2. Ensure that a login token is within /results/AuthenticationOut.txt.3. Edit cookie.txt to:

a. Ensure the servername/IP is valid (default to 127.0.0.1)/b. Replace [CopyTokenHere] with the login token found in /results/AuthenticationOut.txt.

4. Ensure that the Information Space ID (the space that you want to delete) is in/urls/infoSpaces_[id]_endpoint.txt and is valid.

5. Launch delete_infospace.bat, the HTTP response is stored in /results/DeleteHeader.txt.

7.4 Using get_data.bat

1. Launch authenticate.bat.2. Ensure that a login token is within /results/AuthenticationOut.txt.3. Edit cookie.txt to:

a. Ensure the servername/IP is valid (default to 127.0.0.1)/b. Replace [CopyTokenHere] with the login token found in /results/AuthenticationOut.txt.

4. Ensure that the Information Space ID is in /urls/infoSpaces_[id]_endpoint.txt and is valid.5. Launch get_data.bat, the Space data chunks are stored in /results/GetDataOutput.txt.

7.5 Using get_definition.bat

1. Launch authenticate.bat.2. Ensure that a login token is within /results/AuthenticationOut.txt.3. Edit cookie.txt to:

a. Ensure the servername/IP is valid (default to 127.0.0.1)/b. Replace [CopyTokenHere] with the login token found in /results/AuthenticationOut.txt.

4. Ensure that the Information Space ID is in /urls/infoSpaces_[id]_endpoint.txt and is valid.5. Launch get_data.bat.

2013-11-2118

Using the samples

The Space definition is stored in /results/GetDefOutput.txt.

7.6 Using get_infospaces.bat

1. Launch authenticate.bat.2. Ensure that a login token is within /results/AuthenticationOut.txt.3. Edit cookie.txt to:

a. Ensure the servername/IP is valid (default to 127.0.0.1)/b. Replace [CopyTokenHere] with the login token found in /results/AuthenticationOut.txt.

4. Launch get_infospaces.txt.The list is stored in /results/GetInfoSpacesOut.txt.

7.7 Using logoff.bat

1. Edit /urls/auth_[token]_endpoint.txt to replace =token= with the session token that you want to delete.2. Launch logoff.bat.

The header response is stored in /results/LogoffHeader.txt and errors are stored in/results/LogoffOut.txt

7.8 Using replace_infospace_def_and_data.bat

1. Launch authenticate.bat.2. Ensure that a login token is within /results/AuthenticationOut.txt.3. Edit cookie.txt to:

a. Ensure the servername/IP is valid (default to 127.0.0.1)/b. Replace [CopyTokenHere] with the login token found in /results/AuthenticationOut.txt.

4. Ensure that the Information Space ID is in /urls/infoSpaces_[id]_endpoint.txt and is valid.5. Launch replace_infospace_def_and_data.bat.

The header response is stored in /results/PutUpdateHeader.txt and errors are stored in/results/PutUpdateOut.txt.

2013-11-2119

Using the samples

7.9 Opening an Information Space

Opening an Information Space requires the openSpace.jsp?id=[id] endpoint to be invoked (seeurls/openSpace_jsp.txt). Change the id to the Space to be explored.

There are three possible responses:• If the Space requires indexing then an index command is sent and an indexing status is returned.• If the Space is indexed, a redirect is returned. This allows you to explore the Information Space.• If an error occurred the error (with any codes) is returned in XML.

The redirect response returns the openSpace data in the response body as well as redirect details inthe header. If your client application does not use the same session between operations or is on adifferent web application server as Explorer, then it may be necessary to either enter login detailsmanually or to handle the redirect (recommended solution).

How to handle the redirect depending on your deployment:1. Read the header of the response (includes the Location forward URL).2. The header contains the redirect location and the token. Using these values to build a URL with

your target hostname/port: http://<hostname:port>/polestar/<Location>&token=<Token>.

2013-11-2120

Using the samples