Unable to retrieve page insights using Graph API explorer - api

I have the 'Insights Analyst' permission to my facebook page, and I try to use Graph API Explorer to get the metric page_fans
I "Get Access Token" with 'read_insights' and 'manage_pages', and "Submit" a graph API call that looks something like
GET /<page_id>/insights/page_fans
But then I get an empty response. (This occurs for all metrics except page_story_adds_unique, page_storytellers, and page_admin_num_posts)
{
"data": [
],
"paging": {
"previous": "https://graph.facebook.com/<page_id>/insights/post_storytellers/?since=1369004893&until=1369264093",
"next": "https://graph.facebook.com/<page_id>/insights/post_storytellers/?since=1369523293&until=1369782493"
}
}
What permissions am I missing? What am I doing wrong?

There seems to be a larger than usual backlog of data missing in the insights at the moment. Use values for since and until to see where the data is.
/<page_id>/insights/page_fans?since=1369008000&until=1371686400
The numbers are unix timestamps to specify the date range you want. If the range is too large then you will get
"error": {
"message": "Unsupported operation",
"type": "FacebookApiException",
"code": 100
}
I know it's very frustrating and Facebook seems to not have any proper way of checking that the data is backlogged.

Related

Google Sheets V4 API error 400 INVALID_ARGUMENT

I'm having a problem getting the JSON list of some very basic information I've put together in a google sheets file. I have ensured my API key is unrestricted and that the sheet itself is set to public,
I have also made sure that the google sheets API is enabled however I keep getting this error;
{
"error": {
"code": 400,
"message": "Unable to parse range: TestingRealtimeData",
"status": "INVALID_ARGUMENT"
}
}
The link to the original page is here;
https://docs.google.com/spreadsheets/d/1sT49JTaVGp5rt56A0hjs4WPVYDJDAMrjesqxU6RWrwo/edit#gid=0
And the published web page here;
https://docs.google.com/spreadsheets/d/e/2PACX-1vR3lrj8g2K6e47e3hTQmRkKiP5Q88yBGcqxO8YtaLH1pfOeHTg8wf4MtCnw_92TMizwHA68Xt1xu5PI/pubhtml?gid=0&single=true
Any idea what could be causing this?
Thanks in advance

Walmart API Error: WM_CONSUMER.CHANNEL.TYPE set null or invalid

My client has a Walmart marketplace store and we are trying figure out how to successfully make the Walmart API's Multiple Item Inventory for All Ship Nodes API call.
The API production URL is :
https://marketplace.walmartapis.com/v3/inventories
The purpose of this call is getting the inventory of the store using the API.
Unfortunately, we are stuck because we don't know what value to put for WM_CONSUMER.CHANNEL.TYPE.
As a result, the API response is unsuccessful and gives this error:
{
"error": [
{
"code": "INVALID_REQUEST_HEADER.GMP_GATEWAY_API",
"field": "WM_CONSUMER.CHANNEL.TYPE",
"description": "WM_CONSUMER.CHANNEL.TYPE set null or invalid",
"info": "One or more request headers are invalid.",
"severity": "ERROR",
"category": "DATA",
"causes": [],
"errorIdentifiers": {}
}
]
}
Where can the value of WM_CONSUMER.CHANNEL.TYPE be found?
I had the same exact issue. I had to open a ticket with support to get the WM_CONSUMER.CHANNEL.TYPE.
Just an FYI, this didn't solve the problem as the value they gave us still resulted in the API returning the same error code.

Getting GoToWebinar registrant

