Testing Console API 참조 [베타]

테스트 콘솔 API는 싱귤러 앱의 테스트 콘솔 페이지의 대안입니다. 두 도구 모두 기기(앱을 설치한 등록된 테스트 기기)에서 Singular 서버로 어떤 데이터가 전송되는지 보여줌으로써 Singular SDK 또는 S2S 연동을 테스트할 수 있습니다.

싱귤러 SDK/S2S가 앱에 올바르게 통합되었다면, 기기는 구현한 모든 속성과 함께 사용자 세션 및 이벤트를 싱귤러로 전송해야 합니다.

자세한 내용은 다음을 참조하세요:

빠른 시작 가이드

1 장치 등록 엔드포인트를호출하여 테스트 장치를 등록합니다.
2 5초간 기다린 후 장치 등록 확인을호출하여 장치가 등록되었고 로깅할 준비가 되었는지 확인합니다.
3

디바이스를 로깅할 준비가 되면 디바이스를 사용하여 테스트하려는 앱 이벤트를 실행합니다. SDK/S2S 통합의 다양한 기능을 테스트하는 방법에 대한 자세한 내용은 단일 SDK 통합을 테스트하는 방법을 참조하세요.

참고:
  • 로그에는 최대 100개의 이벤트가 표시됩니다. 테스트할 이벤트가 100개를 초과하는 경우 로그를 여러 번 검색해야 합니다.
  • 장치 등록은 한 시간 후에 만료됩니다. 이벤트를 실행하는 데 시간이 더 필요한 경우 장치 등록을 다시 호출하세요( API 제약 조건 및 제한 사항 참조).
4 로그조회 엔드포인트를 호출하여 디바이스가 Singular에 보낸 내용을 확인합니다.
5 선택 사항으로 장치 등록 취소를 호출합니다. 그렇지 않으면 장치 등록 호출 후 1시간이 지나면 장치 등록이 자동으로 만료됩니다.

API 엔드포인트 참조

장치 엔드포인트 등록

POST api.singular.net/api/event_logger/device

사용법

이 엔드포인트를 사용하여 새 로깅 세션을 시작하기 위해 장치를 등록합니다. 로깅 세션은 1시간 후에 자동으로 만료됩니다.

샘플 호출

POST 'https://api.singular.net/api/event_logger/device?api_key=<api-key>'
  
  Request body:
  {
      "device_id": "058000d94-1972-448b-8c08-32c0ccc81fa4",
      "keyspace": "AIFA",
      "platform": "Android"
  }

쿼리 매개변수

파라미터 필수? 설명
api_key 필수(인증 헤더에 전달되지 않은 경우) 싱귤러 API 키를 받으려면 싱귤러 계정에 로그인하고 설정 > API로 이동합니다. 키 표시를 클릭한 다음 키 복사를 클릭합니다.
device_id 필수 입력 등록하려는 테스트 디바이스의 ID(예: 058000d94-1972-448b-8c08-32c0ccc81fa4).
keyspace 필수 제공된 디바이스 ID 유형(예: AIFA)
platform 필수 디바이스 플랫폼(예: 안드로이드)

예상 응답

참고: 응답이 등록 성공(상태 200)을 나타내더라도 콘솔이 이벤트를 기록할 준비가 되지 않았을 수 있습니다. 1초 정도 기다린 후 "장치 등록 확인" 엔드포인트를 호출하는 것이 좋습니다.

{
      "status": 0, 
      "log_session_info":
          {
              "session_expire_timestamp": 1647448055, 
              "session_start_timestamp": 1647444455,
              "session_id": "eceece6f-ef54-4f1a-8fe9-d3da1563c05a"
          },
      "registered_devices_num": 2
  }

장치 등록 확인 엔드포인트

GET api.singular.net/api/event_logger/device

사용법

이 엔드포인트를 사용하여 지정된 디바이스가 테스트 콘솔에 등록되어 있는지 확인하세요. 디바이스가 등록되어 있고 로거가 디바이스에서 정보 수집을 시작할 준비가 되었다면 디바이스의 앱에서 이벤트 실행을 시작하여 테스트할 수 있습니다.

쿼리 매개변수

파라미터 필수? 설명
api_key 필수(인증 헤더에서 전달되지 않은 경우) 싱귤러 API 키를 받으려면 싱귤러 계정에 로그인하고 설정 > API로 이동합니다. 키 표시를 클릭한 다음 키 복사를 클릭합니다.
device_id 필수 입력 등록한 디바이스의 ID(예: 058000d94-1972-448b-8c08-32c0ccc81fa4)
keyspace 필수 제공된 디바이스 ID 유형(예: AIFA)
platform 필수 디바이스 플랫폼(예: 안드로이드)

