Is it possible to add/remove Sites from AdSense via the API? - adsense

Is it possible to add/remove Sites from AdSense via the API? We run a CMS that includes lots of domains that point to our servers. Sites seem to get automatically added to AdSense after they get crawled, but if they leave our service the domain stays in AdSense. We'd like to run a script to prune these stale domains from our AdSense account.

The AdSense Management API is read-only, so adding and removing sites is not supported.

Related

Making 'app' available to other people's pages

I've got incoming messages working via webhook, but what I cannot understand is how I make this available to other users.
I run a SaaS that's used by many different organisations, so I want to be able to give those organisations (who each have a subdomain on my domain) the ability to 'connect to facebook messenger', so that all of the messages to their facebook page (whatever that may be), come into their portal view on my platform.
The only way I can see this working, is by getting each user to register as a developer, and go through all the set up that I did to get my test example working.
But I must be missing something? What's the workflow to enable this, simply, so that users can connect in this way?
You can have multiple Facebook pages connected to your single Facebook app. But you would require permissions from Facebook for that. You can read about permissions here: https://developers.facebook.com/docs/facebook-login/permissions/

How can I programmatically query if a domain/website is being penalized by Google?

There are plenty of websites that can check if a site is penalized, including Google's webmaster tools. I need a scripted method to do this as I have to monitor hundreds of domains. Is there a Google REST interface, API, or sample code for this?

Enable Google Analytics email tracking with unknown and untracked URL

Good day,
Background: We have a single web application that multiple external websites link to; users visit www.aaa.com or www.bbb.com and can then click through to our web site at www.example.com.
When we send email comms, the users are directed to their respective client URL.
We require a method of tracking these users from email comms using Google Analytics so that we can see their activity in the Campaigns section.
Issue: The problem is that whilst we have Google Analytics enabled on www.example.com, we are not able to install analytics on client URLs. This means that if we affix the Google tags after the URL in emails, these are stripped out when a user then navigates around a client URL before visiting ours. This then means they do not appear in the 'Campaigns' tab of GA. That is:
trackable --> www.example.com?utm_source=offeremail&utm_campaign=testcampaign&utm_medium=email
not trackable -- > www.aaa.com?utm_source=offeremail&utm_campaign=testcampaign&utm_medium=email
Question: Are we able to start the tracking once a user clicks a link in an email but then accesses our site from another site and then show the results in the campaign tab?
Thank you!
Short answer: No. You need to pass the UTM-parameters in the URL for Google Analytics to understand it is campaign traffic. This is usually the issue with redirects between websites, that this UTM-tagging is lost, thus losing the campaign information.
What I would suggest is that you look at referrals or have your clients add tracking to the links back to your website. Then correlate that to the dates of your send-outs. It is a bit of a middleground, but it should do the trick to atleast see trending success.

OAuth2, Facebook (multiple environments, localhost, azure)

I have the basic OAuth2 working with Facebook but it appears that I need to setup multiple apps in FaceBook to support. When I add platform, I can add only 1 web site and it has a URL. Seems like I need multiple facebook apps to support different environment.
I can configure it for local host and it works, I can reconfigure it for azure and it works, but I can never get both to work. I did configure multiple re-direct URIs to each environment.
Am I correct that I will need multiple facebook apps (appid and app secret), one for each environment?
Yes, you do need multiple apps for this to work under different domains. Facebook now offers the ability to create an app which is the "test version" of an existing app. You will still end up with different apps/app Ids so you need a way within your application to initialise the FB API with the app ID which is configured for the given environment.

.NET Web Forms multiple product subscriptions under one account?

Background:
I am working on a legacy ASP.NET 3.5 Web Forms applications. The application allows users to buy a subscription to a 'white-label' website which is generated for them and they can customize it further. It uses forms authentication.
A typical use-case is that the user creates an account on our system, purchases a website, and then proceeds to customize their website. The URL they will use to edit their purchased website is something like this: https://www.example.com/EditWebsite.aspx. There are many other pages also within our website editing toolbox with other URLs.
Problem:
My team has now been tasked with allowing people to use one account to access multiple website subscriptions. This means that one authenticated user could be trying to access one of many websites to edit if they use the URL mentioned above. Our system can be made aware of multiple subscriptionIds per User but the website editor web app only has support for one subscription.
To clarify with a simpler example: this would be like if Google all of a sudden allowed you to view two different inboxes with one GMail account. How would the system know which one you were trying to access if the URLs were the same for both?
We originally wanted to change the application to use URLs like: https://www.example.com/[subID]/EditWebsite.aspx which would give us all the information we need to send the user to the correct website. We looked into URL Routing to accomplish this but it seems that we would have to change all of the web app's internal links to use the route config to generate the correct URLs. Maybe we have the wrong idea here but it seems like too much work for a legacy application.
Another potential solution we came up with was simply using our systems' control panel web app (where they click links to edit any of their websites) to set a session cookie which our edit website web app can read to know which website to bring up. This has the disadvantage that the pages would not be bookmark-able and you could not look at multiple websites at once in different tabs of the same browser.
Question(s):
Is there any other options we have not investigated or thought of? Is there any other web sites which allow for this kind of behavior; how do they handle it? Is URL Routing the right way to do this and we just need to take the plunge?
Any input is appreciated!
The solution we ended up using was adding a URL parameter to the link which specifies which website you are trying to edit.
https://www.example.com/EditWebsite.aspx?subID=123
This parameter is included in the links to 'Edit Website' from the page which lists all of a user's websites.
When present, this sets a session cookie for the user. If the request parameter is not present, the app looks for the cookie being set; this handles all the internal links within the application. if a cookie doesn't exist and the request parameter was not set, we just pick the authenticated user's first subscription from the list.
This isn't perfect but it has worked without issue so far. The only consequence it has caused is that a user cannot edit multiple websites in the same browser session, e.g. using multiple tabs. This hasn't resulted in any support issues yet though so it is pretty much a non-issue.