I'm trying to get registrant info from GoToWebinarApi (api link).
First I'm making a request to get all registrants and getting the following response:
Response body
[
{
"firstName": "Test",
"lastName": "t",
"registrationDate": "2020-06-04T08:46:44Z",
"timeZone": "Europe/Helsinki",
"joinUrl": "https://global.gotowebinar.com/join/7649495216334202379/502991121",
"registrantKey": 6700838782913279000,
"email": "tes#gmail.com",
"status": "APPROVED"
}
]
After that I'm trying to use this registrant key to get registrant info in another query but persistently getting following response:
https://api.getgo.com/G2W/rest/v2/organizers/{{organizer_key}}/webinars/{{webinar_key}}/registrants/{{registrant_key}}
{
"errorCode": "NotFound",
"description": "Registrant with specified key does not exist",
"incident": "3599905930306030349"
}
I don't know what's wrong, maybe it's a bug? It has a lot of stuff like this.
Have you tried downloading Postman and importing their collection? You can just fill in the fields and see if there's any issues. Removing the possibilities you made a mistake in your code.
https://documenter.getpostman.com/view/7571707/SVzw4fq2?version=latest#97d099de-e2b2-413c-96aa-d441d2db80c9
EDIT: Issue/Problem:
I've found the issue. Basically the numbers are too big for Javascript. See: JSON Response Long is Rounded or Corrupted and Large numbers erroneously rounded in JavaScript

Foursquare API Error 403 - User not authorized to edit venue

We are trying to update details information for serveral Venues in behalf of our clients/users by using Foursquare API.
It works pretty well for most of the clients, and we are using their own personal oauth credentials most of the time.
BTW, we have a lot of problems with some clients/accounts, because we are getting this error when trying to update the venues:
{
"meta": {
"code": 403,
"errorType": "not_authorized",
"errorDetail": "User not authorized to edit venue",
"requestId": "59bba14e351e3d0e31fcf9f1"
},
"notifications": [
{
"type": "notificationTray",
"item": {
"unreadCount": 0
}
}
],
"response": {}
We’ve checked the API limits and everything it’s correct. We’ve also checked the account Oauth token several times and it’s correct. Even we are using the 'venues/managed’ endpoint to ensure that the given Oauth credential can manage the given Venue and everything looks fine.
Any idea about what's happening?

Fusion table API, INSERT query, bad request

I have a fusion table with fields: username, description,latitude,longitud,geolocation. I am trying to create a new row with information via the google API. I triple checked that the fusion table is open, the tableid and the apikey are correct, and I have the fusiontable API enabled with 0% of the quota. I think the wrong request must be because some coma or quotation mark but to be honest it completely escapes me. I have tried different combinations and cannot find the mistake. Below error that I get, the code that use in php to generate the link and the link itself. Any idea would be greatly appreciated.
Thank you
link returns:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "keyInvalid",
"message": "Bad Request"
}
],
"code": 400,
"message": "Bad Request"
}
}
Php Code:
$apikey = "AIzaSyB4BMlrZIlJB-Apo8t_dO9K18uL8O2s5TA";
$tableid = "1X0rFoG7Tt2Ocm2rE39wPuamZCrFiS4D32Odgbh03";
$username="webuser";
$description="nujkn";
$latitude="78";
$longitud="110";
$geolocation="98.8789, 150.1111";
$link = "https://www.googleapis.com/fusiontables/v1/query?sql=INSERT+INTO+".$tableid."+(username,description,latitude,longitud,geolocation)+VALUES+('".$username."','".$description."','".$latitude."','".$longitud."','".$geolocation."')&key={".$apikey."}";
Link generated: https://www.googleapis.com/fusiontables/v1/query?sql=INSERT+INTO+1X0rFoG7Tt2Ocm2rE39wPuamZCrFiS4D32Odgbh03+(username,description,latitude,longitud,geolocation)+VALUES+('webuser','nujkn','78','110','98.8789')&key={AIzaSyB4BMlrZIlJB-Apo8t_dO9K18uL8O2s5TA}
which in browser looks like: https://www.googleapis.com/fusiontables/v1/query?sql=INSERT+INTO+1X0rFoG7Tt2Ocm2rE39wPuamZCrFiS4D32Odgbh03+(username,description,latitude,longitud,geolocation)+VALUES+(%27webuser%27,%27nujkn%27,%2778%27,%27110%27,%2798.8789%27)&key={AIzaSyB4BMlrZIlJB-Apo8t_dO9K18uL8O2s5TA}