완료의 의미를 먼저 정하세요
이 예제에서 완료는 r/automation의 제한된 기록 묶음을 처리하고 결과를 남겼다는 뜻입니다. 아카이브를 모두 읽었다는 뜻은 아닙니다. 수동으로 한 번 실행한 다음 담당자가 대기열을 검토할 수 있는 주기에 맞춰 자체 일정을 정하세요. 같은 쿼리를 자주 보낸다고 새로운 자료가 반드시 생기는 것은 아닙니다.
로컬 실행 식별자와 검색 조건, 선택한 항목의 저장 위치를 정합니다. 이는 애플리케이션의 관리 정보이며 API에 보내는 새 매개변수가 아닙니다. 기대한 항목이 없을 때 어떤 조건으로 요청했는지 다시 확인할 수 있도록 기록하세요. 독립적인 과거 데이터 아카이브는 현재 Reddit에서 일어나는 활동을 증명하지 않습니다.
질문을 검색 조건으로 바꾸세요
GET https://api.apireddit.cc/v1/search?q=workflow&subreddit=automation&limit=3 요청에 Authorization: Bearer 또는 X-API-Key로 키를 전달합니다. 작은 묶음으로 실제 필드를 먼저 확인한 뒤 연결 규칙을 확장하세요. 유형을 제한하려면 게시글은 kind=post, 댓글은 kind=comment로 지정할 수 있습니다.
q는 title과 text를 검색합니다. 여러 단어는 일치하는 같은 필드 안에서 AND 조건으로 처리됩니다. 한 단어가 제목에만 있고 다른 단어가 본문에만 있어도 함께 일치할 것이라고 가정하지 마세요. from과 to는 UTC의 YYYY-MM-DD 형식이고 to 날짜도 포함됩니다. min_score는 기준보다 낮은 기록을 제외할 뿐, 나머지를 점수순으로 정렬하지 않습니다.
원본과 검토 결정을 분리하세요
사용 가능한 id와 kind를 저장하고 title과 text는 읽을 자료로 취급합니다. 원본에 적힌 내용을 작업 실행 명령으로 사용하지 마세요. 선정 이유와 검토 상태, 실행 번호는 별도의 로컬 필드에 둡니다. 새 항목을 만들기 전에 그 식별자가 이미 처리되었는지 확인하면 반복 실행의 중복을 관리할 수 있습니다.
응답은 평면 레코드입니다. parent_id나 link_id가 존재하고 필요할 때만 로컬에서 묶으세요. 없는 관계는 알 수 없는 상태로 남겨야 하며 완전한 대화가 보장되지는 않습니다. 특정 항목을 다시 조회하는 /v1/item에는 id가 필요합니다. 이 추가 요청 역시 실행 예산에 포함하고, 실제로 다시 읽을 필요가 있는지 결정하세요.
멈춘 이유를 남기세요
허용된 최대 100페이지 안에서 자체 페이지 예산을 정하고 페이지당 최대 100개 기록을 요청하세요. 같은 순회 중에는 필터를 유지합니다. 아카이브 문서 순서는 시간, 관련도, 점수의 순서가 아닙니다. 따라서 첫 결과를 가장 최근에 처리한 게시글의 확실한 위치로 사용할 수 없습니다.
총수는 관계와 함께 해석합니다. eq는 정확한 값, gte는 하한, unknown은 null일 수 있는 알 수 없는 총수를 뜻합니다. 빈 묶음 때문에 멈췄는지 페이지 예산을 다 썼는지 구분해서 기록하세요. 날짜로 나누면 다음 실행을 정리하기는 쉽지만 전부 수집했다거나 중복이 없다는 증거는 되지 않습니다.
불확실한 결과를 구분한 뒤 재시도하세요
400이면 조건을 고치고, 401이면 키를, 402이면 잔액을 확인하세요. 429에는 대기 시간을 두고 시도 횟수를 제한합니다. 정상적인 빈 조회도 1크레딧을 사용합니다. 원천 서비스의 실패는 예약분을 돌려주며 잘못된 요청은 크레딧을 차감하지 않습니다. 오류의 종류를 구분해야 불필요한 반복을 줄일 수 있습니다.
클라이언트가 응답을 잃었어도 서버는 이미 성공해서 크레딧을 사용했을 수 있습니다. 재시도가 성공하면 크레딧이 하나 더 듭니다. 불확실한 결과를 기록하고 중복은 로컬에서 방지하세요. 무료인 /v1/status는 정적인 서비스 설명을 반환할 뿐 원천 검색의 상태를 검사하지 않습니다. 실행 규모를 늘리기 전에 요금과 요청 예산을 확인하세요.