Instead of ‘login’ and ‘password’ use your credentials from https://app.dataforseo.com/api-access
<?php
// You can download this file from here https://cdn.dataforseo.com/v3/examples/php/php_RestClient.zip
require('RestClient.php');
$api_url = 'https://api.dataforseo.com/';
try {
// Instead of 'login' and 'password' use your credentials from https://app.dataforseo.com/api-access
$client = new RestClient($api_url, null, 'login', 'password');
} catch (RestClientException $e) {
echo "n";
print "HTTP code: {$e->getHttpCode()}n";
print "Error code: {$e->getCode()}n";
print "Message: {$e->getMessage()}n";
print $e->getTraceAsString();
echo "n";
exit();
}
try {
// using this method you can get a list of locations
// GET /v3/keywords_data/bing/languages
// in addition to 'bing' you can also set other search engine
// the full list of possible parameters is available in documentation
$result = $client->get('/v3/keywords_data/bing/languages');
print_r($result);
// do something with result
} catch (RestClientException $e) {
echo "n";
print "HTTP code: {$e->getHttpCode()}n";
print "Error code: {$e->getCode()}n";
print "Message: {$e->getMessage()}n";
print $e->getTraceAsString();
echo "n";
}
$client = null;
?>
The above command returns JSON structured like this:
{
"version": "0.1.20201021",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.1177 sec.",
"cost": 0,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "10221309-1535-0119-0000-2b0402614d9f",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0031 sec.",
"cost": 0,
"result_count": 3,
"path": [
"v3",
"keywords_data",
"bing",
"languages"
],
"data": {
"api": "keywords_data",
"function": "languages",
"se": "bing"
},
"result": [
{
"language_name": "English",
"language_code": "en"
},
{
"language_name": "French",
"language_code": "fr"
},
{
"language_name": "German",
"language_code": "de"
}
]
}
]
}
By calling this API you will receive the list of languages supported by Bing Ads API.
Note that Keyword Performance endpoints of Bing Ads API have a different list of available locations and languages.
As a response of the API server, you will receive JSON-encoded data containing a tasks array with the information about available languages.
| Field name | Type | Description |
|---|---|---|
version |
string | the current version of the API |
status_code |
integer | general status code you can find the full list of the response codes here |
status_message |
string | general informational message you can find the full list of general informational messages here |
time |
string | execution time, seconds |
cost |
float | total tasks cost, USD |
tasks_count |
integer | the number of tasks in the tasks array |
tasks_error |
integer | the number of tasks in the tasks array returned with an error |
tasks |
array | array of tasks |
id |
string | task identifier unique task identifier in our system in the UUID format |
status_code |
integer | status code of the task generated by DataForSEO; can be within the following range: 10000-60000 you can find the full list of response codes here |
status_message |
string | informational message of the task you can find the full list of general informational messages here |
time |
string | execution time, seconds |
cost |
float | cost of the task, USD |
result_count |
integer | number of elements in the result array |
path |
array | URL path |
data |
object | contains the parameters passed in the URL of the GET request |
result |
array | array of results |
language_name |
string | language name |
language_code |
string | language code according to ISO 639-1 |

