Samsara 데이터 가져오기
Generic REST 연결과 REST 요청 단계를 사용하여 Samsara 데이터를 가져옵니다. 이렇게 하면 API 토큰이 재사용 가능한 연결에 보관되며, 연속 커서를 반환하는 모든 API에서 사용할 수 있는 동일한 일반 커서 페이징 컨트롤을 사용합니다.
시작하기 전에
섹션 제목: “시작하기 전에”Samsara에서 가져오기에 필요한 읽기 범위와 태그 액세스만 포함하는 API 토큰을 만듭니다. Samsara는 토큰을 만들 때 한 번만 표시하므로 페이지를 떠나기 전에 복사해 두십시오. Samsara API 인증을 참조하십시오.
Samsara 대시보드와 일치하는 호스트를 선택합니다.
| Samsara 대시보드 | 호스트 또는 IP 주소 |
|---|---|
| 미국 또는 레거시 캐나다 클라우드 | api.samsara.com |
| EU / 영국 | api.eu.samsara.com |
| 캐나다 클라우드 | api.ca.samsara.com |
연결 만들기
섹션 제목: “연결 만들기”- 연결을 열고 이름이
Samsara인 Generic REST 연결을 만듭니다. - 위 표에서 해당하는 호스트를 입력합니다.
- 인증에서 Bearer 토큰을 선택하고 Samsara API 토큰을 붙여 넣습니다.
Authorization헤더를 직접 추가하지 마십시오. - 연결을 저장합니다.
차량 가져오기
섹션 제목: “차량 가져오기”이 첫 번째 가져오기로 연결을 확인할 수 있으며, 다른 최신 Samsara 목록 엔드포인트에도 재사용할 수 있는 레시피를 얻을 수 있습니다.
- REST 요청 단계를 추가하고
Samsara연결을 선택합니다. - 엔드포인트 소스를 수동으로, 메서드를
GET으로, 엔드포인트를/fleet/vehicles로 설정합니다. samsara_vehicles같은 대상 테이블을 선택합니다.- 쿼리 매개변수에서 값이
512인limit를 추가합니다. - 요청에서 다음 값을 설정합니다.
| 필드 | 값 |
|---|---|
| 행 형식 | Object |
| 스트리밍 모드 | Cursor Paging |
| 항목 경로(JSON 서식 지정) | ["data"] |
| 모드 매개변수(JSON 서식 지정) | {"cursor": "after"} |
| 모드 경로(JSON 서식 지정) | {"has_more": ["pagination", "hasNextPage"], "cursor": ["pagination", "endCursor"]} |
- 페이징 테스트를 선택합니다. PlaidCloud는 미리 보기에 필요한 만큼의 페이지만 가져오므로 전체 실행 전에 결과를 확인할 수 있습니다.
- 단계를 저장하고 실행합니다.
최신 Samsara 목록 엔드포인트를 구성할 때는 다음 값을 그대로 복사하십시오.
{"cursor": "after"}{"has_more": ["pagination", "hasNextPage"], "cursor": ["pagination", "endCursor"]}Samsara가 hasNextPage: true를 반환하면 PlaidCloud는 반환된 endCursor를 다음 요청의 after 매개변수로 전송합니다. Samsara에서는 비어 있는 페이지 뒤에도 데이터가 있는 페이지가 있을 수 있으므로, 페이지가 비어 있어도 계속 진행합니다. Samsara 페이지 매김을 참조하십시오.
효율적으로 실행하기
섹션 제목: “효율적으로 실행하기”- 목록 엔드포인트마다 REST 요청 단계를 하나씩 사용하십시오. 커서 값은 불투명하므로 반환된 그대로 전송해야 합니다.
- 엔드포인트가
limit를 지원하면limit=512로 설정하십시오. 512는 Samsara가 문서화한 최댓값입니다. - 목록 엔드포인트에 행마다 요청을 하나씩 보내는 팬아웃은 피하십시오. 실제로 독립적인 상세 요청에만 사용하고, 요청 속도는 엔드포인트의 제한 이내로 유지하십시오.
/feed엔드포인트는 전체 스냅샷이 아닌 증분 방식입니다. 마지막으로 성공한 커서를 유지하고, Samsara의 30일 커서 만료 기간보다 더 자주 워크플로를 실행하도록 일정을 설정하십시오.
문제 해결
섹션 제목: “문제 해결”| 문제 | 확인할 내용 |
|---|---|
401 또는 403 |
지역 호스트, 토큰, 태그 액세스, 엔드포인트 읽기 범위를 확인합니다. |
| 행 없음 | 목록 엔드포인트인지, 그리고 항목 경로가 ["data"]인지 확인합니다. |
| 페이징이 너무 일찍 중단됨 | Samsara의 최신 API 참조에 있는 최신 엔드포인트를 사용하십시오. 레거시 /v1/ 엔드포인트는 다른 페이지 매김 필드를 사용할 수 있습니다. |
429 |
독립적인 팬아웃 호출의 요청 속도를 낮추십시오. REST 요청 단계는 안전한 읽기 요청을 재시도할 때 Samsara의 Retry-After 응답을 따릅니다. |