Google Cloud / APIs: Quota Circumvention via multiple projects - youtube-api

I manage several projects, each project includes several API Clients (Android App, iOS App, PWA and backend server).
Glossary from yt API terms:
"API Client" means a website or software application (including a mobile application) developed by you that accesses or uses the YouTube API Services.
"API Project" means the project created in the Google Developer Console that is required for API Client(s) to access and use the YouTube API Services.
Following yt API terms I must create exactly one (1) API Project for that API Client. Those API Credentials are intended to be used exclusively by the associated API Client, which means that you must not use that one (1) API Project for multiple API Clients.. Then I understand that I should create one API Project for Android App, one more for iOS App, etc.
But I've recently received following email from Google:
We have recently detected your Google Cloud / APIs Projects have been circumventing our quota restrictions via multiple projects acting as one and appears to be violating YouTube API Terms of Service (III.D.1.c).
To fix the problem please delete all projects using YouTube API usage except for one project you wish to keep active
Then if I delete API Projects and keep a single one for all my API Clients, that means I should use one API Project for multiple API Clients, that is forbidden by terms.
What's the best way to follow ?

Related

How to make cloud REST API call in Jira atlas connect app

I'm new to jira development.
I created an app in atlas connect cloud app. I want to use REST api calls in this app to access jira core features.
When user installed my app I want to get his projects and other details using rest calls.
How can I authenticate user and use rest api calls.
Thx.
Depending on the setup of your JIRA instance, you can use the following ways to authenticate users:
OAuth
Basic authentication
Cookie-based authentication
For getting a list of projects and other details, you can use this resource to find out what is possible.
An introduction to the JIRA API can be found here.

Azure Mobile Services versus Custom API

We currently have a MVC5 web application that has recently gone live. Much of the business logic is contained within GET and POST controller methods in C# files. A native iOS app is planned for the project and the concern was expressed that we must ensure that the business logic is the same for the web app and the mobile app. I'm asking for anyone with experienced with Azure Mobile Services to elaborate on how we can easily ensure consistency between the web app and the mobile in terms of backend business logic. I see two options as of right now: 1. Create an API project and ensure both the web app and the mobile app call the same endpoints 2. Integrate Azure Mobile Services and ensure that the business logic matches the web app at all times. I'm just looking for guidance.
Thanks
If you are starting work now, I would start work with Azure Mobile Apps rather than Azure Mobile Services. Azure Mobile Apps can provide a web app and a mobile-friendly API for you.
Azure Mobile Apps provides three distinct things on top of Azure Web Apps. The first is a mobile-friendly data-sync capability. This is a RESTful interface that provides access to data from a backend resource. You can use it directly as a REST endpoint - great for your websites, but it is also an OData source. There are clients available for iOS (Objective-C/Swift), Xamarin (C#/.NET) and more coming that use this to provide a sync capability. The addition of a SQLite store provides an offline sync capability that your mobile app can utilize for performance and network efficiency.
The second is authentication that works with the mobile data-sync capability. This can be used across your web and mobile apps and links into enterprise authentication systems (via Azure AD), Facebook, Twitter, Google+ and Microsoft Account. One of the more interesting things you can do is provide personalized results - a user can only access their own records via data-sync. Mobile authentication is different and the SDKs provided in addition will provide that functionality for you.
Finally, there is a pass-through for Notification Hubs - a powerful push notifications system that provides access to APNS (for iOS devices), GCM (for Android devices) and WNS (for Windows-based devices) as well as push capabilities to Chrome and Safari web apps, Baidu and Kindle.
Nothing stops you from doing all this from a standard MVC5 ApiController, but the wrapping of the client-side SDK plus the additional functionality of the table controller reduces the complexity of the code you have to write.

At what level is the Asana API rate limit enforced?

I'm building a suite of tools that integrate with Asana. These tools comprise a web browser extension and a web app (or Chrome packaged app). Do the browser extension and web app share the same API call quota?
Right now, API rate limits are enforced per-user. Until we released OAuth support, there was no way to distinguish between different apps (since users were always authorized by the same API key). In future, each app will get its own rate limit quota (per user). If you intend to make them separate apps (and have users authorize them separately) they would then get separate quotas - but if you're either using an API key for both, or sharing one OAuth app, they'll end up sharing their quota, too, even if we roll out the change I mentioned earlier.

Use token generated in the google API console to communicate with the google play apis

I'm building a web game, and I'd like to make use of google's game services such as high scores. When I do this using the client_id of my api console project, it tells me that there is no app linked to this api consumer.
In the Google Play games publisher console, it says that my game is linked to my apis console project, but when I create a linked app, it still asked me to create a new oauth2 consumer id and secret. So I did it, entering the exact same name project name, and now I have 2 api console projects with the same name. I had the original proejct configured with other apis I use.
Do I need to just delete my original apis console project, and just configure the new project, the same way I had the original project configured? Or is there a way to use an existing apis console project and associate that with a linked app?
Also, if the game information in the game publishing console tells me that the game has been linked to the original project, why doesn't it just associate the linked app with that project, and the oauth credentials that it had obtained?
Really basic and you probably have, but have you enabled the Google Play Games Services API in API access?

Confusion on the Old Google Data AP, new Google API, and the Google Apps Marketplace

Currently Google is migrating their old Google Data API to the new Google API.
When we do API queries over the old Google Data API, we usually use Zend Framework and the given consumer key/secret to do the authen/autho, which is fine.
Question is, is it possible to use the given consumer key/secret (from the Google Apps Marketplace listing) and the new OAuth 2 Library to call the API? What I have been having is the error message redirect_uri mismatched issue and obviously Google Apps Marketplace provides no way to change this value. Even though they had provided a link for us to go to the API Console from the listing page, I cannot see the OAuth 2.0 options in my API Access page at all.
Did I missed out anything?
If let's say I need to use the Google Apps Admin Settings API, does it mean I need to separately create a new OAuth 2.0 API Access in the API Console, then, when I need to access user data, I need to do the Auth flow again using this new consumer key/secret/redirect? I can't set this permission in the Listing Manifest? (Not supported?)
Thanks for the clarifications!
Google Apps Admin Settings is not yet migrated to the new google-api, AFAICS. Check out this list : http://code.google.com/p/google-api-java-client/wiki/APIs ;
you can however use the new google-api client libraries but you have to roll your own XML model for the given API, it is not so hard, I did a similar thing for the Contact API;
The consumer/key secret can be re-used normally if it is sufficiently scoped. A related project for your market app is automatically created in the Google Api console from what I remember..

Resources