Sabre REST API connection to Microsoft Powerapps Custom connector - oauth

I am considering using Powerapps as a front end to Sabre. I believe that the no code/low code approach is a potentially useful replacement for the Sabre scripts product in the travel agency community
Has anyone tried creating a customer connector in Powerapps that will connect to the Sabre API's using the Postman collections that Sabre has provided.
I am struggling with the OAuth 2.0 parameters for the connection.
Powerapps OAuth parameters
Any help would be appreciated
Michael

Our small CTD operation is struggling with our conversion from SABREScribe to Web development too. My hats off to you if you get this working as we also have a few Power Apps but not connecting to SABRE. I'd be surprised if you can get this working and then how you show the value to the agent desktop. Curious as to your vision. I realize this is not the platform for general discussion but thought I'd just voice this as our Travel tech world is pretty "small"

Related

How to deploy a MS Teams bot?

I am trying to build a bot for MS Teams in order to use the Graph API do to things like removing participants from a conversation.
I followed this Microsoft sample bot but got stuck on the deployment stage which requires Azure's cloud service. Is there a better way for deploying the bot and maybe a way for debugging it? In similar samples, the instructions are vague and confusing.
This is a very broad question, so the best I can do is give you direction, rather than specific answers. In that case, the following should be helpful:
In terms of samples, the one you've linked is very specific, and might be confusing to understand - I would suggest starting with more generic "bot" samples to get a better understanding. It's worth noting that bots for Teams use the standard Microsoft "Bot Framework", so not -all- samples are applicable for Teams, but have a look here: https://github.com/microsoft/BotBuilder-Samples/tree/main/samples
It looks from your profile that you code in python, so note that the link above includes Python samples too.
With regards runtime, bots for Teams do need to be registered with the central Microsoft Bot Framework service, which is indeed linked to Azure. However, it's not at all required to host your bot in Azure - the bot is basically just a web REST endpoint, listening for messages - it can be hosted on any web-address (httpS) endpoint. In that case, you would look in Azure for a "Bot Channels Registration", which is just the registration part, without hosting. A "Web Bot" in Azure, for example, is a combination of the registration as well as a hosting model in Azure.
As I said, it's a broad question, but hopefully the above gives some useful starting points.

Box.com Service Account access

All box.com's api's read to require OAuth 2.0 using only Authorization Token grant types. I have a back end system that needs to upload a file to a box.com system. However, I do not understand how a back end system is suppose to integrate, when the authorization flow requires user "approval" to get a token.
Anyone ever done this? I am attempting to integrate a java mule app. I attempted to use the components, but they plain do not work at all, they break the entire anypoint studio. Now I am trying to utilize the http component to make the call but I am losing my patience with it.
please help, I am pretty much ready to drop kick this laptop and live in the woods.
Integration with public online API requires a little study, a little coding, and a little testing. I'm not saying it's easy. Take a look here at a Mule component I've recently created that communicates with Toggl, an online timekeeping service.
https://github.com/ciwise/toggl-api-connector
Your question requires a lot of discussion but it's best answered with example. If Box does not provide a Mule component, you can create one yourself.
The HTTP connector is not going to authenticate or perform any operations at Box for you. The HTTP connector provides the HTTP endpoint (URL entry and browser return). To authenticate your application with Box and call API operations, you'll need to do some work.
This is the high-level recipe for my solution with Toggl service (example)
Update your Anypoint Studio with Mule Connector DevKit software
Create an Anypoint Connector project in Anypoint Studio (Eclipse)
My connector provides multiple methods to process and these are used with different instances of the component (connector) in my use flow.
My TogglDataAPIHandler.java makes various checks to see if the application (Mule) is authenticated before making calls to the Application Programming Interface (API). The API is provided by Box so that developers (people writing code) can communicate with the service outside of the web browser. There's no simple answer here. You will have to do some coding. My component/connector is only an example of one way to do this (communicate programmatically with the API).
Build and install the connector(component) locally so that we can see it in the Mule Design Palette.
Drag as many of our new component (Anypoint connector) as needed into our flow canvas.
Test the flow.
I hope that helps. Take a look at my Github repo and Mule Connector. There's a wealth of information in anyone's code. But, integration with an API requires code. You can also search the Exchange for a Box connector. If you find one, then your life is simpler. You still need to read this thoroughly:
https://docs.box.com/docs

