https://easyf.appEasyF로 빌드 다운로드하기
EasyF는 개발자가 작업을 예측할 수 있도록 인터페이스를 미리 보여줍니다. 라이브 키와 사용 한계가 존재하기 전에 지원 검토가 여전히 필요합니다.
빠른 시작
API 호스트를 설명하기 위해, EasyF는 지원 활성화 자격 증명을 할당된 테넌트 엔드포인트와 분리합니다. 평이한 언어 워크플로우는 서버 전용 호출 경로에 고유한 위치를 부여합니다.
X-API-Key: pending_activation_…EasyfClientv1# Available only after support activation
export EASYF_SERVICE_KEY="issued-after-review"
curl -X POST https://easyf.app/v1/resolve \
-H "X-API-Key: $EASYF_SERVICE_KEY" \
-H "Content-Type: application/json" \
-d '{"asset_url":"https://www.youtube.com/watch?v=VIDEO_ID"}'자격 증명 안전은 EasyF에서 서버 측 비밀 저장으로 시작합니다. 다음 뷰는 클라이언트 번들 포함이 없음을 다룹니다. 페이지는 공개 로그나 저장소를 표시하지 않습니다.
링크 해결하기
Resolve 작업을 설명하기 위해, EasyF는 제출된 단일 URL에서 형식과 소스 감지를 분리합니다. 평이한 언어의 워크플로우는 발명된 출력에 고유한 위치를 부여하지 않습니다.
/v1/resolve범위: 해결| 필드 | 종류 | 필수 | 설명 |
|---|---|---|---|
asset_url | HTTPS URL | 네 | 분석할 공개 또는 승인된 미디어 페이지. |
tenant | 문자열 | 네 | 할당된 테넌트 도메인. 일반적으로 생략됩니다. |
{
"success": true,
"platform": "youtube",
"title": "Example video",
"formats": [
{"id":"18","type":"video","quality":"360p","container":"mp4"}
],
"cached": false
}형식 식별자는 EasyF에서 반환된 값을 변경하지 않고 시작합니다. 다음 뷰는 링크별 가용성을 다룹니다. 페이지는 추정 품질 레이블을 표시하지 않습니다.
다운로드 작업 만들기 및 추적
EasyF는 작업 생성에 대해 세 가지 실용적인 요점을 제시합니다. 첫 번째는 비동기 준비입니다. 평이한 언어의 작업 흐름은 짧은 HTTP 요청을 다룹니다. 마지막 요점은 제한된 작업자 실행입니다.
/v1/jobs범위 : 일자리| 필드 | 종류 | 필수 | 설명 |
|---|---|---|---|
asset_url | HTTPS URL | 네 | 해결하기 위해 제출한 동일한 정규화된 소스. |
variant_code | 문자열 | 네 | 해결 응답에서 정확한 ID. |
tenant | 문자열 | 네 | 할당된 테넌트 도메인. 일반적으로 생략됩니다. |
curl -X POST https://easyf.app/v1/jobs \
-H "X-API-Key: $EASYF_SERVICE_KEY" \
-H "Content-Type: application/json" \
-d '{"asset_url":"https://www.youtube.com/watch?v=VIDEO_ID","variant_code":"18"}'delivery_id.GET /v1/jobs/{delivery_id} 같은 키로 열어야 합니다.| 상태 | 의미 | 클라이언트 동작 |
|---|---|---|
queued | 경계가 있는 대기열에 허용됨. | 백오프로 다시 폴링합니다. |
extracting | 소스 메타데이터 또는 경로를 새로 고침합니다. | 폴링을 계속합니다. |
processing | 다운로드, 리믹스 또는 병합. | 서버 진행 상황을 표시합니다. |
ready | 서명된 다운로드가 가능합니다. | URL을 사용자에게 보냅니다. |
failed | 터미널 구조화 오류. | 읽기 error_code. 권장되는 경우에만 다시 시도하십시오. |
expired | 임시 출력이 제거되었습니다. | 새 작업을 만듭니다. |
curl https://easyf.app/v1/jobs/DELIVERY_ID \
-H "X-API-Key: $EASYF_SERVICE_KEY"EasyF는 1초 초기 대기 후 제한된 백오프로 작업 폴링에 접근합니다. 평이한 언어의 작업 흐름은 임시 서명된 전달을 명확히 유지합니다.
예측 가능한 오류
EasyF는 오류 계약을 하나의 비-2xx 봉투로 구성합니다. 그 평이한 언어 워크플로우는 지원 요청 ID를 비교합니다. 예측 가능한 클라이언트 처리가 최종 점검으로 남아 있습니다.
{
"success": false,
"error": {
"code": "RATE_LIMITED",
"category": "rate_limited",
"message": "Too many requests. Please try again shortly.",
"retryable": true,
"details": {"retry_after_seconds": 20}
},
"request_id": "…"
}| HTTP | 전형적인 의미 | 동작 |
|---|---|---|
| 400 | 잘못된 URL, 본문 또는 사용할 수 없는 형식입니다. | 요청을 수정합니다. 형식에 대해 다시 해결합니다. |
| 401 | 누락, 잘못된, 만료 또는 잘못된 범위 키. | 서버 측 자격 증명을 확인합니다. |
| 403 | 테넌트 또는 소스 정책이 요청을 거부했습니다. | 정책을 우회하지 마십시오.지원에 문의하십시오. |
| 404 | 알 수 없거나 만료된 작업입니다. | 적절한 경우 새 작업을 만듭니다. |
| 429 | 요청 또는 활성 작업 제한에 도달했습니다. | 명예 retry_after_seconds. |
| 503 | 대기열/용량 또는 업스트림을 일시적으로 사용할 수 없습니다. | 지수 백오프 및 지터로 다시 시도합니다. |
운영 계약
EasyF는 예측 가능한 안내 워크플로를 유지하기 위해 각 승인된 제품과 실용적인 사용 범위를 합의합니다.
- idempotent 애플리케이션 로직을 사용하고 동일한 사용자 클릭에 대해 중복 작업을 시작하지 마십시오.
- 캐시는 메타데이터를 간략하게 해결하지만 서명된 다운로드 URL은 항상 만료된 것으로 취급합니다.
- 지터가 있는 한정된 지수 백오프를 사용하여
429,503그리고 재시도 가능한 오류들. - 공용 미디어 또는 액세스 권한이 있는 미디어만 처리합니다.DRM 및 액세스 제어가 우회되지 않습니다.
- 요청 ID와 작업 ID를 개인 운영 로그에 보관하십시오. 제출된 URL을 불필요하게 로그하지 마십시오.
스키마 접근을 설명하기 위해, EasyF는 탐색 전 활성화와 할당된 인증을 구분합니다. 평이한 워크플로우는 문서화된 요청 형식에 고유한 위치를 부여합니다.
지원을 통해 활성화
EasyF에 구축 중인 내용, API 호출 빈도, 중요한 공급자를 알려주세요. 검토는 허용된 작업을 결정한 후, 보안 다이제스트만 저장하면서 자격 증명을 한 번 공개합니다.
활성화 요청하기 키는 테넌트 범위가 있고 취소 가능하며 연락처 양식을 통해 발급됩니다.익명 스크립트는 다운로더 작업을 실행할 수 없습니다.