Skip to content

Android 앱 업그레이드 전략 API 문서

API 설명: 클라이언트의 버전 번호에 기반하여 해당 업그레이드 전략을 가져옵니다

📮요청 정보

요청 URL

POST https://api.upgrade.toolsetlink.com/v1/apk/upgrade

요청 헤더

매개변수 이름필수 여부유형예제 값설명
X-Timestampstring2025-02-17T10:34:55+08:00RFC3339 형식의 요청 시간
X-Noncestringfc812cc0b9b51e8c고유한 랜덤 문자열 (최소 16자)
X-AccessKeystringmui2W50H1j-OC4xD6PgQagAccessKey 비밀 키
X-Signaturestring3603437250c2df51fc46426ac79d8995요청 서명 서명 규칙
Content-Typestringapplication/json

🔐 재생 공격 방지 메커니즘

  1. 서버는 서버 시간과의 타임스탬프 차이가 ±5분을 초과하지 않는지 확인합니다
  2. 서버는 Nonce 값이 이미 존재하는지 확인합니다 (중복 요청 방지)

요청 본문

json
{
  "apkKey": "isVZBUvkFhv6oHxk_X-D0Q",
  "versionCode": 1,
  "appointVersionCode": 0,
  "devModelKey": "stv1",
  "devKey": "LOYlLXNy7w",
  "patchAlgo": 0
}

요청 본문 매개변수 설명

매개변수 이름필수 여부유형예제 값설명
apkKeystringisVZBUvkFhv6oHxk_X-D0QAndroid 앱 고유 식별자
versionCodeint1클라이언트 버전 코드
appointVersionCode아니오int0예상 업그레이드 버전 코드, 0 또는 전달되지 않으면 최신 버전 요청 의미
devModelKey아니오stringstv1기기 모델 고유 식별자
devKey아니오stringLOYlLXNy7w기기 고유 식별자 (mac을 고유 식별자로 사용할 수 있음)
patchAlgo아니오int0업그레이드 알고리즘: 0: 전체 업그레이드; 1: HDiffPatch 알고리즘

📮응답 정보

성공 응답 본문

json
{
  "code": 200,
  "msg": "새 버전 획득",
  "data": {
    "apkKey": "isVZBUvkFhv6oHxk_X-D0Q",
    "packageName": "com.a.c",
    "versionName": "v2",
    "versionCode": 2,
    "urlPath": "http://file.com/2.apk",
    "urlFileSize": 7213,
    "urlFileMd5": "36ee2a36b5d20d1008507d253423eea7",
    "patchAlgo": 0,
    "patchUrlPath": "http://file.com/1-2.patch",
    "patchUrlFileSize": 203,
    "patchUrlFileMd5": "36ee2a36b5d20d1008507d253423eea7",
    "upgradeType": 1,
    "promptUpgradeContent": "알림 내용"
  }
}

응답 본문 매개변수 설명

매개변수 이름유형예제 값설명
apkKeystringisVZBUvkFhv6oHxk_X-D0QAndroid 앱 고유 식별자
packageNamestringcom.a.cAndroid 앱 패키지 이름
versionNamestringv1버전 이름
versionCodeint1버전 코드
urlPathstringhttp://file.com/2.apk파일 다운로드 주소
urlFileSizeint7213파일 크기 (바이트)
urlFileMd5string36ee2a36b5d20d1008507d253423eea7파일 MD5
patchAlgoint0업그레이드 알고리즘: 0: 전체 업그레이드; 1: HDiffPatch 알고리즘
patchUrlPathstringhttp://file.com/1-2.patch패치 파일 다운로드 주소
patchUrlFileSizeint7213패치 파일 크기 (바이트)
patchUrlFileMd5string36ee2a36b5d20d1008507d253423eea7패치 파일 MD5
upgradeTypeint1업그레이드 방법: 1: 알림 업그레이드; 2: 무음 업그레이드; 3: 강제 업그레이드
promptUpgradeContentstring알림 내용알림 업그레이드 설명 내용

일반적인 오류 응답 본문

json
{
  "code": 404001,
  "msg": "사용 가능한 버전을 획득할 수 없음",
  "docs": "해당 앱 버전을 찾을 수 없습니다. 시스템에 올바르게 생성되었는지 확인하세요. 문서를 참조하세요: https://upgrade.toolsetlink.com/ko/upgrade/recommend/apk/app-version.html",
  "data": null
}

📊상태 코드

HTTP 상태 코드code시나리오 설명해결 방법
2000요청 성공, 이미 최신 버전
200200요청 성공, 버전 업그레이드 전략 획득
400400001잘못된 요청
400400002매개변수 누락
400400003잘못된 매개변수
400400004잘못된 헤더
400400005잘못된 본문
401401001인증 실패
401401002서명 확인 실패
404404001리소스를 찾을 수 없음
404404002쿼리 레코드를 찾을 수 없음
404404003처리 방법을 찾을 수 없음
404404004요청을 찾을 수 없음
429429001애플리케이션 작업 전략 요청 흐름 제어 제한현재 업그레이드 작업에 대한 요청 흐름 제어 전략이 제한에 도달했습니다. 나중에 다시 시도하세요.
500500001서버 내부 오류문의하기 연락처
500500002서버 내부 데이터 검증 실패문의하기 연락처

toolsetlink@163.com