Integrating with QB Desktop products

I wrote a QB integration a few years ago that uses the Web Connector to read and write data to and from QB desktop products. It works well but I am not in love with the Web Connector.
I am tasked with setting up another QB integration. I was hoping to avoid using the Web Connector this time. There are a few reasons why I am trying to avoid the Web Connector but the main reason is I would like to make this integration work with both Desktop and Online versions of QB.
Is it possible to use the Intuit Sync Manager to sync the company data up to Intuit and then just use the standard Online APIs to connect to that company file? I have done some testing and I can connect to QB Online via the Online APIs but I cannot seem to get it to see the synced company files.
Any help with this would be great. Just looking for a little direction here.
Thanks in advance for any help.
For QBO, of-course, you can use QBO REST APIs(V3) API.
Ref - https://developer.intuit.com/docs/0025_quickbooksapi
But for QBD, QBSDK and web-connector is still the only approach.
QBD V2 and V3 REST APIs are already deprecated.
https://developer.intuit.com/docs/0250_qb
https://developer.intuit.com/docs/0250_qb/0010_get_oriented/0080_quickbooks_web_connector
FAQ
Thanks

QuickBooks Online from Desktop application

I am new to QuickBooks and all my searching has been leading to conflicting answers. I really need to know this to move forward.
We have an on-premise application (legacy MFC app if that matters). Some of our customers use QuickBooks Online and we can send information up to it. In the past we have used QBXML which I believe is not supported for online anymore.
Everything I read at intuit.com talks about web applications. I think I have to have OAuth security and I do not see how intuit is supporting that from a non-browser based application.
I cannot believe that intuit would not have an answer for this situation so I must be confused.
So, can I send data to QuickBooks Online from a desktop application?
If yes, which API/SDK should I be using?
If I need OAuth how exactly do I implement this?
Does any of this require an independent security review?
I think I just need a little help getting pointed in the right direction.
Thanks
Unfortunately I think you have the most difficult scenario in the QB ecosystem.
I've used the DevDefined OAuth library with some success:
https://github.com/bittercoder/DevDefined.OAuth
You can get this to work on the desktop if you have a localhost server that the browser can redirect to on the OAuth callback.
Anything that talks to QBO needs to use the QBO API v3 now.
For a custom app that talks to QBO, you would need to set up your app # Intuit to run in development mode, so it wouldn't have to go through their security review, etc. But that limits the number of connections you can have (I think it's 10). So it might not work in your case. Also, if you're distributing your app to "normal" customers it may not be the best user experience, and probably isn't practical, to set it up so OAuth will work on the desktop.
You might just have to bite the bullet and create an intermediate web service on something like Azure or Heroku, then go through the whole process of getting Intuit to bless your app for production.

How to programmatically obtain OAuth2 client credentials for Google API

I'm trying to create a redistributable web application that will integrate with Google Analytics through the Google Reporting API. Customer will install the application on their server.
I'm following this tutorial (I'm using PHP, but I believe this is not of importance for my question)
https://developers.google.com/analytics/resources/tutorials/hello-analytics-api
This works fine. No issues there.
However I can't figure out one missing element:
The tutorial starts with sending me to the Google APIs console where I have to create and configure a new API project and create and configure a client ID.
That's a lot of work that requires fairly technical knowledge (redirect url, selecting correct API, error-prone copy-and-pasting, etc.)
So my questions:
Is there an API so I can programmatically set this up for my user?
If that's not possible, is there a more user-friendly way to obtain Analytics reporting that is future-proof? (I noticed they are currently deprecating a few older APIs)
Unfortunately that's AFAIK not possible.
You could go one of the following ways:
Move client_id and client_secret to some configuration file and help your customer with deployment.
Show a one-time setup wizard for your app and guide your customer step-by-step. There you can at least provide him with the right callback URLs.
Regard your application as "installed application" and instrument curl or something similar for sending the requests.

Resources