Get autocomplete suggestions for a search query. Useful for implementing search-as-you-type functionality.
Run this endpoint
Endpoint
Parameters
Start with the required fields, then add optional filters only when your use case needs them.
Runnable path
1 required parameter needed before sending a request.
1 optional filter available.
string
Required
Partial search query to get suggestions for
nik
string
Optional
Country code for Vinted domain. Defaults to FR.
US
Request Examples
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://scrappa.co/api/vinted/suggestions?query=nik",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: YOUR_API_KEY_HERE"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
<?php
use Illuminate\Support\Facades\Http;
$response = Http::timeout(30)
->withHeaders(['x-api-key' => 'YOUR_API_KEY_HERE'])
->get('https://scrappa.co/api/vinted/suggestions?query=nik');
if ($response->successful()) {
echo $response->body();
} else {
echo "Error: " . $response->status();
}
const options = {
method: 'GET',
headers: {
'x-api-key': 'YOUR_API_KEY_HERE'
}
};
fetch('https://scrappa.co/api/vinted/suggestions?query=nik', options)
.then(response => {
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
return response.text();
})
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
const axios = require('axios');
const options = {
method: 'GET',
url: 'https://scrappa.co/api/vinted/suggestions?query=nik',
headers: {
x-api-key: 'YOUR_API_KEY_HERE',
}
};
try {
const response = await axios(options);
console.log(response.data);
} catch (error) {
console.error('Error:', error.message);
}
require 'net/http'
require 'uri'
uri = URI.parse("https://scrappa.co/api/vinted/suggestions?query=nik")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == 'https'
request = Net::HTTP::Get.new(uri.request_uri)
request['x-api-key'] = 'YOUR_API_KEY_HERE'
begin
response = http.request(request)
puts response.body
rescue => e
puts "Error: #{e.message}"
end
import http.client
import json
conn = http.client.HTTPSConnection("scrappa.co")
headers = {
'x-api-key': 'YOUR_API_KEY_HERE',
}
try:
conn.request("GET", "/api/vinted/suggestions?query=nik", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
except Exception as e:
print(f"Error: {e}")
finally:
conn.close()
import requests
headers = {
'x-api-key': 'YOUR_API_KEY_HERE',
}
try:
response = requests.get('https://scrappa.co/api/vinted/suggestions?query=nik', headers=headers)
response.raise_for_status()
print(response.text)
except requests.exceptions.RequestException as e:
print(f"Error: {e}")
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import java.io.IOException;
public class ApiExample {
public static void main(String[] args) {
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://scrappa.co/api/vinted/suggestions?query=nik")
.addHeader("x-api-key", "YOUR_API_KEY_HERE")
.build();
try (Response response = client.newCall(request).execute()) {
if (response.isSuccessful()) {
System.out.println(response.body().string());
} else {
System.out.println("Error: " + response.code());
}
} catch (IOException e) {
System.out.println("Error: " + e.getMessage());
}
}
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
client := &http.Client{}
req, err := http.NewRequest("GET", "https://scrappa.co/api/vinted/suggestions?query=nik", nil)
if err != nil {
fmt.Println("Error creating request:", err)
return
}
req.Header.Set("x-api-key", "YOUR_API_KEY_HERE")
resp, err := client.Do(req)
if err != nil {
fmt.Println("Error making request:", err)
return
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
fmt.Println("Error reading response:", err)
return
}
fmt.Println(string(body))
}
#!/bin/bash
curl -X GET \
-H "x-api-key: YOUR_API_KEY_HERE" \
"https://scrappa.co/api/vinted/suggestions?query=nik"
using System;
using System.Net.Http;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("x-api-key", "YOUR_API_KEY_HERE");
try
{
var response = await client.SendAsync(new HttpRequestMessage(HttpMethod.Get, "https://scrappa.co/api/vinted/suggestions?query=nik"));
var content = await response.Content.ReadAsStringAsync();
Console.WriteLine(content);
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
}
import axios from 'axios';
async function run(): Promise<void> {
try {
const response = await axios({
method: 'GET',
url: 'https://scrappa.co/api/vinted/suggestions?query=nik',
headers: {
'x-api-key': 'YOUR_API_KEY_HERE',
},
});
console.log(response.data);
} catch (error) {
console.error('Error:', error);
}
}
void run();
use reqwest::Client;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = Client::new();
let response = client
.get("https://scrappa.co/api/vinted/suggestions?query=nik")
.header("x-api-key", "YOUR_API_KEY_HERE")
.send()
.await?;
println!("{}", response.text().await?);
Ok(())
}
Response Schema
Example response fields are illustrative; inspect the JSON before integrating.
Example response fields
Scan these fields before integrating.
search_suggestions
suggestions
code
Common search_suggestions fields
title
total_score
origin_id
params
{
"search_suggestions": [
{
"title": "nike homme",
"total_score": 488,
"origin_id": null,
"params": [],
"type": null
},
{
"title": "nike air max",
"total_score": 245,
"origin_id": null,
"params": [],
"type": null
}
],
"suggestions": [
{
"title": "nike homme",
"total_score": 488,
"origin_id": null,
"params": [],
"type": null
},
{
"title": "nike air max",
"total_score": 245,
"origin_id": null,
"params": [],
"type": null
}
],
"code": 0
}
Errors
Handle these documented responses before retrying or showing customer-facing failures.
Unauthorized
API key is missing or invalid
{
"message": "Unauthenticated"
}Validation Failed
The query is missing, too long, or the country code is not one of the supported Vinted domains.
{
"errors": {
"query": [
"The search query is required."
]
},
"message": "The request validation failed"
}Unsupported Country
The requested country is blocked for this Vinted endpoint due to upstream security restrictions.
{
"error": "Country not supported",
"message": "The United Kingdom (GB) is currently unsupported due to increased security measures by Vinted. Please use a different country code.",
"success": false,
"http_code": 400
}Upstream HTTP Error
The upstream service is temporarily unavailable. Please retry shortly.
{
"error": "Vinted API returned an error",
"message": "The Vinted API returned an error. Please try again.",
"success": false,
"http_code": 503
}The upstream service is temporarily unavailable. Please retry shortly.
The upstream service is temporarily unavailable. Please retry shortly.
{
"error": "The upstream service is temporarily unavailable. Please retry shortly.",
"message": "Service temporarily unavailable. Please try again.",
"success": false,
"http_code": 503
}Invalid Upstream Response
Vinted returned a response that could not be parsed as JSON.
{
"error": "Failed to parse Vinted response",
"message": "Invalid JSON response",
"success": false,
"http_code": 500
}Generate Code with AI
Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.
Related Vinted pages
Vinted API service page
Search listings, fetch item details, and build resale workflows across 19 supported European markets.
Vinted API hub
Compare all Vinted endpoints, use cases, and pricing from one overview page.
Vinted Search Items API
Find item IDs by query, category, brand, size, price, country, and sort order.
Vinted Item Details API
Get photos, price, condition, brand, size, seller context, favorites, and views by item ID.
Try It Live
Test this endpoint in our interactive playground with real data.