요청 예제
Python
import json
import urllib.request
request = urllib.request.Request('https://api.redditapistack.com/v1/search?q=asyncio&subreddit=learnpython&limit=3',
headers={"Authorization": "Bearer YOUR_API_KEY"})
with urllib.request.urlopen(request, timeout=30) as response:
payload = json.load(response)
print(payload)JavaScript
const response = await fetch("https://api.redditapistack.com/v1/search?q=asyncio&subreddit=learnpython&limit=3", {
headers: { Authorization: "Bearer YOUR_API_KEY" }
});
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const payload = await response.json();
console.log(payload);독립적 아카이브의 명확한 한계와 가치
레딧 공식 서버의 직접적인 연결이 아닌, 독립적인 역사적 아카이브입니다. 따라서 OAuth 인증이나 실시간 투표 기능, 개인 메시지 조회, 게시글 작성과 같은 실시간 상호작용 기능은 제공되지 않습니다. 이 아카이브는 레딧의 공식 서비스와 동급이거나 공식적인 제휴를 맺은 것이 아니라, 과거 데이터를 안정적으로 보존하는 데 초점을 맞추고 있습니다.
이 서비스에는 구독이 없으며 구매한 크레딧은 만료되지 않습니다. 다만 성공한 호출마다 잔액이 줄어들므로 필요한 페이지와 재시도를 계산해야 합니다. 장기 분석에 자료를 사용한다면 원본 응답과 검색 조건을 함께 저장하세요. 과거 자료라는 성격이 영구 접근이나 같은 결과의 재조회를 보장하지는 않습니다. 실제로 받은 표본의 범위를 기준으로 분석해야 합니다.
아카이브는 현재 Reddit과 동기화된 실시간 목록이 아닙니다. 모든 기록을 포함한다는 보장도 없으므로 특정 게시글이나 기간이 반드시 존재한다고 가정하지 마세요. 작은 쿼리의 응답을 먼저 확인하고, 필요한 필드가 있는지 검사한 다음 표시와 분석 방법을 정하는 것이 좋습니다. API가 반환하는 자료와 앱에서 추가한 분석 결과도 서로 구분해서 설명해야 합니다.
단순하고 투명한 기술적 사용 구조
유효한 키를 X-API-Key 헤더에 넣어 /v1/posts나 /v1/comments 같은 조회 경로를 호출합니다. 공개 경로 /v1/status는 키 없이 사용할 수 있습니다. 응답은 서버가 조립한 대화 트리가 아니라 평면 기록입니다. parent_id와 link_id가 있을 때 로컬 그룹화가 가능하지만 전체 대화나 모든 상위 관계가 있다는 보장은 없습니다. 각 필드의 실제 존재 여부를 확인하세요.
한 번의 요청은 최대 100개 기록을 반환하고 한 쿼리는 별도 호출로 최대 100페이지까지 조회합니다. 모든 페이지를 반복해도 전체 일치 기록을 수집했다고 볼 수는 없습니다. 결과는 내부 _doc 순서이며 시간순, 관련도순, 점수순이 아닙니다. 날짜별로 쿼리를 나누는 방법도 중복 없는 결과나 빠짐없는 조회를 증명하지 않으므로 한계를 화면에 표시하세요.
검색 시 min_score는 데이터의 순서를 정렬하는 기준이 아니라, 단순한 필터링 조건으로만 작용합니다. /v1/posts와 /v1/comments 엔드포인트는 id 파라미터를 필수로 요구하지 않지만, /v1/item 엔드포인트는 고유한 item id를 필수로 사용합니다. 이러한 제약 사항을 이해하면 API의 한계를 정확히 파악할 수 있으며, 잘못된 데이터 해석을 피하고 정확한 정보 추출을 위한 효율적인 프로그래밍 구조를 설계하는 데 도움이 됩니다.
Python과 JavaScript 통합 및 과금 안내
개발자들은 Python이나 JavaScript 라이브러리를 사용하여 API 엔드포인트와 쉽게 통합할 수 있습니다. API 키는 계정 생성 시 즉시 발급되며, 이는 결제 확인 전의 단계입니다. 발급된 키는 브라우저의 localStorage에는 직접 저장되지 않으며, 외부로 노출되지 않도록 서버 측에서 관리하는 것이 좋습니다. 프론트엔드 애플리케이션에서 키를 사용해야 할 경우, 적절한 보안을 위해 백엔드를 경유하여 요청을 처리하는 방식을 권장합니다.
성공한 조회는 빈 결과라도 1크레딧을 사용하며 1000회에 미화 1달러입니다. 최소 유료 충전액은 50달러이고 유료 크레딧 50000개를 제공합니다. 가입과 첫 키 발급에는 결제가 필요하지 않습니다. 페이지 수와 성공한 반복을 각각 계산해야 하며, 최대 100개 기록이라는 응답 한도는 크레딧 환산 비율과 다른 규칙입니다. 두 값을 혼동하지 마세요.
네트워크 전체의 남용 방지 자격 조건에 따라 체험 크레딧 100개가 제공될 수 있습니다. 충전하려면 로그인 후 청구서를 만들고 USDT는 TRON TRC20, USDC는 Ethereum 메인넷 ERC20으로 보내세요. 표시된 수취인과 정확한 금액을 사용한 뒤 실제 거래 해시로 검증을 요청합니다. 확인된 진짜 송금이 검증되어야 잔액에 추가되며 처리 시간은 보장되지 않습니다.