# API SERP z curl i jq: jednowierszowe przepisy

> Przepisy na SerpCrypto API SERP z curl i jq: 10 najlepszych linków, People Also Ask, źródła AI Overview, local pack i Maps oraz wersja PowerShell.

- URL: https://serpcrypto.com/pl/docs/curl/
- Ostatnia aktualizacja: 2026-10-22
- Wydawca: SerpCrypto (https://serpcrypto.com)

Najszybszy sposób, by zobaczyć, co zwraca API, to terminal. Te przepisy wypisują dokładnie jedną rzecz każdy: linki, pytania, źródła lub lokalne firmy. Działają w bash i zsh; wersja PowerShell zamyka stronę.

**Szybka odpowiedź — Jak zapytać API SERP za pomocą curl?**

Uruchom `curl -sG "https://serpcrypto.com/api/v1/search" -H "Authorization: Bearer $KEY" --data-urlencode "q=your query"` i przekaż JSON do `jq`. W **SerpCrypto** każde udane wyszukiwanie kosztuje 1 kredyt, od 0,30 USD/1K wyszukiwań, a błędy są bezpłatne. `-G` zamienia flagi danych w query string. Kredyty są opłacane kryptowalutą, bez KYC.

## Które flagi curl mają tu znaczenie?

Ustaw klucz raz na powłokę za pomocą `export SERPCRYPTO_API_KEY=…`. Zainstaluj `jq` ze swojego menedżera pakietów, jeśli go brakuje.

| Flaga | Dlaczego |
| --- | --- |
| `-s` | Cicha praca: pasek postępu nie miesza się z JSON. |
| `-G` | Wyślij wartości `-d` i `--data-urlencode` jako query string w żądaniu GET. |
| `--data-urlencode` | Koduj spacje, cudzysłowy i znaki diakrytyczne w `q` i `location`. |
| `-H "Authorization: Bearer …"` | Twój klucz API. Trzymaj go w zmiennej środowiskowej. |
| `-w '%{http_code}'` | Wyświetl status HTTP — przydatne, gdy wywołanie się nie powiedzie. |

## Jak wyświetlić 10 najlepszych linków dla słowa kluczowego?

Poproś o wyniki organiczne i pozwól `jq` wyświetlić pozycję i link każdego z nich, oddzielone tabulatorem. Formularz `[]?` niczego nie wyświetla zamiast zwracać błąd, gdy blok jest nieobecny, dzięki czemu skrypty zachowują ciszę na nietypowych stronach.

*10 najlepszych linków*

```bash
# Top 10 organic links, one per line
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=kubernetes cost monitoring" -d gl=us -d hl=en \
  | jq -r '.organic_results[]? | "\(.position)\t\(.link)"'
```

## Jak wyświetlić pytania z People Also Ask?

Odczytaj `people_also_ask[].question`. Pytania są w języku zgodnym z `hl` i zmieniają się wraz z krajem w `gl`, więc uruchom to samo zapytanie na każdym rynku, dla którego piszesz. Zespoły contentowe wklejają tę listę prosto do briefu.

*People Also Ask*

```bash
# People Also Ask questions, ready for a content brief
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=how to brew cold brew" -d gl=gb -d hl=en \
  | jq -r '.people_also_ask[]?.question'
```

## Jak sprawdzić, które źródła cytuje AI Overview?

Odczytaj `ai_overview.references`. Blok istnieje tylko wtedy, gdy Google wyświetla AI Overview dla tego zapytania i lokalizacji, więc w przeciwnym razie przepis wyświetla czytelny komunikat. Śledzenie tych źródeł w czasie pokazuje, czy Twoje strony są cytowane w generowanych odpowiedziach Google.

*Źródła AI Overview*

```bash
# Sources cited by the AI Overview, if the page shows one
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=what is a heat pump" -d gl=us -d hl=en \
  | jq -r 'if .ai_overview then .ai_overview.references[] | "\(.index)\t\(.source)\t\(.link)" else "no AI Overview for this query" end'
```

## Jak pobrać local pack i listę z Map?

Wyszukiwanie w sieci z `location` zwraca local pack wyświetlany na stronie wyników, zwykle kilka firm. `engine=google_maps` zwraca dłuższą listę z Map z adresem, oceną i liczbą opinii, którą `@tsv` zamienia w wiersze do arkusza kalkulacyjnego. Oba kosztują 1 kredyt.

*Local pack, potem Google Maps*

```bash
# Local pack in a city, then the full Maps list for the same query
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=vegan restaurant" \
  --data-urlencode "location=Toronto, Ontario, Canada" -d gl=ca -d hl=en \
  | jq -r '.local_results[]? | "\(.position)\t\(.title)\t\(.rating // "-")"'

curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  -d engine=google_maps --data-urlencode "q=vegan restaurant Toronto" -d gl=ca -d hl=en \
  | jq -r '.local_results[]? | [.title, .address, .rating, .reviews] | @tsv'
```

## Jak zobaczyć błąd, gdy wywołanie się nie powiedzie?

Dodaj `-w '\nHTTP %{http_code}\n'`, aby wyświetlić status po treści odpowiedzi. Treść błędu to mały JSON z `code` i `message`; [strona błędów](https://serpcrypto.com/pl/docs/errors/) wymienia wszystkie sześć kodów. Druga komenda odczytuje Twoje kredyty, co jest bezpłatne.

*Kod statusu i kredyty*

```bash
# Print the body, then the HTTP status on its own line
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=test" -w '\nHTTP %{http_code}\n'

# Credits left (free call)
curl -s "https://serpcrypto.com/api/v1/credits" -H "Authorization: Bearer $SERPCRYPTO_API_KEY" | jq .
```

## Jaki jest odpowiednik w PowerShell na Windows?

`Invoke-RestMethod` wysyła zapytanie i parsuje JSON do obiektów, więc nie potrzebujesz `jq`. Przekaż parametry jako hashtable w `-Body`: przy zapytaniu GET PowerShell koduje je do query string. Następnie `Format-Table` wyświetla pozycje, tytuły i linki.

*PowerShell*

```powershell
# Windows PowerShell 5.1 or PowerShell 7
$headers = @{ Authorization = "Bearer $env:SERPCRYPTO_API_KEY" }
$query = @{ q = "kubernetes cost monitoring"; gl = "us"; hl = "en" }
$data = Invoke-RestMethod -Uri "https://serpcrypto.com/api/v1/search" -Headers $headers -Body $query -Method Get
$data.organic_results | Select-Object position, title, link | Format-Table -AutoSize
```

## Kiedy przejść z curl do kodu?

Gdy tylko powtarzasz komendę z listą słów kluczowych. Pętla powłoki działa dla kilkudziesięciu wyszukiwań, ale ponowienia, równoległość i przechowywanie są łatwiejsze w [Python](https://serpcrypto.com/pl/docs/python/) lub [Node.js](https://serpcrypto.com/pl/docs/node/). Zapytania są takie same, więc przepis przetestowany tutaj przenosi się bez zmian. Każde wyszukiwanie to nadal 1 kredyt, po 0,75 USD/1K wyszukiwań w pakiecie 10 000 wyszukiwań.

## Pytania o curl

### Dlaczego moje zapytanie zwraca błąd 400 w curl?

Zwykle dlatego, że `q` zostało wysłane z `-d` i zawiera znak wymagający kodowania. Użyj `--data-urlencode "q=…"` dla zapytania i dla `location`; zwykłe kody, takie jak `gl=us`, mogą zostać z `-d`.

### Czy mogę zapisać pełny JSON do pliku?

Tak: dodaj `-o result.json` zamiast przekierowywać do `jq`. Zapis surowych odpowiedzi pozwala je później ponownie sparsować bez ponownego płacenia za wyszukiwanie.

### Czy curl w Windows działa tak samo?

Windows 10 i 11 zawierają `curl.exe`, a flagi są takie same. Cudzysłowy różnią się w `cmd.exe`, więc PowerShell z `Invoke-RestMethod` jest tam zwykle prostszy.

---

SerpCrypto: SerpCrypto to API SERP dla deweloperów i agentów AI, które zwraca wyniki wyszukiwania Google i Bing w formacie JSON, z płatnością kryptowalutą i bez przesyłania dokumentów tożsamości. Przedpłacone kredyty wyszukiwania od 0,30 USD/1K wyszukiwań nigdy nie wygasają. Bez KYC — bez dokumentu, bez selfie, bez dokumentów. Płatność kryptowalutą.
