I'm writing service which is gathering facebook ads statistics on the daily basis.
The problem is that my collected stats mismatch facebook stats for the particular time period in the past.
For example:
my ad account time zone is UTC+2 and today is 2012-12-18
at 2012-12-18T00:00:00 UTC my service did request to ads api - ..../stats/2012-12-17T02:00:00/2012-12-18T02:00:00
to get daily statistics for 2012-12-17. The result was (for particular adgroup, truncated): impressions = 14950, clicks = 78, etc...
at 2012-12-18T10:52:00 i did same request to fb ads api manually ..../stats/2012-12-17T02:00:00/2012-12-18T02:00:00,
expecting api results will match results in my database, but they are not! Api result was (for same adgroup, truncated): impressions = 15754, clicks = 82, etc...
So it looks like fb ads stats changed, after it was collected. My service includes utc time zone offsets, as suggested in api docs,
and i expected 100% match of collected and actual stats, on daily basis.
Does anybody meet same issue?
We've had the same problem in our accounts.
It's a timezone related issue, you should adjust the timezone, mainly with DST.
You can check the potential dates with problems depending the account timezone here: http://www.timeanddate.com/time/dst/2013.html
and adjust the time offset in the request with the new the start_time and end_time.
A better approach is to automate these changes using timezonedb to keep track of these adjustments to be done: http://es.wikipedia.org/wiki/TZ_Database
hope it helps!
regards,
Martin
Related
When updating mailbox timezone in Exchange Online with Set-MailboxRegionalConfiguration, the timezone changes correctly but checking the mailbox through the OWA gui reveals that meeting hours have not changed to match, requiring a manual step by the user.
Message reads:
The current zone for your meeting hours is [timezone]
and is asking if the user is going to remain in the new timezone and to change the meeting hours to match.
Is it possible to set the meeting hours via Powershell?
If anyone comes across this, we ended up using the Graph API to amend this
Paypal documentation for PayPal Sync API (https://developer.paypal.com/docs/api/sync/v1/).
It gives some mysterious date, named "last_refreshed_datetime".
On the sandbox server it is usually in the past, once it was a few days in the past, now it is 2 hours in the past.
What does it mean? How often it refreshes?
I only know that if I create a transaction it will not be visible on PayPal Sync API until the refresh date will not be later than the transaction date. And I'm guessing it should be the transaction approval date that does not presented on this report. The transaction approval date is available on transaction object (https://developer.paypal.com/docs/api/subscriptions/v1/#definition-transaction), it is called "time".
time string
The date and time when the transaction was processed, in Internet date and time format.
Read only.
I have reached out to the product development team for the SYNC API and have gotten the following clarifications in regards to your questions:
If the "last_refreshed_datetime" (Time until which we have data available in our system) is smaller than the requested end date then, in the API response we show end date as "last_refreshed_datetime". As we only have data up until that point. In general there should be around 4-6hrs of delay.
From my own experience on sandbox, on different occasions it was 6.5, 2.5 hours and even 2 days behind.
From what I read in the Facebook Messenger documentation, there are a couple of callbacks that are triggered. The onReceivedAuthentication() as per documentation is called when a person taps on the "Send to Messenger" plugin. I want to save the person's firstName, lastName, picture and gender in my database. What if the person directly searches for our page and starts chatting with it? In that case, the above callback won't be triggered right? What if the user changes their name or picture on Facebook? How do I keep my database consistent with Facebook's data for each user?
Currently, I am updating the person's details in my database everytime the user greets my bot. I don't think that is a good strategy. Any suggestions are appreciated.
Just decide particular time limit like 1 hour or 24 hours or 1 week or as per your choice and when you store user's data from facebook by its graph API response,store one more field for that particular time of storing it either by timestamp or date and after that whenever you get message from user just compare that messages' timestamp with that field and if that difference is greater than that decided time limit then update users' data.
you can compare user's current message time as you are getting it in form of timestamp with every message
Hope this help you.
I am creating a report, in which i have to show the number of sessions, users and registrations that have occurred today in a live feed. I see that the ga dashboard is updated only till 7 am in the morning although its 10:41 am right now. Can I know after what time interval does the analytics server is updated? I am using core analytics api to fetch the data as of now, if any other api suits my requirements do suggest.
I am sending various events from my Unity iOS game to Facebook analytics and logging them. I can see all the events being registered properly. Till few days back I was able to see breakdown of events into sections like country, gender, region,etc. But now in place of details like how many downloads per country the breakdown is showing Redacted.
Has anyone faced this problem? What can be the cause of this?
This is most likely because the user count for the date range you're querying has dropped below 100 users. Demographic data is redacted below that level to protect user identity. For some reports (page likes, household income etc) the redaction level is slightly higher at 1000 users.