이 엔드포인트가 도움이 되는 일
응답에는 일치하는 검색, 공개 컨텍스트, 결과가 더 있을 경우 페이지네이션 데이터가 포함됩니다.
적합한 사용 시점
객체의 정확한 ID를 모르고 먼저 관련 후보를 찾아야 할 때 "Topical Explore By Cluster Id"을 사용하세요.
먼저 결과와 일반적인 워크플로를 확인한 다음 매개변수와 작동하는 요청 예제로 넘어가세요.
응답에는 일치하는 검색, 공개 컨텍스트, 결과가 더 있을 경우 페이지네이션 데이터가 포함됩니다.
객체의 정확한 ID를 모르고 먼저 관련 후보를 찾아야 할 때 "Topical Explore By Cluster Id"을 사용하세요.
고객용 및 내부 화면에 Instagram 데이터 검색을 추가하세요.
검색어로 후보를 찾고 관련 객체를 저장해 나중에 보강하세요.
주제, 크리에이터, 경쟁 분석을 위한 결과 집합을 수집하세요.
두 버전 모두 같은 작업을 해결하며 같은 매개변수를 받습니다. 전환기로 응답 구조를 비교하고 클라이언트가 기대하는 버전을 선택하세요.
이 페이지에서 버전을 전환하면 같은 문서 URL에서 응답 구조를 비교할 수 있습니다.
인증, 필수 매개변수, 요청 형태는 V1과 V2에서 같습니다. 실제로는 엔드포인트 경로를 구성할 때와 응답을 읽을 때 버전을 선택합니다.
주요 차이는 응답 봉투입니다. 새 연동에는 V2를 사용하고, 기존 클라이언트 계약과의 호환성이 필요한 경우에만 V1을 유지하세요.
두 버전 모두 같은 API 키 헤더와 같은 쿼리 매개변수를 사용합니다. 이 문서는 먼저 공통 매개변수를 보여 준 다음 각 버전의 경로와 코드 스니펫을 보여 줍니다.
| 매개변수 | 필수 | 유형 | 예시 | 설명 |
|---|---|---|---|---|
cluster_id |
예 | str |
animals:0 |
Topical explore cluster identifier. Example: animals:0. |
include_fixed_destinations |
아니요 | bool |
True |
Whether to include fixed destinations. Example: true. |
is_prefetch |
아니요 | bool |
False |
Whether the request is a prefetch. Example: false. |
latitude |
아니요 | float | None |
40.7128 |
Optional latitude for location-aware topical explore. Example: 40.7128. |
longitude |
아니요 | float | None |
-74.006 |
Optional longitude for location-aware topical explore. Example: -74.006. |
module |
아니요 | str |
explore_popular |
Topical explore module. Example: explore_popular. |
omit_cover_media |
아니요 | bool |
True |
Whether to omit cover media entries. Example: true. |
reels_configuration |
아니요 | str |
hide_hero |
Reels configuration mode. Example: hide_hero. |
session_id |
아니요 | str | None |
session-1 |
Optional Instagram session identifier. Example: session-1. |
timezone_offset |
아니요 | int | None |
10800 |
Optional timezone offset in seconds. Example: 10800. |
use_sectional_payload |
아니요 | bool |
True |
Whether to request sectional payloads. Example: true. |
정확한 엔드포인트 경로, 예시 URL, 코드 스니펫을 복사할 때 버전을 선택하세요. 위의 매개변수 목록은 바뀌지 않습니다.
GET /api/v2/instagram.com/search/topical-explore-by-cluster-idcurl --request GET \
--url "https://www.scrapestorm.net/api/v2/instagram.com/search/topical-explore-by-cluster-id" \
--header "X-API-Key: 00000000-0000-4000-8000-000000000000" \
--get --data-urlencode 'cluster_id=animals:0' \
# Optional parameters:
# --data-urlencode 'include_fixed_destinations=True'
# --data-urlencode 'is_prefetch=False'
# --data-urlencode 'latitude=40.7128'
# --data-urlencode 'longitude=-74.006'
# --data-urlencode 'module=explore_popular'
# --data-urlencode 'omit_cover_media=True'
# --data-urlencode 'reels_configuration=hide_hero'
# --data-urlencode 'session_id=session-1'
# --data-urlencode 'timezone_offset=10800'
# --data-urlencode 'use_sectional_payload=True'
from urllib.parse import urljoin
import requests
BASE_URL = "https://www.scrapestorm.net"
ENDPOINT = "/api/v2/instagram.com/search/topical-explore-by-cluster-id"
HEADERS = {"Accept": "application/json", "X-API-Key": "00000000-0000-4000-8000-000000000000"}
params = {
"cluster_id": "animals:0",
}
# Optional parameters
# params["include_fixed_destinations"] = "True"
# params["is_prefetch"] = "False"
# params["latitude"] = "40.7128"
# params["longitude"] = "-74.006"
# params["module"] = "explore_popular"
# params["omit_cover_media"] = "True"
# params["reels_configuration"] = "hide_hero"
# params["session_id"] = "session-1"
# params["timezone_offset"] = "10800"
# params["use_sectional_payload"] = "True"
with requests.Session() as session:
response = session.request(
method="GET",
url=urljoin(BASE_URL, ENDPOINT),
headers=HEADERS,
params=params,
timeout=30,
)
response.raise_for_status()
payload = response.json()
print(payload)
const BASE_URL = "https://www.scrapestorm.net";
const endpoint = "/api/v2/instagram.com/search/topical-explore-by-cluster-id";
const params = new URLSearchParams({
cluster_id: "animals:0",
});
// Optional parameters
// params.set("include_fixed_destinations", "True");
// params.set("is_prefetch", "False");
// params.set("latitude", "40.7128");
// params.set("longitude", "-74.006");
// params.set("module", "explore_popular");
// params.set("omit_cover_media", "True");
// params.set("reels_configuration", "hide_hero");
// params.set("session_id", "session-1");
// params.set("timezone_offset", "10800");
// params.set("use_sectional_payload", "True");
const response = await fetch(`${BASE_URL}${endpoint}?${params.toString()}`, {
method: "GET",
headers: {
Accept: "application/json",
"X-API-Key": "00000000-0000-4000-8000-000000000000",
},
});
if (!response.ok) {
throw new Error(`Request failed: ${response.status} ${response.statusText}`);
}
const payload = await response.json();
console.log(payload);
import axios from "axios";
const client = axios.create({
baseURL: "https://www.scrapestorm.net",
timeout: 30000,
headers: {
Accept: "application/json",
"X-API-Key": "00000000-0000-4000-8000-000000000000",
},
});
const params = {
cluster_id: "animals:0",
};
// Optional parameters
// params.include_fixed_destinations = "True";
// params.is_prefetch = "False";
// params.latitude = "40.7128";
// params.longitude = "-74.006";
// params.module = "explore_popular";
// params.omit_cover_media = "True";
// params.reels_configuration = "hide_hero";
// params.session_id = "session-1";
// params.timezone_offset = "10800";
// params.use_sectional_payload = "True";
const { data: payload } = await client.request({
method: "GET",
url: endpoint,
params,
});
console.log(payload);
<?php
declare(strict_types=1);
use GuzzleHttp\Client;
use GuzzleHttp\Exception\GuzzleException;
$client = new Client([
'base_uri' => "https://www.scrapestorm.net",
'timeout' => 30.0,
'headers' => [
'Accept' => 'application/json',
'X-API-Key' => "00000000-0000-4000-8000-000000000000",
],
]);
$query = [
"cluster_id" => "animals:0",
];
// Optional parameters
// $query["include_fixed_destinations"] = "True";
// $query["is_prefetch"] = "False";
// $query["latitude"] = "40.7128";
// $query["longitude"] = "-74.006";
// $query["module"] = "explore_popular";
// $query["omit_cover_media"] = "True";
// $query["reels_configuration"] = "hide_hero";
// $query["session_id"] = "session-1";
// $query["timezone_offset"] = "10800";
// $query["use_sectional_payload"] = "True";
try {
$response = $client->request("GET", "/api/v2/instagram.com/search/topical-explore-by-cluster-id", [
'query' => $query,
]);
$payload = json_decode(
(string) $response->getBody(),
true,
512,
JSON_THROW_ON_ERROR
);
var_dump($payload);
} catch (GuzzleException $e) {
throw $e;
}
package main
import (
"encoding/json"
"fmt"
"net/http"
"net/url"
"time"
)
func main() {
baseURL := "https://www.scrapestorm.net"
endpoint := "/api/v2/instagram.com/search/topical-explore-by-cluster-id"
params := url.Values{}
params.Set("cluster_id", "animals:0")
// Optional parameters
// params.Set("use_sectional_payload", "True")
req, err := http.NewRequest(
"GET",
fmt.Sprintf("%s%s?%s", baseURL, endpoint, params.Encode()),
nil,
)
if err != nil {
panic(err)
}
req.Header.Set("Accept", "application/json")
req.Header.Set("X-API-Key", "00000000-0000-4000-8000-000000000000")
client := &http.Client{Timeout: 30 * time.Second}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
var payload any
if err := json.NewDecoder(resp.Body).Decode(&payload); err != nil {
panic(err)
}
fmt.Printf("%+v\n", payload)
}
정확한 엔드포인트 경로, 예시 URL, 코드 스니펫을 복사할 때 버전을 선택하세요. 위의 매개변수 목록은 바뀌지 않습니다.
GET /api/v1/instagram.com/search/topical-explore-by-cluster-idcurl --request GET \
--url "https://www.scrapestorm.net/api/v1/instagram.com/search/topical-explore-by-cluster-id" \
--header "X-API-Key: 00000000-0000-4000-8000-000000000000" \
--get --data-urlencode 'cluster_id=animals:0' \
# Optional parameters:
# --data-urlencode 'include_fixed_destinations=True'
# --data-urlencode 'is_prefetch=False'
# --data-urlencode 'latitude=40.7128'
# --data-urlencode 'longitude=-74.006'
# --data-urlencode 'module=explore_popular'
# --data-urlencode 'omit_cover_media=True'
# --data-urlencode 'reels_configuration=hide_hero'
# --data-urlencode 'session_id=session-1'
# --data-urlencode 'timezone_offset=10800'
# --data-urlencode 'use_sectional_payload=True'
from urllib.parse import urljoin
import requests
BASE_URL = "https://www.scrapestorm.net"
ENDPOINT = "/api/v1/instagram.com/search/topical-explore-by-cluster-id"
HEADERS = {"Accept": "application/json", "X-API-Key": "00000000-0000-4000-8000-000000000000"}
params = {
"cluster_id": "animals:0",
}
# Optional parameters
# params["include_fixed_destinations"] = "True"
# params["is_prefetch"] = "False"
# params["latitude"] = "40.7128"
# params["longitude"] = "-74.006"
# params["module"] = "explore_popular"
# params["omit_cover_media"] = "True"
# params["reels_configuration"] = "hide_hero"
# params["session_id"] = "session-1"
# params["timezone_offset"] = "10800"
# params["use_sectional_payload"] = "True"
with requests.Session() as session:
response = session.request(
method="GET",
url=urljoin(BASE_URL, ENDPOINT),
headers=HEADERS,
params=params,
timeout=30,
)
response.raise_for_status()
payload = response.json()
print(payload)
const BASE_URL = "https://www.scrapestorm.net";
const endpoint = "/api/v1/instagram.com/search/topical-explore-by-cluster-id";
const params = new URLSearchParams({
cluster_id: "animals:0",
});
// Optional parameters
// params.set("include_fixed_destinations", "True");
// params.set("is_prefetch", "False");
// params.set("latitude", "40.7128");
// params.set("longitude", "-74.006");
// params.set("module", "explore_popular");
// params.set("omit_cover_media", "True");
// params.set("reels_configuration", "hide_hero");
// params.set("session_id", "session-1");
// params.set("timezone_offset", "10800");
// params.set("use_sectional_payload", "True");
const response = await fetch(`${BASE_URL}${endpoint}?${params.toString()}`, {
method: "GET",
headers: {
Accept: "application/json",
"X-API-Key": "00000000-0000-4000-8000-000000000000",
},
});
if (!response.ok) {
throw new Error(`Request failed: ${response.status} ${response.statusText}`);
}
const payload = await response.json();
console.log(payload);
import axios from "axios";
const client = axios.create({
baseURL: "https://www.scrapestorm.net",
timeout: 30000,
headers: {
Accept: "application/json",
"X-API-Key": "00000000-0000-4000-8000-000000000000",
},
});
const params = {
cluster_id: "animals:0",
};
// Optional parameters
// params.include_fixed_destinations = "True";
// params.is_prefetch = "False";
// params.latitude = "40.7128";
// params.longitude = "-74.006";
// params.module = "explore_popular";
// params.omit_cover_media = "True";
// params.reels_configuration = "hide_hero";
// params.session_id = "session-1";
// params.timezone_offset = "10800";
// params.use_sectional_payload = "True";
const { data: payload } = await client.request({
method: "GET",
url: endpoint,
params,
});
console.log(payload);
<?php
declare(strict_types=1);
use GuzzleHttp\Client;
use GuzzleHttp\Exception\GuzzleException;
$client = new Client([
'base_uri' => "https://www.scrapestorm.net",
'timeout' => 30.0,
'headers' => [
'Accept' => 'application/json',
'X-API-Key' => "00000000-0000-4000-8000-000000000000",
],
]);
$query = [
"cluster_id" => "animals:0",
];
// Optional parameters
// $query["include_fixed_destinations"] = "True";
// $query["is_prefetch"] = "False";
// $query["latitude"] = "40.7128";
// $query["longitude"] = "-74.006";
// $query["module"] = "explore_popular";
// $query["omit_cover_media"] = "True";
// $query["reels_configuration"] = "hide_hero";
// $query["session_id"] = "session-1";
// $query["timezone_offset"] = "10800";
// $query["use_sectional_payload"] = "True";
try {
$response = $client->request("GET", "/api/v1/instagram.com/search/topical-explore-by-cluster-id", [
'query' => $query,
]);
$payload = json_decode(
(string) $response->getBody(),
true,
512,
JSON_THROW_ON_ERROR
);
var_dump($payload);
} catch (GuzzleException $e) {
throw $e;
}
package main
import (
"encoding/json"
"fmt"
"net/http"
"net/url"
"time"
)
func main() {
baseURL := "https://www.scrapestorm.net"
endpoint := "/api/v1/instagram.com/search/topical-explore-by-cluster-id"
params := url.Values{}
params.Set("cluster_id", "animals:0")
// Optional parameters
// params.Set("use_sectional_payload", "True")
req, err := http.NewRequest(
"GET",
fmt.Sprintf("%s%s?%s", baseURL, endpoint, params.Encode()),
nil,
)
if err != nil {
panic(err)
}
req.Header.Set("Accept", "application/json")
req.Header.Set("X-API-Key", "00000000-0000-4000-8000-000000000000")
client := &http.Client{Timeout: 30 * time.Second}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
var payload any
if err := json.NewDecoder(resp.Body).Decode(&payload); err != nil {
panic(err)
}
fmt.Printf("%+v\n", payload)
}
미리보기에는 주요 필드와 컬렉션의 첫 항목이 포함되어 있어 응답 형태를 빠르게 확인할 수 있습니다. 버전을 바꾸면 JSON 형식이 바뀝니다.
V2의 검증된 실제 응답 예시가 아직 없습니다. 검증된 예시가 게시될 때까지 이 자리 표시자가 표준 응답 봉투를 보여 줍니다.
{
"success": true,
"status": "ok",
"data": {}
}
V1의 검증된 실제 응답 예시가 아직 없습니다. 검증된 예시가 게시될 때까지 이 자리 표시자가 표준 응답 봉투를 보여 줍니다.
{
"success": true,
"status": "ok",
"data": {}
}
이 문서를 첫 판단 기준으로 삼고, 반복 사용을 위해 엔드포인트를 연결하기 전에 요금, 플랫폼 지원 범위, 연동 규칙을 확인하세요.
이 답변을 참고하여 이 API 메서드가 워크플로, 버전 선택, 도입 계획에 맞는지 판단하세요.
이 메서드는 검색에 대해 "Topical Explore By Cluster Id"을 실행합니다. 아래의 간결한 응답 예시에서 필드의 정확한 구조를 확인할 수 있습니다.
새 연동에는 정규화된 구조를 제공하는 V2를 선택하세요. V1은 이미 플랫폼 고유 형식을 처리하는 클라이언트와의 호환성을 위해서만 사용하세요.
API 키를 만들어 요청 헤더에 넣고 표의 필수 매개변수를 입력하세요. 코드 예제에는 이미 올바른 경로와 요청 구조가 포함되어 있습니다.