Model Context Protocol (MCP) finally gives AI models a way to access the business data needed to make them really useful at work. CData MCP Servers have the depth and performance to make sure AI has access to all of the answers.
Try them now for free →Build SAP Ariba Procurement-Connected Web Apps with Axios and CData Connect Cloud
Use CData Connect Cloud to connect to live SAP Ariba Procurement data and build SAP Ariba Procurement-connected web apps with Axios.
Axios is a JavaScript library that allows developers to make HTTP requests to servers from a web browser or Node.js. When paired with CData Connect Cloud, you get access to live SAP Ariba Procurement data for your web apps. This article shows how to connect to SAP Ariba Procurement and build web apps in Axios with access to live SAP Ariba Procurement data.
Connect to SAP Ariba Procurement from Axios
To work with SAP Ariba Procurement in Axios, we need to connect to SAP Ariba Procurement from Connect Cloud, provide user access to the connection, and create OData endpoints for the SAP Ariba Procurement data.
(Optional) Add a New Connect Cloud User
As needed, create Users to connect to SAP Ariba Procurement through Connect Cloud.
- Navigate to the Users page and click Invite Users
- Enter the new user's email address and click Send to invite the user
- You can review and edit users from the Users page
Add a Personal Access Token
If you are connecting from a service, application, platform, or framework that does not support OAuth authentication, you can create a Personal Access Token (PAT) to use for authentication. Best practices would dictate that you create a separate PAT for each service, to maintain granularity of access.
- Click on your username at the top right of the Connect Cloud app and click User Profile.
- On the User Profile page, scroll down to the Personal Access Tokens section and click Create PAT.
- Give your PAT a name and click Create.
- The personal access token is only visible at creation, so be sure to copy it and store it securely for future use.
Connect to SAP Ariba Procurement from Connect Cloud
CData Connect Cloud uses a straightforward, point-and-click interface to connect to data sources.
- Log into Connect Cloud, click Connections and click Add Connection
- Select "SAP Ariba Procurement" from the Add Connection panel
-
Enter the necessary authentication properties to connect to SAP Ariba Procurement.
In order to connect with SAP Ariba Procurement, set the following:
- ANID: Your Ariba Network ID.
- ANID: Specify which API you would like the provider to retrieve SAP Ariba data from. Select the Buyer or Supplier API based on your business role (possible values are PurchaseOrdersBuyerAPIV1 or PurchaseOrdersSupplierAPIV1).
- Environment: Indicate whether you are connecting to a test or production environment (possible values are TEST or PRODUCTION).
Authenticating with OAuth
After setting connection properties, you need to configure OAuth connectivity to authenticate.
- Set AuthScheme to OAuthClient.
- Register an application with the service to obtain the APIKey, OAuthClientId and OAuthClientSecret.
For more information on creating an OAuth application, refer to the Help documentation.
Automatic OAuth
After setting the following, you are ready to connect:
-
APIKey: The Application key in your app settings.
OAuthClientId: The OAuth Client Id in your app settings.
OAuthClientSecret: The OAuth Secret in your app settings.
When you connect, the provider automatically completes the OAuth process:
- The provider obtains an access token from SAP Ariba and uses it to request data.
- The provider refreshes the access token automatically when it expires.
- The OAuth values are saved in memory relative to the location specified in OAuthSettingsLocation.
- Click Create & Test
- Navigate to the Permissions tab in the Add SAP Ariba Procurement Connection page and update the User-based permissions.
Note the CData Connect Cloud SQL API Endpoint(s)
CData Connect Cloud contains API endpoints that allow you to submit SQL queries to SAP Ariba Procurement through common web requests. To work with SAP Ariba Procurement data in Axios web apps, you will use the query endpoint.
Query Endpoint
https://cloud.cdata.com/api/query
With the connection and Workspace configured, you are ready to connect to SAP Ariba Procurement data from Axios.
Connect to SAP Ariba Procurement Data in Axios Workflows
To establish a connection from Axios to CData Connect Cloud using the OData protocol, follow these steps.
- Create a project directory for your web app. For example: ~/connect_cloud/
- Open a terminal, navigate the the project directory and initialize a node project using the command:
npm init -y
- Install the Axios dependency in the project using the following command:
npm install axios
In your project directory, create a file called server.js that contains the following code. Provide your CData Connect Cloud username (e.g. user@mydomain.com) and PAT (the PAT you created in the prerequisites). You must also provide a query for your data, such as SELECT * FROM SAPAribaProcurement1.SCHEMA.Orders.
server.js code
const axios = require('axios') const user = 'user@mydomain.com' const pat = '***********************************'; //Your API endpoint const url = 'https://cloud.cdata.com/api/query'; //Your data to be sent in the POST request const data = { "query":"SELECT * FROM SAPAribaProcurement1.SCHEMA.Orders" }; axios.post(url, data, { auth: { username: user, password: pat } }) .then(response => { const rows = response.data.results[0].rows; const schema = response.data.results[0].schema; //Create an array of column names const columnNames = schema.map(col => col.columnName); //Loop through each row and log the column name with its value rows.forEach(row => { const rowObject = {}; row.forEach((value, index) => { const columnName = columnNames[index]; rowObject[columnName] = value; }); console.log(rowObject); }) }) .catch(error => { console.error('Error:', error); });
- In the terminal, execute the following command to run the server:
node server.js
The query results will appear:{ ID: 1, VALUE: -2 } { ID: 2, VALUE: 1 } { ID: 11, VALUE: null } { ID: 3, VALUE: 2 } { ID: 4, VALUE: 5 } ...
Simplified Access to SAP Ariba Procurement Data from Cloud Applications
At this point, you have a direct connection to live SAP Ariba Procurement data from Axios. For more information on gaining simplified access to data from more than 100 SaaS, Big Data, and NoSQL sources in cloud applications like Axios, refer to our Connect Cloud page.