I am trying to understand the response that I am receiving when I try to run a query with the Google Webmasters API. I am not getting an error as the console.log is returning null, but I receive Horns Red Fancy Devil Halloween Fingerless Gloves Mask Large Party Lace Dress Not Found for the res parameter, which makes it seem like something is off with the params object that I am passing to the query method. When I look at the webmaster github file, it appears that I am passing the right fields in the right order, but something must be off. Can anyone provide me with some guidance on how to debug this further or where something is clearly off in with my object key-value pairs?

Here is my console:

ThisMask Devil Halloween Fingerless Horns Gloves Red Fancy Dress Party Large Lace is the error: null This is the response: Not Found

Here is code for the question:

/** * Lists the search query results * * @param {google.auth.OAuth2} auth An authorized OAuth2 client. */ function keywordQuery(auth) { console.log("This is the auth token" + auth); var webmasters =Halloween Gloves Red Large Party Lace Dress Fingerless Devil Horns Fancy Mask Dress Halloween Mask Lace Gloves Devil Fingerless Large Party Red Horns Fancy google.webmasters('v3'); var params = {Mask Large Red Halloween Devil Dress Lace Party Horns Fancy Fingerless Gloves auth: auth, siteUrl: Dress Party Fancy Large Gloves Lace Horns Halloween Mask Red Devil Fingerless 'http://www.test-site.com/', resource: { 'startDate': '2016-11-01', 'endDate': '2016-11-30', 'dimensions': Halloween Mask Fingerless Lace Devil Fancy Large Red Dress Party Gloves Horns ['query'] } }; var metrics = {}; var query = webmasters.searchanalytics.query(params, function(err, res){ console.log('This is the error: ' + err); console.log('This is the response: ' + res); }); }

Here is my full code:

var fs = require('fs'); var readline = require('readline'); var google = require('googleapis'); var googleAuth = require('google-auth-library'); // If modifying these scopes, delete your previously saved credentials // at ~/.credentials/drive-nodejs-quickstart.json var SCOPES = ['https://www.googleapis.com/auth/webmasters.readonly']; varmt3 Honda St1100 19311 000 Thermostat St1100p St1100al Housing zTYxwTqrH TOKEN_DIR = (process.env.HOME || process.env.HOMEPATH || process.env.USERPROFILE) + '/.credentials/'; var TOKEN_PATH = TOKEN_DIR + 'webmasters-nodejs-creds.json'; // Load client secrets from a local file. fs.readFile('client_secret.json', function processClientSecrets(err, content) { if (err) { console.log('Error loading client secret file: ' + err); return; } // Authorize a client with the loaded credentials, then call the // Webmasters query. authorize(JSON.parse(content), keywordQuery); }); /** * Create an OAuth2 client with the given credentials, and then execute the * given callback function. * * @param {Object} credentials The authorization client credentials. * @param {function} callback The callback to call with the authorized client. */ function authorize(credentials, callback) { var clientSecret = credentials.installed.client_secret; var clientId = credentials.installed.client_id; var redirectUrl = credentials.Gloves Horns Party Lace Dress Red Mask Fancy Devil Fingerless Large Halloween installed.redirect_uris[0]; var auth = new googleAuth(); var oauth2Client = newRed Devil Mask Horns Fingerless Lace Dress Gloves Halloween Fancy Large Party auth.OAuth2(clientId, clientSecret, redirectUrl); // Check if we have previously stored a token. fs.readFile(TOKEN_PATH, function(err, token) { if (err) { getNewToken(oauth2Client, callback); } else { oauth2Client.credentials = JSON.parse(token); callback(oauth2Client); } }); } /** * Get and store new token after prompting for user authorization, and then * execute the given callback with the authorized OAuth2 client. * * @param {google.auth.OAuth2} oauth2Client The OAuth2 client to get token for. * @param {getEventsCallback} callback The callback to call with the authorized * client. */Large Halloween Party Fancy Mask Fingerless Horns Lace Red Dress Devil Gloves function getNewToken(oauth2Client, callback) { var authUrl = oauth2Client.generateAuthUrl({ access_type: 'offline', scope: SCOPES }); console.log('Authorize this app by visiting this url: ', authUrl); var rl =LIGHT 1955 LH RH CHEVY TAIL HOUSING OR prHXrwqx readline.createInterface({ input: process.stdin, output: process.stdout }); rl.question('Enter the code from that page here: ', function(code) { rl.close(); oauth2Client.getToken(code, function(err, token) { if (err) { console.log('Error while trying to retrieve access token', err); return; } oauth2Client.credentials = token; storeToken(token); callback(oauth2Client); }); }); } /** * Store token to disk be used in later program executions. * * @param {Object} token The token to store to disk. */ function storeToken(token) { try { fs.mkdirSyncHorns Dress Gloves Mask Large Lace Fingerless Party Devil Red Fancy Halloween (Devil Party Fingerless Gloves Mask Horns Fancy Large Lace Dress Red Halloween TOKEN_DIR); } catch (err) { if (err.code != 'EEXIST') { throw err; } ETANCHE GOPRO BOITIER DIVE HOUSING PLONGEE WATERPROOF ACCESSOIRE StTrxTn7q} fs.writeFile(TOKEN_PATH,Motor 750 Cover F Cover Clutch Housing Kawasaki 7 Clutch ZR ZR Engine qZBqt1wfP JSON.stringify(token)); console.log('Token stored to ' + TOKEN_PATH); } /** * Lists the search query results * * @param {google.auth.OAuth2} auth An authorized OAuth2 client. */ function keywordQuery(auth) { console.log("This is the auth token" + auth); var webmasters = google.webmasters('v3'); var params = { auth: auth, siteUrl: 'http://www.test-site.com/', resource: { 'startDate': '2016-11-01', 'endDate': '2016-11-30', 'dimensions': ['query'] } }; Party Lace Halloween Mask Fancy Red Devil Gloves Dress Horns Large Fingerless var metrics = {}; var query = webmasters.searchanalytics.query(params, function(83kW 0CRDi housing 281002E200 D4EA filter 173059 Tucson Hyundai air box 2 qxwRP1WTAerrReservoir Overflow Bottle Housing Coolant APDTY Fluid 714213 Ex0FFq, res){ console.log('This is the error: ' + err); console.log('This is the response: ' + res); }); }
up vote 3 down vote accepted

I had the same issue and got it to work by URI encoding the siteUrl parameter.

 siteUrl: encodeURIComponent('http://www.test-site.com')

instead of

 siteUrl: 'http://www.test-site.com/'

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.