Google Indexing API - 403 'Forbidden Response'

前端 未结 4 744
自闭症患者
自闭症患者 2021-01-05 13:27

I am making a call to the google indexing API for job postings:

private $client;
private $httpClient;

public function initClient($kernel)
{
    $this->cl         


        
相关标签:
4条回答
  • 2021-01-05 13:47

    After couple days of headache, here is the answer. Open your Google search console.

    Prerequisite: You must already have a google service account

    click the tri dot button, and click manage property owners:

    click the tri dot button, and click manage property owners

    add google service account email as new owners:

    add google service account email as new owners

    0 讨论(0)
  • 2021-01-05 13:53

    Adding to @Glennstar's comment and @JMs reply there is no longer the old version link (perhaps I never had the old version) but if you click the 3 vertical dots to the right of user owner '(you)' and select 'manage property owners' then on the next page click each of the 'verification details' links to the right of your domain variations (example.com, http://www.example.com, https://www.example.com etc or whatever you have) and add the owner ie paste in the gserviceaccount.com email address from the json it will then say ownership delegated by current owner to that email address as well.

    Once status of that email address had changed from 'full' permission to 'owner' back on the search console page I could then run the call fine and the original 403 error about being unable to verify URL ownership was gone. Thanks guys, would have been clueless without this.

    0 讨论(0)
  • 2021-01-05 13:56

    "Make sure that you have added the service account as an Owner in Google Search Console"

    Yep. Use the following code snippet to examine the body response for a more detailed error msg.

        var body = result.Content.ReadAsStringAsync().Result;
    

    if the error msg looks like the following, then this is the same problem.

    "message": "Permission denied. Failed to verify the URL ownership."

    Worth noting: The new version of the search console is lacking. At the bottom of the left-hand menu is a "go to the old version" link. Click this and then select "verification details" from the gear menu (upper right). Next, click on the link that says "verification details" (seriously!). Here, you will finally see a list of verified owners at the bottom of the page. You can add a new owner here, using the email address of your service account (addr can also be found in your json key file).

    0 讨论(0)
  • 2021-01-05 14:00

    Make sure that you have added the service account as an Owner in Google Search Console as described here: https://developers.google.com/search/apis/indexing-api/v3/prereqs#verify-site.

    My problem was that we had multiple entries for the domain in the Search Console (with and without www and with and without https); after adding the service account as an owner to all 4 entries it's working.

    0 讨论(0)
提交回复
热议问题