I've gone thru lot of documents on it, but didn't find anything helpful.
I'm successfully able to call
https://www.googleapis.com/calendar/v3/calendars//events/watch
api and receiving expected response from watch api.
{ "kind": "api#channel",
"id": "<UUID>",
"resourceId": "<resourceId>",
"resourceUri": "https://www.googleapis.com/calendar/v3/calendars/<emailid>/events?maxResults=250&alt=json", "token": "<tokenvalue>", "expiration": "1524485589000" }
I believe google should start notifying to the address property (host url where we want to get notified), once above channel gets setup. But I don't receive any notification.
Please let me know if I'm missing anything.
Thanks.
Related
I have been approved for the google business profile api after folliwing the prerequisites and gaining approval for access found here. Continuing, per the instructions in the project in the google business cloud dashboard I have added the following API's:
Google My Business API PRIVATE
My Business Account Management API
My Business Business Calls API
My Business Business Information API
My Business Lodging API
My Business Notifications API
My Business Place Actions API
My Business Q&A API
My Business Verifications API
Continuing per the instructions found here for basic set up, I am able to get to the point when I can get the Account ID of the person authorized in the Google api playground.
With the exception of search functionality, when trying to do anything related to the scope of businessbusinessinformation.googleapis.com all my requests return a 429. For example, the following request:
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/1023160XXXXX/locations
{
"error": {
"status": "RESOURCE_EXHAUSTED",
"message": "Quota exceeded for quota metric 'Requests' and limit 'Requests per minute' of service 'mybusinessbusinessinformation.googleapis.com' for consumer 'project_number:40740XXXXXX'.",
"code": 429,
"details": [
{
"reason": "RATE_LIMIT_EXCEEDED",
"#type": "type.googleapis.com/google.rpc.ErrorInfo",
"domain": "googleapis.com",
"metadata": {
"service": "mybusinessbusinessinformation.googleapis.com",
"quota_limit": "DefaultRequestsPerMinutePerProject",
"quota_location": "global",
"quota_metric": "mybusinessbusinessinformation.googleapis.com/default_requests",
"quota_limit_value": "0",
"consumer": "projects/40740XXXXXXX"
}
},
{
"#type": "type.googleapis.com/google.rpc.Help",
"links": [
{
"url": "https://cloud.google.com/docs/quota#requesting_higher_quota",
"description": "Request a higher quota limit."
}
]
}
]
}
}
Reviewing all the visible quotas related to the API I can't find any that say 0. I have filled out a general form for quoata increase as I can see nowhere in the dashboard where I can directly see the DefaultRequestsPerMinutePerProject setting to request a quota increase.
Since originally writing this a few days ago, I made a quota request increase via the google form, but I am not sure if that will address anything as it seems strange this would not be working "out of the box" after receiving approval prior for this api.
Any suggestions would be great!
After contacting google api support, the 429 went away, there is nothing else that was done to resolve this issue.
I am unsure if it was related to my account specifically or if it was related to the normal expected process for using this endpoint on all accounts.
I am trying to watch some calendar events via API. I am having trouble with getting this to work though. I had been thinking it might have been the library I'm using (https://hex.pm/packages/google_api_calendar)
But I had recently tried using Google oAuth playground to try the same and that had not been working either.
So I think I might not fundamentally understand something about watching calendar events. What am I doing wrong here?
As stated in the documentation of Google Calendar API Events:watch, you have to provide a request body with the following structure:
{
"id": string,
"token": string,
"type": string,
"address": string,
"params": {
"ttl": string
}
}
Further Reading:
Guide: Push Notifications
I tried to access GMB account list api with an access token having scope
https://www.googleapis.com/auth/business.manage
{
"error": {
"code": 403,
"message": "Google My Business API has not been used in project xxxxxx before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/mybusiness.googleapis.com/overview?project=xxxxxx then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.",
"status": "PERMISSION_DENIED",
"details": [
{
"#type": "type.googleapis.com/google.rpc.Help",
"links": [
{
"description": "Google developers console API activation",
"url": "https://console.developers.google.com/apis/api/mybusiness.googleapis.com/overview?project=xxxxx"
}
]
}
]
}
}
Whenever I tried to submit request from I got an email from GMB that
Your company already has a whitelisted project to access the Google My Business API. At this time, we are only whitelisting one project per business..
I checked, but there is no library with name Google My Business.
Current enabled Libraries are
Have you submitted the form to get access to the GMB API?
https://docs.google.com/forms/d/e/1FAIpQLSfC_FKSWzbSae_5rOpgwFeIUzXUF1JCQnlsZM_gC1I2UHjA3w/viewform
When you fill it, you have to precise the email addresses that Google will grant access to. Maybe someone else filled in for your company but didn't mention your email address.
In my case, when I received a confirmation email from the GMB team, I was able to see the GMB API when I searched for it in the console (see screenshot)
Then, all I had to do was to click to enable it.
I'm trying to mute notifications particular group in Slack workspace. Is there any API method available to do?
I've tried using the web-API method mentioned in this GitHub page https://github.com/ErikKalkoken/slackApiDoc/blob/master/users.prefs.set.md.
It causes no error in response but the channels I provided in the 'muted_channels' parameter wasn't muted.
In my case, I didn't have to send a prefs payload as ErikKalkoken described, but instead this one. Found it out thanks to this Tweet: https://twitter.com/slackhq/status/457711460425027584
{
"name": "plain_text_mode",
"value": True
}
I am developing an application to work admin.google.com. In my application through Google_Service_Directory I got a users. But I can not understand who it is - I see only gmail. I want by gmail to get the name and surname. How can I do it?
On the Internet, I found answers to the Google Plus library. But Google Plus is closing. What are some other ways to get your first and last name by gmail?
You have a few options and they will give you similar information.
people get Google+ api.
Request:
GET https://www.googleapis.com/plus/v1/people/me
response: people.resource
"objectType": "person",
"id": "11720047553265346",
"displayName": "Linda Lawton",
"name": {
"familyName": "Lawton",
"givenName": "Linda"
Note: this call appears on the Google+ api documentation how ever this end point is not being shutdown. (waiting for feed back from google on if this is shut down or not.)
Userinfo endpoint
The second option is to call the identity server directly to the userinfo endpoint as described in OpenIDConnect requires profile scope i think
people.get people api
people.get from the people api
request
GET https://people.googleapis.com/v1/people/me?personfield=names
response
"displayName": "Linda Lawton",
"familyName": "Lawton",
"givenName": "Linda",
"displayNameLastFirst": "Lawton, Linda"
Cant search on email
Note: This will give you the information on the current logged in user. There is no way to get back the name of a persona directly by their email address. Assuming you are running an service account with domain wide delegation you may be able to use people.get with the user id of one of the users on the domain. I have not tried this