Tableau - API Call to Show Everything a User Has Access To - tableau-api

is there an API call, or a link of API calls in which I can show the following structure
Sites User Has Access To
- Projects User Has Access To
-- Workbooks User Has Access to
--- Views User Has Access To (Including Thumbnails)
I'm currently using a mix of the API and directly accessing (not strictly true but that's another story) the PostgreSQL DB. It works and it s pretty neat hack, but I'd rather avoid hacks
I was using 8.3 but now on the latest v9 release
Thanks

I'm using Tableau API to do this, it seems pretty straightforward, but maybe I'm missing something.
Following API reference:
Tableau REST API reference
Sign in and impersonate, use retrieved token in following API calls
Query sites
For each site query workbooks
For each workbook query views
For each view download preview image
Sign out

Related

Custom Rest API And Firestore Database

I have been following a tutorial showing how to build a custom Rest API in Javascript which is then deployed to Firebase Functions which can then be used to communicate with a Firestore Database.
Everything appears to be working fine but one thing is bothering me.
One of my end points is url-to-api/read which fetches all the records in the database.
How can I prevent anyone from simply adding that url into a browser and reading all the data.
I have tried various Firestore rules but none seem to make any difference, adding /read on to the end of the API URL still shows all the data in the browser.
Cloud Functions access Firebase using the Admin SDK, which means they bypass the security rules and have unrestricted access to the database.
It is up to you to protect what users can do in this case. For example, you can require that they pass their ID token along, and use that to determine their authorization as shown in these examples of implementing an authorized HTTP endpoint and implementing an authorized JSON API.

Microsoft Access APIs?

I've been digging through Microsoft's API pages (both the REST APIs and the Graph APIs) - but I'm having a hard time finding out if there is any way to access Microsoft Access through an API.
I'd like to be able to make an API call to get like the list of rows in a particular table or query for the list of tables altogether - or, on the flip side, add a row to an existing table. (Edit: I'd like to do this via REST calls and allow users to connect accounts so that many different people could access these things on their own). Does anyone know if this is possible? I'd super appreciate any links to any API docs or examples y'all have ^.^
For reference, I've been looking primarily at these two places:
https://learn.microsoft.com/en-us/graph/api/overview?view=graph-rest-1.0
https://learn.microsoft.com/en-us/office/client-developer/access/access-home
Access doesn't provide any functionality to directly access the data from a HTTP endpoint (REST API). It can only function as a database(backend) in this scenario and you would need to look into other solutions to get the data from the database and provide it from a HTTP endpoint (REST API).
If you're looking to use Microsoft technologies for this solution, then you can look into ASP.NET Core to provide the Web API functionality.
You'll need the Access Data Provider to be able to access data in a MS Access database, which as far as I know runs only on a Windows OS.

How to get Outlook Access token?

I'm using the outlook calendar rest api from Salesforce. To continuously leverage the calendar API I need to get authorisation code, access and refresh token.
I have been able to get the Authorisation code by hitting the API. How to get the access token using development code to use the outlook calendar rest API.
Please find the list of AAD authentication libraries here:
https://learn.microsoft.com/en-us/azure/active-directory/develop/active-directory-authentication-libraries
I found this tutorial in Python very helpful for getting access codes:
This tutorial uses Microsoft Graph (which covers several Microsoft products including Microsoft Outlook) rather than the outlook REST API (which covers just Outlook).
https://learn.microsoft.com/en-us/outlook/rest/python-tutorial
At first, I thought setting up a Django server was overkill. Then I realized that I wanted a way for my Python instance to capture the access code after going through single-sign-on. (I MUST use my browser for single-sign-on because my institution uses multi-factor authentation.) Having a Django server is a natural way to do this.
So I created a new PyCharm Django project (which is straight-forward in PyCharm) and began following the tutorial.
I found it essential to continue following the tutorial all the way through displaying my emails to avoid getting authentication errors -- deviate from the tutorial, and I got error messages (such as this one) that were unpenetrable.

