Insert data into Google Spreadsheet using Apache NIFI - apache-nifi

How can I insert data into Google Spreadsheet using Apache NIFI? The only possible solution I can conceive right now is creating a python script and use Google Sheet API client in order to post data to Google Sheet.
But I'm looking for simpler ways to do that. It would be nice to have no or few dependencies. I tried the PostHTTP processor but could not authorize my requests on Google Sheet API servers. The GCPCrendentialsControllerService could be handy to authenticate requests, but I was not able to use that with PostHTTP processor.
I thought it would be a very common use case, but found nobody else trying to use Nifi to write on a google sheet. Any ideas?

Related

How can I implement Google's "Indexing API for job posting URLs" if my job board only has a dashboard and no place to put the key?

We have a job board for the German market. The template/software we use is from a company called JBoard, whos programming language is PHP and Laravel. We are having difficulties being listed in Google for Jobs, so now we want to use one of Google's features (=instant indexing: https://developers.google.com/search/blog/2018/06/introducing-indexing-api-for-job?hl=en) for the jobs on our website. We have already generated a key but cannot connect it to the website. According to JBoard, they do not have any place in the backend where you can store the key. However, JBoard says that they have clients who have successfully implemented Google’s API outside of their platform. Apparently it is done with google sheets, google search console and an API token (which I am able to generate via our dashboard). We did find a developer, but he couldn't finish the implementation due to personal reasons. Does anyone know how to implement the instant indexing for jobs when your website is not based on wordpress, Squarespace etc., and with no access to the backend code? Thanks in advance.

Trigger PubSub messages on Google Sheets save actions

I am trying to automate a Google Sheet import as soon as someone has committed their changes to Google Sheet's version control (and not just edited any cell like the onEdit event seems to trigger, I need it committed).
While polling is an option, I'd rather really have Google Sheets send out a message to PubSub. Now PubSub requires the authentication JSON and such and I haven't seen any integration with Google Sheets that integrates this concept, which surprised me.
I searched on the internet for triggers in Google Sheet and some way to automate code to connect to external resources. Apparently, the Google Drive Push Notification API seems to be the way to go. I'd really like to keep everything in my Google Cloud space so I went for a Google Cloud Function with an HTTP(S) endpoint. I already started working out the Function and PubSub channel when I went back to the documentation to read up on how to send a call to the HTTP endpoint.
Bad luck. Seems you need to register the domain to prove you own it and wishing I could, I can not prove that I own cloudfunctions.net. So there went my plan.
It seems very not-Google like to not integrate its Cloud SDK on Google Sheets triggers since they do offer a Sheets API using Cloud Service Accounts.
So my conclusion is I have two options:
1) I am able to send an HTTP callback on a onEdit() function but only if it's my own domain and I seem to require to set up an environment just for that.
2) I would have to poll the last version of the Google Sheets commit compared to the latest version to trigger it myself.
Am I overlooking something very simple or are these my only options?
Cloud functions count as an AppEngine Standard Endpoint as described here and here, and so do not require domain verification. You can use a cloud function using a Cloud Pub/Sub trigger freely- you don't even need to explicitly set up a subscription.
Edit: I didn't understand the OPs question correctly, they want to prove their ownership of a cloud function to the Google Drive Push Notification API, not Cloud Pub/Sub push. This should be possible through HTML tag verification as described here. In whatever framework you are using for your web server, you should be able to set the appropriate HTML meta tag on the response.

Is it possible to submit custom info to Google Places API?

I'd like to be able to add custom info about a place (specifically restaurants) through the API so that this can be queried later down the line by my app. i.e. display this custom info on the ShowInfoWindow. Is this currently possible?
If not what would be the best way of doing this? Seen as I'm already hooked up to Google App Engine/Console, would it be sensible to create a custom database here that I can query for my own custom info as well as the places API for other info?
The Google Places API doesn't provide any way to upload custom fields for places.
So yes, I'd recommend making your own database. Store your custom data for the Places API results keyed by Place IDs to make it easy to fetch your info for any Places API result.
Yes you can add request using HTTP POST request.
Check this link https://developers.google.com/places/web-service/add-place

Yammer Analytics API

To give an context, we are trying to achieve reporting functionality based on the Yammer activity/usage information.
Questions
We are not able to find any Analytics API in the link https://developer.yammer.com/documentation/ except Data Export API. Please let us know if we have any other API related to usage Analytics.
Is there any way to execute our query against yammer big data for us to get the usage information?
• The data export is not providing the information such as ‘like’, ‘share’ and ‘followed by’. Is there any other way to export yammer data including these missing items?
How to remove the deleted entries from the past collection just in case if we are going to do periodic data export?
How the third party tools companies like ‘good data’ will contact yammer for analytics data. This will help us to find the approach involved in this.
Can someone help us on this.
have you tried this : http://blogs.msdn.com/b/richard_dizeregas_blog/archive/2014/04/09/yammer-analytics-with-excel-and-power-bi.aspx Yammer API and Excel 2013 for bigger data..
Having said that - I think the tool is currently broken as I seem be be able to download 114% of my stats, then get some blank CSV files which then fail on power pivot.
You need to be a verified admin to access this tool.
Cheers
Rich
About Question 2
There are good ways of doing it through the API. You can use Excel and PowerQuery or a home made .net data extractor. Like, Share and followed By are possible with the API but not with the useless Data Export feature. Be aware the API have some issues when trying to retrive all data. I'm currently trying to get these issues fixed.
About Question 4
They need the account of a trusted admin. Thanks to a Token they will be able to access all your networks messages and provide you most of the Analytics you need.
They have good webinards for their tool. Only issue is that they copy your data in their environment in the US (is not acceptable for European customers).

Ruby: Fetch data from google analytics?

I want to gather google analytics data for daily/monthly report. All visitors, visitors for specific path and conversion rate. Setting for google analytics is already done (I think).
I searched ruby libraries, but many informations are out-of-dated and google api is sometimes update.
Now(2012-09-28) what library is popular? And How to get data? I searched ruby-toolbox, but both two libraries are still active?
Libralies
'garb'
https://github.com/vigetlabs/garb
'google-api-client'
http://code.google.com/p/google-api-ruby-client/
Purpose:
My first step: view data
My second step: edit data(Add note or notation)
thanks,
Google-Api-Client works fine, is an official client and is constantly updated, just check the commit logs and you will see. Note that this API is not for Google Analytics only but for any Google API that uses the Google Discovery API. You should try that.
Regardless of the client that you use make sure it's compatible with the latest version of the API. If it's built using the Google API Discovery service it's a plus because that means the client library will have support for new methods as soon as they are available. It's like an API for building API clients.
GARB on the other hand seems to be abandoned for a while and is probably missing out on several features that came recently.
Note that the Google Analytics API are currently read only. So no client library will support that since there's no API for writing annotations. There's a feature request for that though.

Resources