예. PRO/ENTERPRISE 사용자는 API 질문을 hello@listennotes.com으로 보낼 수 있습니다. debug를 위해 sample code나 request/response를 요청할 수 있습니다. FREE에는 개인 지원이 보장되지 않지만 문서와 FAQ를 제공합니다.
앱이 성능을 위해 client에 data를 cache하는 것은 일반적입니다. client에는 영구적인 Listen Notes URL을 저장하고 server에서 실제 오디오 URL을 찾습니다. 변경 여부도 지속적으로 확인합니다.
9. 특정 팟캐스트를 찾을 수 없거나 오디오 링크 오류, 잘못된 메타데이터 등 RSS feed와 동기화되지 않은 경우에는 어떻게 하나요?
🔗
데이터베이스가 매우 포괄적이지만 새 프로그램을 제때 추가하지 못할 수 있습니다. Google 크롤러가 새 사이트를 찾아 index하는 데 시간이 필요한 것과 같습니다. 누락된 프로그램을 제출해 주세요.
제작자가 RSS feed를 변경했는데 감지가 늦거나 feed에 오류가 있을 수도 있습니다. Google 검색에 오래된 페이지나 404가 남는 것과 같습니다. 메타데이터 오류는 hello@listennotes.com으로 신고하면 보통 몇 분 내에 수정합니다. 또는 self-service 도구로 직접 수정해 주세요 :)
당사 server로 API 요청을 직접 보내는 device에 대해 최소한의 정보만 수집합니다. 1) IP address, 2) user-agent, 3) endpoint와 parameter입니다. 사실상 Nginx access log 한 줄뿐입니다.
일반적인 팟캐스트 앱에서는 요청이 사용자 앱이 아니라 개발자 server에서 전송되며 server가 proxy 역할을 합니다. 따라서 server IP, user-agent, endpoint와 parameter만 추적하며 앱 최종 사용자에 대해서는 다른 정보를 알지 못합니다.
예. endpoint에 합리적인 속도 제한을 적용합니다. 올바르게 사용하면 제한이 있다는 사실조차 모를 수 있습니다.
모든 신뢰할 수 있는 REST API에는 속도 제한이 필요합니다. Google에서 "api rate limit"을 검색해 보세요. 제한이 없으면 DDoS나 잘못된 loop로 짧은 시간에 대량 요청이 발생할 수 있습니다. 2017년 이후 경험상 예상보다 자주 발생합니다. 한 사용자의 실수가 전체 시스템과 다른 사용자에게 영향을 주지 않도록 하기 위한 장치입니다.
FREE는 낮고 PRO는 더 높으며 ENTERPRISE가 가장 높습니다. 계산 비용에 따라 endpoint별로 다릅니다. 신규 사용자는 비교적 낮은 한도로 시작하며 시간이 지나면 높아집니다.