Lovable한국어 문서
Projects

정확한 HTTPS origin 하나에서 iframe으로 로드할 수 있는 1시간짜리 미리보기 URL을 만듭니다.

임베드 URL 만들기

플랜: Business 이상

스코프: projects:write

정확한 HTTPS origin 하나에서 iframe으로 로드할 수 있는 미리보기 URL을 만듭니다. URL은 1시간 동안 유효합니다. 방문자는 Lovable 로그인이 필요 없습니다. 이 URL은 프로젝트의 빌드된 미리보기를 보여 주며 에디터나 게시된 앱에 대한 접근 권한을 부여하지 않습니다.

OpenAPI

항목
MethodPOST
Path/v1/projects/{project_id}/embed-url
Operation IDcreateEmbedUrl
Source spechttps://api.lovable.dev/v1/openapi.yaml
Local snapshotYAML 스냅샷 (SHA-256: f6d037d61eadfb5757a0f7cf0fb2b0c0eefd3bc5604e87f3a540fe1ed1302301)
POST /v1/projects/{project_id}/embed-url

인증

Lovable-API-Key: lov_your-api-key 또는 Authorization: Bearer <key>를 보냅니다. 이 엔드포인트는 projects:write 스코프가 필요합니다.

매개변수

이름위치필수타입설명
project_idpathstring프로젝트 ID입니다.
Lovable-Versionheader아니요string제공받을 안정 API 버전입니다. YYYY-MM-DD 날짜 형식으로 보냅니다. 생략하면 현재 가장 오래된 지원 안정 버전인 2026-09-11이 사용됩니다.
Lovable-Betaheader아니요string안정 버전 위에 활성화할 베타 리비전 문자열입니다. 여러 개는 쉼표로 구분합니다.

요청 본문

요청 본문은 필수입니다. Content-Type은 application/json입니다. 본문은 CreateEmbedURLRequest 스키마를 사용합니다.

필드타입필수설명
parent_originstring미리보기를 임베드할 수 있는 HTTPS origin입니다. 소문자 hostname을 사용해야 하며 port, trailing slash, path, query, fragment를 포함할 수 없습니다. 미리보기 URL은 이 origin의 iframe에서만 로드됩니다.

예시

curl --request POST \
  --url 'https://api.lovable.dev/v1/projects/project-id/embed-url' \
  --header 'Lovable-API-Key: lov_your-api-key' \
  --header 'Lovable-Version: 2026-09-11' \
  --header 'Content-Type: application/json' \
  --data '{"parent_origin": "https://acme.com"}'
const response = await fetch("https://api.lovable.dev/v1/projects/project-id/embed-url", {
  method: "POST",
  headers: {
    "Lovable-API-Key": process.env.LOVABLE_API_KEY ?? "lov_your-api-key",
    "Lovable-Version": "2026-09-11",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "parent_origin": "https://acme.com",
  }),
});
if (!response.ok) {
  throw new Error(`Lovable API ${response.status}: ${await response.text()}`);
}
console.log(await response.json());

응답

상태본문설명
200CreateEmbedURLResponse임베드 URL이 만들어졌습니다. 토큰은 1시간 뒤 만료됩니다.
400ErrorResponse요청 본문 또는 매개변수 형식이 잘못되었거나 검증에 실패했습니다.
401ErrorResponseAPI 키, 세션 토큰 또는 OAuth access token이 없거나 유효하지 않습니다.
402ErrorResponsePublic API 접근에는 Business 이상 플랜이 필요합니다.
403ErrorResponse키 또는 호출자에게 필요한 스코프나 권한이 없습니다.
404ErrorResponse프로젝트가 존재하지 않거나 삭제되었거나 인증된 클라이언트가 접근할 수 없습니다.
406ErrorResponseAccept 헤더가 이 엔드포인트가 생성하는 모든 미디어 타입을 제외합니다.
429ErrorResponse요청이 너무 많습니다. Retry-After가 있으면 해당 간격 뒤에 재시도합니다.
503ErrorResponse서비스를 일시적으로 사용할 수 없거나 처리 기한이 만료되었습니다. 변이가 완료될 수 있으므로 재시도 전에 리소스 상태를 확인하세요.
defaultErrorResponse오류입니다. 응답 본문은 표준 오류 envelope을 사용하며 status는 HTTP 상태 코드와 같고 type은 machine-readable 오류 코드입니다.

응답 헤더

모든 응답에는 상황에 따라 다음 공통 헤더가 포함될 수 있습니다: Lovable-Version, Lovable-Beta, X-Request-Id, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-Lovable-Unknown-Query-Params, X-Lovable-Unknown-Query-Params-Omitted. X-Lovable-Unknown-Query-Params는 이 작업이 선언하지 않은 query parameter가 있을 때 URL escape된 이름을 최대 20개까지 쉼표로 제공하며, 20개를 넘으면 X-Lovable-Unknown-Query-Params-Omitted가 누락된 개수(minimum: 1)를 제공합니다. 401 응답은 string인 WWW-Authenticate를, 429 응답은 integer인 Retry-After를 포함합니다. Retry-Afterminimum: 1입니다. X-RateLimit-Reset은 지연 시간이 아니라 Unix timestamp 초 단위입니다.

스키마

CreateEmbedURLResponse

필드타입필수설명
embed_urlstringparent_origin의 iframe에서 사용할 미리보기 URL입니다. expires_at까지 Lovable 로그인 없이 빌드된 미리보기를 볼 수 있습니다.
expires_atstring, date-time임베드 URL 토큰이 만료되어 미리보기를 더 이상 로드하지 않는 시각입니다.

ErrorResponse

공통 오류 응답입니다.

필드타입필수설명
detail`string \null`
errors`array \null`
props`object \null`
request_idstringX-Request-Id 응답 헤더에서 반복되는 이 요청의 식별자입니다.
statusinteger본문에 반복되는 HTTP 상태 코드입니다.
titlestring사람이 읽을 수 있는 오류 요약입니다.
typestring안정적인 machine-readable 오류 유형입니다.

원본에 포함된 이 작업의 OpenAPI 스냅샷은 YAML 스냅샷 (SHA-256: f6d037d61eadfb5757a0f7cf0fb2b0c0eefd3bc5604e87f3a540fe1ed1302301)로 보존했습니다. 최신 전체 OpenAPI 계약은 https://api.lovable.dev/v1/openapi.yaml에서 확인할 수 있습니다.

On this page