/gumtree/listings
curl --request POST \
--url https://api.anysite.io/api/gumtree/listings \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"ad": "<string>",
"timeout": 300
}
'import requests
url = "https://api.anysite.io/api/gumtree/listings"
payload = {
"ad": "<string>",
"timeout": 300
}
headers = {
"access-token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'access-token': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({ad: '<string>', timeout: 300})
};
fetch('https://api.anysite.io/api/gumtree/listings', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.anysite.io/api/gumtree/listings",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'ad' => '<string>',
'timeout' => 300
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"access-token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.anysite.io/api/gumtree/listings"
payload := strings.NewReader("{\n \"ad\": \"<string>\",\n \"timeout\": 300\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("access-token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.anysite.io/api/gumtree/listings")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"ad\": \"<string>\",\n \"timeout\": 300\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/gumtree/listings")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["access-token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"ad\": \"<string>\",\n \"timeout\": 300\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"url": "<string>",
"@type": "GumtreeListing",
"price": 123,
"currency": "GBP",
"city": "<string>",
"region": "<string>",
"postal_code": "<string>",
"latitude": 123,
"longitude": 123,
"posted_at": 123,
"updated_at": 123,
"is_featured": false,
"is_urgent": false,
"is_standout": false,
"is_bumped": false,
"seller_type": "<string>",
"vat_number": "<string>",
"attributes": {},
"breadcrumbs": [],
"category": "<string>",
"category_id": "<string>",
"department": "<string>",
"department_id": "<string>",
"website_url": "<string>",
"services": [],
"image": "<string>",
"images": [],
"image_count": 123,
"videos": [],
"seller": {
"@type": "GumtreeListingSeller",
"id": "<string>",
"public_id": "<string>",
"name": "<string>",
"type": "<string>",
"is_pro": false,
"is_verified": false,
"posting_since": "<string>",
"posting_since_year": 123,
"ad_count": 123,
"ads_posted_last_year": 123,
"last_active_at": 123,
"average_rating": 123,
"rating_review_count": 123,
"phone": "<string>",
"profile_url": "<string>"
},
"vehicle_check": {
"@type": "GumtreeListingVehicleCheck",
"is_checked": false,
"is_extended": false,
"not_write_off_cat_a_or_b": false,
"not_write_off_cat_c_or_d": false,
"not_write_off_cat_s_or_n": false,
"not_imported": false,
"original_number_plate": false,
"original_colour": false
},
"job": {
"@type": "GumtreeListingJob",
"employer": "<string>",
"employment_type": "<string>",
"industry": "<string>",
"min_salary": 123,
"max_salary": 123,
"salary_period": "<string>",
"is_remote": false,
"posted_date": "<string>",
"valid_through_date": "<string>"
},
"reviews": []
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}/gumtree
/gumtree/listings
Get full Gumtree ad details by ad ID (or listing URL): title, price, description, category-specific attributes, location with coordinates, images and seller. Also returns the section-specific extras Gumtree attaches to an ad - vehicle history checks on motor ads, structured salary and employer details on job ads, and the services list plus customer reviews on trade/services ads.
Price: 10 credits
⚠️ Common errors: 412: Ad not found (well-formed but nonexistent/removed ad ID)
POST
/
api
/
gumtree
/
listings
/gumtree/listings
curl --request POST \
--url https://api.anysite.io/api/gumtree/listings \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"ad": "<string>",
"timeout": 300
}
'import requests
url = "https://api.anysite.io/api/gumtree/listings"
payload = {
"ad": "<string>",
"timeout": 300
}
headers = {
"access-token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'access-token': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({ad: '<string>', timeout: 300})
};
fetch('https://api.anysite.io/api/gumtree/listings', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.anysite.io/api/gumtree/listings",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'ad' => '<string>',
'timeout' => 300
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"access-token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.anysite.io/api/gumtree/listings"
payload := strings.NewReader("{\n \"ad\": \"<string>\",\n \"timeout\": 300\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("access-token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.anysite.io/api/gumtree/listings")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"ad\": \"<string>\",\n \"timeout\": 300\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/gumtree/listings")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["access-token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"ad\": \"<string>\",\n \"timeout\": 300\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"url": "<string>",
"@type": "GumtreeListing",
"price": 123,
"currency": "GBP",
"city": "<string>",
"region": "<string>",
"postal_code": "<string>",
"latitude": 123,
"longitude": 123,
"posted_at": 123,
"updated_at": 123,
"is_featured": false,
"is_urgent": false,
"is_standout": false,
"is_bumped": false,
"seller_type": "<string>",
"vat_number": "<string>",
"attributes": {},
"breadcrumbs": [],
"category": "<string>",
"category_id": "<string>",
"department": "<string>",
"department_id": "<string>",
"website_url": "<string>",
"services": [],
"image": "<string>",
"images": [],
"image_count": 123,
"videos": [],
"seller": {
"@type": "GumtreeListingSeller",
"id": "<string>",
"public_id": "<string>",
"name": "<string>",
"type": "<string>",
"is_pro": false,
"is_verified": false,
"posting_since": "<string>",
"posting_since_year": 123,
"ad_count": 123,
"ads_posted_last_year": 123,
"last_active_at": 123,
"average_rating": 123,
"rating_review_count": 123,
"phone": "<string>",
"profile_url": "<string>"
},
"vehicle_check": {
"@type": "GumtreeListingVehicleCheck",
"is_checked": false,
"is_extended": false,
"not_write_off_cat_a_or_b": false,
"not_write_off_cat_c_or_d": false,
"not_write_off_cat_s_or_n": false,
"not_imported": false,
"original_number_plate": false,
"original_colour": false
},
"job": {
"@type": "GumtreeListingJob",
"employer": "<string>",
"employment_type": "<string>",
"industry": "<string>",
"min_salary": 123,
"max_salary": 123,
"salary_period": "<string>",
"is_remote": false,
"posted_date": "<string>",
"valid_through_date": "<string>"
},
"reviews": []
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
API token from the dashboard
Headers
Body
application/json
Response
Successful Response
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes