📡 앱 API 레퍼런스
앱 등록, 관리, 삭제 및 통계 조회 (6개 엔드포인트)
📌 인증
모든 Service API 요청에는 X-API-KEY 헤더를 포함해야 합니다.
API Key는 콘솔 > 개발자 > API 키 관리에서 발급받을 수 있습니다.
공통 규칙은 API 개요를 참고하세요.
POST /api/v1/service/mobile-apps
새로운 앱을 등록합니다.
Request Body
| 필드 | 타입 | 필수 | 설명 |
|---|---|---|---|
| platform | String | ✅ | 플랫폼 (IOS 또는 ANDROID) |
| appName | String | ✅ | 앱 이름 |
| bundleId | String | ✅ | Bundle ID (iOS) / Package Name (Android) |
| teamId | String | Apple Team ID (iOS 전용) | |
| scheme | String | URL 스킴 (예: myapp://) | |
| storeUrl | String | 앱 스토어/플레이스토어 URL | |
| appIconUrl | String | 앱 아이콘 URL |
Response 201 Created
| 필드 | 타입 | 설명 |
|---|---|---|
| id | Long | 앱 ID |
| appName | String | 앱 이름 |
| platform | String | 플랫폼 (IOS 또는 ANDROID) |
| bundleId | String | Bundle ID / Package Name |
| path | String | 고유 경로 (URL 네임스페이스, 자동 생성) |
| apiKey | String | 모바일 SDK 연동 API 키 (자동 생성) |
| scheme | String | URL 스킴 |
| teamId | String | Apple Team ID |
| storeUrl | String | 앱 스토어 URL |
| appIconUrl | String | 앱 아이콘 URL |
cURL
curl -X POST https://fplink.net/api/v1/service/mobile-apps \
-H "Content-Type: application/json" \
-H "X-API-KEY: your-api-key" \
-d '{
"platform": "IOS",
"appName": "MyApp iOS",
"bundleId": "com.example.myapp",
"teamId": "ABC123DEF4",
"scheme": "myapp://",
"storeUrl": "https://apps.apple.com/app/id123456789"
}'
JSON
{
"id": 12,
"appName": "MyApp iOS",
"platform": "IOS",
"bundleId": "com.example.myapp",
"path": "myapp",
"apiKey": "mak_a1b2c3d4e5f6...",
"scheme": "myapp://",
"teamId": "ABC123DEF4",
"storeUrl": "https://apps.apple.com/app/id123456789",
"appIconUrl": null
}
GET /api/v1/service/mobile-apps
등록된 앱 목록을 조회합니다.
Query Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| page | Integer | 페이지 번호 (0부터 시작, 기본: 0) | |
| size | Integer | 페이지 크기 (1~100, 기본: 20) | |
| search | String | 검색 키워드 (앱 이름 검색) |
Response
Spring Page 응답 형식으로 반환됩니다.
| 필드 | 타입 | 설명 |
|---|---|---|
| content[] | Array | 앱 목록 배열 (각 항목은 앱 상세 참조) |
| totalElements | Long | 전체 앱 수 |
| totalPages | Integer | 전체 페이지 수 |
| size | Integer | 페이지 크기 |
| number | Integer | 현재 페이지 번호 (0부터 시작) |
| first | Boolean | 첫 번째 페이지 여부 |
| last | Boolean | 마지막 페이지 여부 |
cURL
curl "https://fplink.net/api/v1/service/mobile-apps?page=0&size=10" \
-H "X-API-KEY: your-api-key"
JSON
{
"content": [
{
"id": 12,
"appName": "MyApp iOS",
"platform": "IOS",
"appIconUrl": "https://example.com/icon.png",
"bundleId": "com.example.myapp",
"path": "myapp",
"apiKey": "mak_a1b2c3d4e5f6...",
"scheme": "myapp://",
"teamId": "ABC123DEF4",
"storeUrl": "https://apps.apple.com/app/id123456789"
},
{
"id": 15,
"appName": "MyApp Android",
"platform": "ANDROID",
"appIconUrl": "https://example.com/icon-android.png",
"bundleId": "com.example.myapp",
"path": "myapp",
"apiKey": "mak_f6e5d4c3b2a1...",
"scheme": "myapp://",
"teamId": null,
"storeUrl": "https://play.google.com/store/apps/details?id=com.example.myapp"
}
],
"totalElements": 2,
"totalPages": 1,
"size": 10,
"number": 0,
"first": true,
"last": true
}
GET /api/v1/service/mobile-apps/{id}
특정 앱의 상세 정보를 조회합니다.
Path Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| id | Long | ✅ | 앱 ID |
Response
| 필드 | 타입 | 설명 |
|---|---|---|
| id | Long | 앱 ID |
| appName | String | 앱 이름 |
| platform | String | 플랫폼 (IOS 또는 ANDROID) |
| appIconUrl | String | 앱 아이콘 URL |
| bundleId | String | Bundle ID (iOS) / Package Name (Android) |
| path | String | 고유 경로 (URL 네임스페이스) |
| apiKey | String | 모바일 SDK 연동 API 키 |
| scheme | String | URL 스킴 (딥링크용) |
| teamId | String | Apple Team ID (iOS 전용, Android는 null) |
| storeUrl | String | 앱 스토어/플레이스토어 URL |
cURL
curl "https://fplink.net/api/v1/service/mobile-apps/12" \
-H "X-API-KEY: your-api-key"
JSON
{
"id": 12,
"appName": "MyApp iOS",
"platform": "IOS",
"appIconUrl": "https://example.com/icon.png",
"bundleId": "com.example.myapp",
"path": "myapp",
"apiKey": "mak_a1b2c3d4e5f6...",
"scheme": "myapp://",
"teamId": "ABC123DEF4",
"storeUrl": "https://apps.apple.com/app/id123456789"
}
PUT /api/v1/service/mobile-apps/{id}
기존 앱의 정보를 수정합니다.
Path Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| id | Long | ✅ | 앱 ID |
Request Body
| 필드 | 타입 | 필수 | 설명 |
|---|---|---|---|
| platform | String | 플랫폼 (IOS 또는 ANDROID) | |
| appName | String | 앱 이름 | |
| bundleId | String | Bundle ID / Package Name | |
| teamId | String | Apple Team ID (iOS 전용) | |
| scheme | String | URL 스킴 | |
| storeUrl | String | 앱 스토어/플레이스토어 URL | |
| appIconUrl | String | 앱 아이콘 URL |
Response
앱 상세 조회와 동일한 전체 필드를 반환합니다.
cURL
curl -X PUT https://fplink.net/api/v1/service/mobile-apps/12 \
-H "Content-Type: application/json" \
-H "X-API-KEY: your-api-key" \
-d '{
"appName": "MyApp iOS v2",
"storeUrl": "https://apps.apple.com/app/id987654321"
}'
JSON
{
"id": 12,
"appName": "MyApp iOS v2",
"platform": "IOS",
"appIconUrl": "https://example.com/icon.png",
"bundleId": "com.example.myapp",
"path": "myapp",
"apiKey": "mak_a1b2c3d4e5f6...",
"scheme": "myapp://",
"teamId": "ABC123DEF4",
"storeUrl": "https://apps.apple.com/app/id987654321"
}
DELETE /api/v1/service/mobile-apps/{id}
앱을 삭제합니다. 삭제된 앱과 연결된 딥링크 설정도 함께 제거됩니다.
Path Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| id | Long | ✅ | 삭제할 앱 ID |
Response
성공 시 204 No Content를 반환합니다. 응답 본문은 없습니다.
cURL
curl -X DELETE https://fplink.net/api/v1/service/mobile-apps/12 \
-H "X-API-KEY: your-api-key"
GET /api/v1/service/mobile-apps/{id}/install-stats
앱의 설치 및 클릭 통계를 조회합니다.
Path Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| id | Long | ✅ | 앱 ID |
Query Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| startDate | Date | 시작일 (YYYY-MM-DD 형식) | |
| endDate | Date | 종료일 (YYYY-MM-DD 형식) |
Response
| 필드 | 타입 | 설명 |
|---|---|---|
| period | String | 조회 기간 |
| appName | String | 앱 이름 |
| platform | String | 플랫폼 필터 (All, iOS, Android) |
| totalInstalls | Long | 전체 설치 수 |
| iosInstalls | Long | iOS 설치 수 |
| androidInstalls | Long | Android 설치 수 |
| totalClicks | Long | 전체 클릭 수 |
| conversionRate | Double | 클릭 대비 설치 전환율 (%) |
| dailyInstalls | Array | 일별 설치 통계 |
| platformStats | Array | 플랫폼별 설치 통계 |
| countryStats | Array | 국가별 설치 통계 |
| recentInstalls | Array | 최근 설치 내역 |
| reengagementStats | Object | 리인게이지먼트 통계 (재방문율, 플랫폼 분포 등) |
| funnelStats | Object | 퍼널 통계 (딥링크 클릭 → 스토어 방문 → 설치 → 실행) |
| qualityStats | Object | 딥링크 품질 통계 (성공률, 응답시간, 실패 원인 등) |
cURL
curl "https://fplink.net/api/v1/service/mobile-apps/5/install-stats?startDate=2026-01-01&endDate=2026-01-31" \
-H "X-API-KEY: your-api-key"