Edit:

This the converted curl code it prints this error it's relating to A Outh 2.0 I used both Client ID and client secret and same error { "error": { "code": 401, "message": "Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.", "status": "UNAUTHENTICATED" } }

   $ch = curl_init();        curl_setopt($ch, CURLOPT_URL, 'https://googleads.googleapis.com/v9/customers/(8519781266):generateKeywordIdeas');        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);        curl_setopt($ch, CURLOPT_POST, 1);        curl_setopt($ch, CURLOPT_POSTFIELDS, "{\n\n\"keywordSeed\": {\n    \"keywords\": [\n    \"cofee\"\n  ]\n  }\n}");                $headers = array();        $headers[] = 'Content-Type: application/json';        $headers[] = 'Login-Customer-Id: (2260416591)';        $headers[] = 'Developer-Token: (z2sb0uyekDzkMbiyNpAImg';        $headers[] = 'Authorization: Bearer (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)';        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);                $result = curl_exec($ch);        if (curl_errno($ch)) {            echo 'Error:' . curl_error($ch);        }        print_r($result) ;        curl_close($ch);         

This curl command code with my google's data

curl -i --request POST https://googleads.googleapis.com/v9/customers/(8519781266):generateKeywordIdeas \ --header "Content-Type: application/json" \ --header "login-customer-id: (2260416591)" \ --header "developer-token: (z2sb0uyekDzkMbiyNpAImg" \ --header "Authorization: Bearer (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)" \ --data '{ "keywordSeed": {     "keywords": [     "cofee"   ]   } }' 

This's the curl command line

curl -i --request POST https://googleads.googleapis.com/v9/customers/(ACCOUNT NUMBER):generateKeywordIdeas \ --header "Content-Type: application/json" \ --header "login-customer-id: (MCC ID)" \ --header "developer-token: (DEVELOPER TOKEN" \ --header "Authorization: Bearer (ACCESS TOKEN)" \ --data '{ "keywordSeed": {     "keywords": [     "cofee"   ]   } }' 

and it prints this error

 C:\Users\MostafaEzzat>curl -i --request POST https://googleads.googleapis.com/v9/customers/(8519781266):generateKeywordIdeas \ HTTP/1.0 411 Length Required Content-Type: text/html; charset=UTF-8 Referrer-Policy: no-referrer Content-Length: 1564 Date: Sat, 01 Jan 2022 18:14:44 GMT <!DOCTYPE html> <html lang=en>   <meta charset=utf-8>   <meta name=viewport content="initial-scale=1, minimum-scale=1, width=device-width">   <title>Error 411 (Length Required)!!1</title>   <style>     *{margin:0;padding:0}html,code{font:15px/22px arial,sans-serif}html{background:#fff;color:#222;padding:15px}body{margin:7% auto 0;max-width:390px;min-height:180px;padding:30px 0 15px}* > body{background:url(//www.google.com/images/errors/robot.png) 100% 5px no-repeat;padding-right:205px}p{margin:11px 0 22px;overflow:hidden}ins{color:#777;text-decoration:none}a img{border:0}@media screen and (max-width:772px){body{background:none;margin-top:0;max-width:none;padding-right:0}}#logo{background:url(//www.google.com/images/branding/googlelogo/1x/googlelogo_color_150x54dp.png) no-repeat;margin-left:-5px}@media only screen and (min-resolution:192dpi){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat 0% 0%/100% 100%;-moz-border-image:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) 0}}@media only screen and (-webkit-min-device-pixel-ratio:2){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat;-webkit-background-size:100% 100%}}#logo{display:inline-block;height:54px;width:150px}   </style>   <a href=//www.google.com/><span id=logo aria-label=Google></span></a>   <p><b>411.</b> <ins>That’s an error.</ins>   <p>POST requests require a <code>Content-length</code> header.  <ins>That’s all we know.</ins> curl: (6) Could not resolve host: \ C:\Users\MostafaEzzat>--header "Content-Type: application/json" \ '--header' is not recognized as an internal or external command, operable program or batch file. C:\Users\MostafaEzzat>--header "login-customer-id: (2260416591)" \ '--header' is not recognized as an internal or external command, operable program or batch file. C:\Users\MostafaEzzat>--header "developer-token: (z2sb0uyekDzkMbiyNpAImg" \ '--header' is not recognized as an internal or external command, operable program or batch file. C:\Users\MostafaEzzat>--header "Authorization: Bearer (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)" \ '--header' is not recognized as an internal or external command, operable program or batch file. C:\Users\MostafaEzzat>--data '{ '--data' is not recognized as an internal or external command, operable program or batch file. C:\Users\MostafaEzzat> C:\Users\MostafaEzzat>"keywordSeed": { '"keywordSeed":' is not recognized as an internal or external command, operable program or batch file. C:\Users\MostafaEzzat>    "keywords": [ '"keywords":' is not recognized as an internal or external command, operable program or batch file. C:\Users\MostafaEzzat>    "cofee" '"cofee"' is not recognized as an internal or external command, operable program or batch file. C:\Users\MostafaEzzat>  ] ']' is not recognized as an internal or external command, operable program or batch file. C:\Users\MostafaEzzat>  } '}' is not recognized as an internal or external command, operable program or batch file. C:\Users\MostafaEzzat>}' 

so I don't know honestly how to convert to Curl PHP and parse combine and all the parameters which is in this link https://developers.google.com/google-ads/api/rest/reference/rest/v9/KeywordPlanHistoricalMetrics

Tag:google-ads-api, php, rest, curl

Add a new comment.