가능한 응답

응답 의미
HTTP 200
  
  {
      “status”:0,
      “message”: “Device registered”,
      “log_session_info”: [session_id, session_start_timestamp, session_expire_timestamp]
  }
장치가 등록되었고 콘솔이 장치에서 이벤트를 로깅할 준비가 되었습니다.
HTTP 307
              
  Header: Retry After <delay seconds>
          
  {
      “status”:1,
      “session_id”,
      “message”:”Device registration
in progress, retry after
x seconds” }
장치가 등록되었지만 콘솔이 이벤트를 로깅할 준비가 되지 않았습니다. 필요한 시간(초)을 기다렸다가 다시 확인하세요.
HTTP 404
              
  {
      “status”:”3”,
      "message”:”Device not registered”
  }
장치가 등록되지 않았거나 등록 시간이 초과되었습니다. 장치 등록 엔드포인트를 다시 호출하세요.

로그 엔드포인트 검색

GET api.singular.net/api/event_logger/retrieve_logs

사용법

이 엔드포인트를 사용하여 현재 세션에 대해 장치에 대해 기록된 모든 단일 이벤트를 검색합니다.

쿼리 매개변수

파라미터 필수? 설명
api_key 필수(인증 헤더에 전달되지 않은 경우) 싱귤러 API 키를 받으려면 싱귤러 계정에 로그인하고 설정 > API로 이동합니다. 키 표시를 클릭한 다음 키 복사를 클릭합니다.
device_id 필수 입력 테스트하려는 디바이스의 ID(예: 058000d94-1972-448b-8c08-32c0ccc81fa4)
keyspace 필수 제공된 디바이스 ID 유형(예: AIFA)
platform 필수 디바이스 플랫폼(예: Android)

쿼리 응답

Success: HTTP 200 
  
  {
      “status”:0,
      “Message”:”Request OK”
      “log_session_info”: [session_id, session_start_timestamp, session_expire_timestamp]
      “event_details”: [payload]
  }

장치 엔드포인트 등록 취소

DELETE api.singular.net/api/event_logger/event_logger/device

사용법

등록된 디바이스에 대한 로깅 세션을 중지하려면 이 엔드포인트를 사용합니다.

쿼리 매개변수

파라미터 필수? 설명
api_key 필수(인증 헤더에 전달되지 않은 경우) 싱귤러 API 키를 받으려면 싱귤러 계정에 로그인하고 설정 > API로 이동합니다. 키 표시를 클릭한 다음 키 복사를 클릭합니다.
device_id 필수 입력 등록한 디바이스의 ID(예: 058000d94-1972-448b-8c08-32c0ccc81fa4)
device_id_type 필수 제공된 디바이스 ID 유형(예: AIFA)
platform 필수 디바이스 플랫폼(예: 안드로이드)

 

가능한 응답

Success: HTTP 200
  
  {
      “status”:0,
      “message”:”Device unregistered”
      “open_sessions_num”,
      “log_session_info”: [session_id, session_start_timestamp, session_expire_timestamp]
  }
Error: HTTP 400
  
  {
      “status”:”1”, 
      “message”:”Invalid request, check required fields”
  }
HTTP 204
  
  {
      “status”:”2”, 
      “message”:”Device not registered”
  }

API 제약 조건 및 제한 사항

API는 각 클라이언트(api-key)에 대해 다음과 같은 제한이 있습니다:

  1. 각 로깅 세션은 1시간 후에 만료되며, 그 이후에는 로깅 세션의 이벤트에 대한 모든 데이터가 삭제되고 새로운 데이터가 추적되지 않습니다. 이미 등록된 디바이스에서 다른 디바이스 등록 요청을 전송하여 세션 만료를 1시간 지연시킬 수 있습니다.
  2. 한 번에 50개의 로깅 세션(50개의 디바이스에 대해)만 오픈할 수 있습니다(API 키당). 장치 등록 및 장치 등록 취소 요청이 성공하면 열려 있는 세션 수를 모니터링할 수 있도록 open_sessions_num이 전송됩니다.
  3. 디바이스당 기록되는 이벤트의 최대 개수는 100개입니다. 제한에 도달하면 새 이벤트를 위한 공간을 확보하기 위해 오래된 이벤트가 로그에서 제거됩니다.
  4. API는 초당 최대 20개의 요청을 받을 수 있습니다.