Google Apps - IMAP usage auditing - api

Google Apps (Business Edition) - IMAP Active users?
I am trying to determine if there is a way to generate a report of users who are actively using IMAP to access a Google Apps (Business Edition) domain. Ideally generating a report of anyone who has accessed via IMAP over the past pre-defined time interval (say a week or a month) would be very useful.
I know the Google Apps API allow to query and report on users who have enabled IMAP within their specific email accounts. However, this is not helpful as most of the domain users have this enabled already, and I know that many do not use this method to connect to GApps.
Thanks!

The Reporting API has an Accounts Report with a last_pop_time field. The field is a misnomer as it actually covers last POP or IMAP time. You can use this to determine if a user has accessed POP or IMAP recently.

Check out FreeSpace IMAP Auditor for this functionality -
http://blog.backupify.com/2013/08/19/introducing-freespace-imap-auditor-monitor-imap-usage-across-your-enterprise-google-apps-domain/

Related

Whatsapp Cloud API can go live on production

I have successfully setup my account on whatsapp developer app by meta and can send messages to 5 free users. Now the question is how can I go live with the app. I have no verified business manager account, is that necessary?
What will I need to do after verification of business account? Do I need to generate permanent access token and it would work fine?
Plus I need to know how can I send messages to groups on whatsapp?
Yes, you need to become a verified business account and all would work as you saw with the demo account, with no restriction on the number of destinations.
First 1000 conversations/month it's free, you can check details here: https://developers.facebook.com/docs/whatsapp/pricing/
Bear in mind, you will NOT be able to message groups with the WA Cloud API. If you need to, you will need to rely on custom APIs that do that. There are some available, see the one shown here:
https://youtu.be/lCmoay0G86M

Permissions over an App

I'm new to Xero API's and I'm trying to understand a thing.
In my Company we currently have various different “organisations” within Xero, and this number will be growing in the near future.
We also have a 3rd party web application we use for technical and management data – to which we now would like to add financial data, mostly in the form of exported Xero reports.
We had been looking at the API functionality – however as I understand it Xero is unable to grant a subset of permissions to API calls – i.e. anyone with API access would have the same level of access a standard user – so aside from being able to pull the reports we require, they would also have access to all other data, such as transactional data, account numbers, creation and deletion of invoices etc. etc. Please can you confirm whether this would be the case?
In short terms: we need to restrict the API calls to the reports only, is this possible?
If not, does Xero have a functionality where reports can be automatically exported to an external location – such as a cloud service or an FTP site or similar?
Many thanks in advance
You're correct. Once you connect an app to the API it has access to all the accounting endpoints. Payroll endpoints are the only ones that require additional scopes.
And no, unfortunately there's no way to schedule report exports either. Sorry!

Another account access my Analytics API

I want to build a dashboard to my clients access your respective website analytics. But, after some research, I'm stuck.
Let's imagine the scenario:
My Analytics Account:
Client X - websitex.com
Client Y - websitey.com
In my dashboard, when the cliente Y log in, the data (pageviews) of websitey.com is shown on graphics.
But, there's a way to do that? By the moment, the only thing i got is retrieve information for my logged account (my analytics ID), not the information about another account.
There's a way to use the Google API, or, I'll have a "separate database" to save data each website?
Sorry, I'm really lost at the moment.
You can only view Google Analytics Accounts that you are authorized to view. For some reason this is a source of major confusion (seeing that your are not the first to ask), although it should be fairly self-evident.
If you want to see data from your clients account you have to ask your client to add your Google email to the GA account. If an email address is added to multiple accounts you can, via the API, choose between the accounts. Clientside authorization (OAuth2) will only work as long as somebody is logged in via a client application (usually a browser). The practial effect is that everybody who is authenticated via OAuth against Google will see only his own GA accounts, not other peoples data.
If you want a serverside application to pull data from various GA accounts you need a service account. But even the service account needs to be added to the GA accounts.
You can use the core reporting API, but the API will not give you access to accounts that you are not authorized to look at; your client needs to authorize you (or your applications service account).

Google Tasks API authorization

I can see many related questions on SO, but none that answers exactly what I'm confused with.
I'm using Google Calendar API in a .NET desktop application that allows user to provide his/her username/password, logs in on his behalf and adds some events to the calendar. Now I want to do exactly the same thing for Tasks feature. I'm trying to use Google Tasks API for this, but have been told that I need to do some OAuth kind of authentication, and even before that, I need to go to my gmail account and set permissions and get my project "key" to enable it.
Now does every user of my application need to do these steps in their Gmail account? Or do I need to do this in MY gmail account once and then my application code will be able to use the generated project "key" to enable my users to add tasks to THEIR gmail tasks list?
Figured it out. For anyone having a hard time understanding this, here it is:
The "key" generation step needs to be done only once per application, not for each user who's going to use your application. To generate a key, login to your Google Account and go to Google APIs Console page. Click API Access button and that's where you can generate keys for different kinds of applications like browser apps, desktop apps, Android apps etc. After registration, you'll need to take Client ID, Client secret and API key from this page and put them into the code. Sample code (.NET) for task creation and several other Google features is available here.
Once your user runs your application, he'll be taken to his Google account in his default browser where he'll be asked if he wants to allow this application to write to his calendar/tasks list. This page will display your logo and description text too that you can provide at registration time. Once allowed, this step won't be required again in the next one hour (this may be adjustable, i don't know yet).

API to create filter for free google app and gmail users

Is there a way to create a filter in gmail programatically for gmail users as well as for free google app accounts?
It seems that the e-mail settings API is only applicable for Google Apps for Business or Education accounts (http://support.google.com/a/bin/answer.py?hl=en&answer=60228).
Aayush.
I would like to know whether anybody knows the answer, because a good gmail filtering app is sorely needed for android users!
I looked everywhere and finally found this:
https://market.android.com/details?id=com.digitalchemy.springclean.gmail&rdid=com.digitalchemy.springclean.gmail&rdot=1#?enroll=yAb5pZ2MYWwmoft_rED3OYt6t0U%3D&purchaseButton=Dw2xBTSDPLCsKHcCnowBY0VcYUU%3D&addInstrument=NyJt6qfLAWzk-RVX01VtYp73FRg%3D
I don't like that it costs 3 dollars and uses 7megs of space. The source is closed, and I'm trying to guess how it does what it does.
This is the most recent link I've found as I try to make my own filtering app and service:
http://googlecode.blogspot.com/2010/03/oauth-access-to-imapsmtp-in-gmail.html
So, it appears that the API is (as you stated) for Business / Education accounts only, and Google doesn't support Sieve in their IMAP account - http://support.google.com/mail/bin/answer.py?hl=en&answer=78761
As I see it - your only option would be to create a custom IMAP client that creates & stores rules on your own server, and then manipulates the email locations "manually" - a rather taxing process if you ask me but doable :)
EDIT:
Here is a little tutorial using Zend_Mail for moving gmail emails via imap
http://www.devcha.com/2010/06/how-to-removemove-messages-using-zend.html