API Etsy Dettagli
Stato di salute dell'API
- Operatività nelle ultime 24 ore
- Normale
- Buono / normale
- Disponibile
- Limitato
- Quasi del tutto inattivo
Ultime 24 ore
Ultimi 30 giorni
Recupera il record completo di un prodotto Etsy dall'url della sua scheda: descrizione, materiali, fascia di prezzo, varianti, recensioni in evidenza e il negozio che lo vende. Nonostante il nome dell'azione, profile riguarda un prodotto, non un account acquirente né la pagina completa del negozio.
Invia POST https://api.everyinfra.com/api/v1/social con platform impostato su etsy e action impostato su profile. Prezzo $1.39 per 1.000 richieste ($0.001389 per chiamata). Le chiamate non riuscite e i risultati vuoti non vengono addebitati. Sincrona. Per i job più lenti, aggiungi "mode": "async" al corpo della richiesta, recupera il job_id ed esegui il polling.
Etsy Details legge una scheda prodotto di Etsy a partire dal suo link e restituisce il record del prodotto: ID della scheda, titolo, descrizione, categoria, materiali, prezzo o fascia di prezzo con la valuta, varianti, numero di recensioni, paese di spedizione e immagini, oltre al negozio che la pubblica, con ID, nome, numero di recensioni e anni di attività. Descrive un prodotto, non un account utente. Venditori, ricercatori di tendenze e acquirenti che cercano prodotti artigianali la usano per studiare le schede prodotto di successo, confrontare materiali e prezzi e capire quanto è affermato un negozio.
Passa il link completo della scheda con il percorso /listing/<ID>/. materials è l'insieme di tag che gli acquirenti usano per filtrare i prodotti artigianali, quindi conservalo per ogni scheda che confronti. ships_from_country ti dice da dove parte un ordine, un dato importante per i tempi di consegna. shop_years e shop_review_count descrivono il negozio nel suo insieme. Un review_count null indica che Etsy non pubblica quel numero, non che non ci sono recensioni.
Prompt per l'AI
#Aiutami a scrivere uno script di raccolta dei dati con l'endpoint Etsy Dettagli di EveryInfra (etsy/profile).
Come funziona l'endpoint:
- Richiesta: POST https://api.everyinfra.com/api/v1/social con l'header Authorization: Bearer <chiave API>. Leggi la chiave dalla variabile d'ambiente EVERYINFRA_API_KEY e non scriverla mai direttamente nel codice.
- Nel corpo della richiesta imposta platform su etsy e action su profile, e inserisci i parametri in params.
- Parametri obbligatori:
- url: Accetta l'URL completo di un'inserzione Etsy nel formato /listing/<ID>/ per le azioni profile e product_detail, per recuperare i dettagli di un singolo articolo.
- Restituisce un oggetto. Campi principali: listing_id, title, url, description, materials, category, price, price_min, price_max, currency, review_count, shop_id; 21 campi in totale, elenco completo su https://api.everyinfra.com/api/v1/social/catalog?platform=etsy.
- Esempio di corpo della richiesta:
{
"platform": "etsy",
"action": "profile",
"params": {
"url": "https://www.etsy.com/listing/1710567856/its-okay-to-make-some-mistakes-shirt"
}
}
- Prezzo: $1.39 per 1.000 richieste; le richieste non riuscite e i risultati vuoti non vengono addebitati.
- Per decine o centinaia di target, aggiungi "mode": "async" al corpo: ricevi subito un job_id ed esegui il polling su GET https://api.everyinfra.com/api/v1/jobs/{job_id} per ottenere il risultato.
- In caso di 422, correggi la richiesta usando i nomi dei parametri e i valori consentiti suggeriti nell'errore; in caso di 429 o 503, attendi il tempo indicato da Retry-After e riprova.
Prima di scrivere il codice, chiedimi quali target mi servono, quanti, quali campi e quale formato di output voglio; poi conferma con me il piano e il costo indicativo.Parametri della richiesta
#| Nome | Posizione | Tipo | Obbligatorio | Predefinito | Descrizione |
|---|---|---|---|---|---|
Authorization | header | string | Sì | - | Bearer seguito dalla tua chiave API. Creala nella console; non inserirla mai in un URL o in un repository di codice. |
platform | body | string | Sì | etsy | Identificativo della piattaforma, valore fisso. |
action | body | string | Sì | profile | Identificativo della funzionalità, valore fisso. |
url | body.params | string | Sì | - | Accetta l'URL completo di un'inserzione Etsy nel formato /listing/<ID>/ per le azioni profile e product_detail, per recuperare i dettagli di un singolo articolo. Nota che profile riguarda i dettagli dell'articolo, non i profili utente. Non può sostituire il parametro obbligatorio shop nelle query agli endpoint dei negozi. |
Esempi di codice
#curl -X POST 'https://api.everyinfra.com/api/v1/social' \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" \
-H 'Content-Type: application/json' \
--data-raw '{
"platform": "etsy",
"action": "profile",
"params": {
"url": "https://www.etsy.com/listing/1710567856/its-okay-to-make-some-mistakes-shirt"
}
}'Definizione OpenAPI (JSON)Gli esempi leggono la chiave dalla variabile d'ambiente EVERYINFRA_API_KEY; il codice copiato non contiene mai la tua chiave.
Esempio di risposta
#{ "id": "req_…", "platform": "etsy", "action": "profile", "results": { "listing_id": "1710567856", "title": "It's Okay To Make Some Mistakes Shirt ,Mental Health Shirt ,Motivational Shirt, Mental Health Matters, Motivational Shirt ,It's Okay To", "url": "https://www.etsy.com/listing/1710567856/its-okay-to-make-some-mistakes-shirt", "description": "It's Okay To Make Some Mistakes Shirt ,Mental Health Shirt ,Motivational Shirt, Mental Health Matters, Motivational Shirt ,It's Okay To\nHello there!\nWe choose one of the highest-quality t-shirt manufacturers in the market! We either choose Circle Soft Style, Bella Canvas, Gildan …", "category": "Clothing < Gender-Neutral Adult Clothing < Tops & Tees < T-shirts", "currency": "USD", "review_count": 134, "shop_id": "35055979", "shop_review_count": 18826, "shop_years": "4 years", "ships_from_country": "US", "image_url": "https://i.etsystatic.com/35055979/r/il/cfd7dd/5962184626/il_fullxfull.5962184626_auti.jpg", "platform": "etsy", "images": [ "https://i.etsystatic.com/35055979/r/il/cfd7dd/5962184626/il_fullxfull.5962184626_auti.jpg", "https://i.etsystatic.com/35055979/r/il/afd660/6010243165/il_fullxfull.6010243165_looh.jpg", "https://i.etsystatic.com/35055979/r/il/0b3ab3/6010246289/il_fullxfull.6010246289_493g.jpg" ], "review_highlights": [ "Great quality", "Love it", "Fast shipping" ], "review_tags": [ { "tag": "Quality", "count": 39 }, { "tag": "Appearance", "count": 37 }, { "tag": "Comfort", "count": 26 } ] }, "billing": { "charged": …, "charged_usd": …, "balance_after_usd": …, … }, "quota": { … }}
Campi della risposta
#I dati di business si trovano in results. La tabella elenca i campi che un record può contenere; i valori che la piattaforma non mostra non vengono mai inventati.
| Campo | Significato |
|---|---|
listing_id | Mantiene il significato attribuito dalla piattaforma |
title | Titolo. null quando la piattaforma non prevede titoli (ad esempio post di solo testo). |
url | Link al record sulla piattaforma. |
description | Riepilogo o descrizione, di solito più breve di text. |
materials | Mantiene il significato attribuito dalla piattaforma |
category | Nome della categoria secondo la tassonomia della piattaforma, non normalizzato tra piattaforme. |
price | Prezzo come numero senza simbolo di valuta; vedi currency. |
price_min | Mantiene il significato attribuito dalla piattaforma |
price_max | Mantiene il significato attribuito dalla piattaforma |
currency | Codice valuta del prezzo (ad esempio CNY, USD). Se price è presente ma currency è null, non dare per scontata una valuta. |
review_count | Numero di recensioni, per le funzionalità relative a prodotti e attività. null significa non reso noto, non 0. |
shop_id | Mantiene il significato attribuito dalla piattaforma |
shop_name | Mantiene il significato attribuito dalla piattaforma |
shop_review_count | Mantiene il significato attribuito dalla piattaforma |
shop_years | Mantiene il significato attribuito dalla piattaforma |
ships_from_country | Mantiene il significato attribuito dalla piattaforma |
image_url | Link all'immagine. Le funzionalità con più immagini possono restituire un array image_urls. |
platform | Identificativo della piattaforma di origine, uguale a platform nella richiesta (ad esempio xiaohongshu, tiktok). |
images | Array di link alle immagini nell'ordine di visualizzazione della piattaforma; assente se non ci sono immagini. |
review_highlights | Mantiene il significato attribuito dalla piattaforma |
review_tags | Mantiene il significato attribuito dalla piattaforma |
variants | Mantiene il significato attribuito dalla piattaforma |
FAQ
#Etsy Details è un profilo di negozio o di utente?
#No. Details legge una scheda prodotto, l'articolo dietro un link /listing/. Per il negozio del venditore, usa Etsy Shop con il nome breve del negozio o il suo link /shop/; per le opinioni degli acquirenti, Etsy Reviews restituisce le recensioni dell'intero negozio anziché di una singola scheda.
Quale formato di link serve per url?
#Il link completo della scheda con l'ID numerico dopo /listing/, nel formato https://www.etsy.com/listing/1710567856/its-okay-to-make-some-mistakes-shirt. Le pagine dei negozi e i risultati di ricerca non sono schede prodotto e qui non funzionano. L'ID viene restituito in listing_id, una buona chiave per deduplicare le schede che salvi.
Perché c'è una fascia di prezzo invece di un prezzo unico?
#Le schede con più varianti, come taglie o colori, possono avere un prezzo per ogni variante, quindi price_min e price_max indicano gli estremi inferiore e superiore della fascia, nella valuta indicata da currency. Quando confronti le schede, confronta dati omogenei, ad esempio l'estremo inferiore di ogni fascia, e controlla variants per vedere a cosa corrisponde ogni opzione.
Errori e addebiti
#- 401
- Chiave mancante o non valida.
- 402
- Saldo insufficiente. Effettua prima una ricarica.
- 422
- Nome o valore del parametro non valido. Correggilo seguendo i suggerimenti dell'errore. Nessun addebito.
- 429
- Raggiunto il limite di richieste al minuto. Attendi il tempo indicato da Retry-After, poi riprova.
- 503
- Impossibile completare. L'importo trattenuto torna sul tuo saldo. Se l'esito è incerto, verificalo prima di riprovare.
- Risposta 200 vuota
- Nessun dato. Nessun addebito.