How to grab all the issues inside a jira structureboard using REST api

I have been researching Jira REST api in order to grab all the test cases inside my structures but I haven't had any luck. The closes I have been to getting inside a structure is using the URL $baseUrl/rest/structure/2.0/structure. From there I tried to manipulate the url into giving me all the information about a specific structure.
For example, I used $baseUrl/rest/structure/2.0/structure/$id but I only got back
{"id":135,"name":"TEST PLAN 1","description":""}
There is hardly any information in this REST api call. IS there a way to have it list out all the issue keys(test cases) in the structure i pick?
Information Regarding JIRA Structure REST API is posted here https://wiki.almworks.com/display/structure/Forest+Resource

Get published Office 365 calendar JSON without OAuth2 step?

Edit:
Initially, the question was how to get an Office365 calendar in JSON without authentication; but, what I meant was how to get an Office365 calendar in JSON without requiring the OAuth2 step (so, for example on the server-side other authentication methods are acceptable to retrieve the calendar data).
Problem:
I would like to use the Office 365 REST API to access this published calendar (i.e. the "read" operation only since the calendar is published), so that I can "style" the calendar the way I prefer. So, I am looking for a public API approach to using one of my calendars. The code examples for the Office 365 REST API that I found use OAuth to authenticate the client. This seems like overkill.
I have come up with some possible solutions, so any suggestions on the best approach is welcome.
Background:
I have a published calendar in Office365, which gives me a feed:
http://outlook.office365.com/owa/calendar/USER#DOMAIN/CALENDAR_NAME/calendar.ics
and the URL:
http://outlook.office365.com/owa/calendar/USER#DOMAIN/CALENDAR_NAME/calendar.html
How can I do what "calendar.html" is doing, so that I can display a calendar the way I would like it to be displayed (instead of IFraming what Office365 provides)?
Example:
Here is an example URL using the REST API:
https://outlook.office365.com/api/v1.0/users/USER#DOMAIN/calendars
The browser will bring up a basic authentication dialog, so it looks like OAuth is not the only method required (one possible solution, the request could be proxied from a local server that is calling the REST API using basic authentication).
Issues:
One issue might be that the calendar "publishing" feature is meant for a limited amount of data (e.g. 1 year prior or in the future at the most) which is what I assume is what the iCalendar (*.ics) file would contain for any request.
Using the REST API with authentication assumes that there isn't a date range restriction (since one can query the calendar using the REST API, I assume you could query further back than a year).
Possible solutions:
Proxy the request from another server by making the REST API calls using basic authentication. Caching might also be needed since it appears the response times could be slow. The calendar could be either JavaScript that consumes a local endpoint, or HTML content generated at the server.
It looks like the Office365 AuthenticationContext.AcquireTokenAsync() will accept a ClientCredential (client id and secret) or also a UserCredential (simple username and password). So, I think I can run a local proxy service that uses the Office365 library by manually passing in credentials to the function that acquires a token. (I still need to test this to make sure that the function will indeed work this way.)
Simply iFrame the "calendar.html" page provide by Office 365. (Cross domain is prevented, unless it's on one of the Microsoft hosted solutions "Something Webs".)
If using the iCalendar (*.ics) feed, then one would need a transformation function for the iCalendar format to JSON (https://github.com/kewisch/ical.js), then JavaScript or a calendar library could be used to design a custom calendar. (This wouldn't be very convenient for viewing a year's worth of calendar events without cashing and providing a querying mechanism, except for displaying one month back and forward. So, some sort of ics2json to use on FullCalendar might work for only a couple months of calendar history.)
Any suggestions on the best approach (or another approach not listed here) is welcome.
The Office 365 APIs require Oauth2 in order to function. If you are using Visual Studio to develop your app, the O365 tools for Visual Studio + OWIN middleware will handle a lot of the oauth work for you.
If oauth is absolutely not an option, I'd consider using the EWS APIs instead, which can use basic authentication (more info on that here on MSDN).