---
title: 셀피 조회
description: GET /v1/processes/{id}/selfie — 프로세스에서 캡처한 셀피, 조회 가능 기간, 오류를 설명합니다.
canonical: https://developer.unico.io/ko/human-plugin/api-reference/get-selfie
locale: ko
generated_by: markdown-export
---

# 셀피 조회

생성 시 Human Plugin이 반환한 id로 프로세스에서 캡처한 셀피를 조회합니다.

`GET /v1/processes/{id}/selfie`

`id`는 생성 응답에 담긴 UUID입니다. 요청에는 본문도 쿼리 파라미터도 없습니다.

```bash
curl http://human-plugin.internal:8080/v1/processes/17e4546e-6109-4240-8c0b-4ba98474a104/selfie
```

Human Plugin은 셀피 사본을 보관하지 않으므로, 호출할 때마다 셀피를 다시 가져옵니다.

## 응답

이미지를 base64로 인코딩한 값과 해당 타입을 담아 `200 OK`를 반환합니다.

```json
{
  "fileContents": "/9j/4AAQSkZJRgABAQAAAQABAAD…",
  "contentType": "image/jpeg"
}
```

파일로 저장하려면 다음과 같이 합니다.

```bash
curl -s http://human-plugin.internal:8080/v1/processes/17e4546e-6109-4240-8c0b-4ba98474a104/selfie \
  | jq -r .fileContents | base64 -d > selfie.jpg
```

## 조회 가능 여부

- 셀피가 있었던 프로세스에만 셀피가 존재합니다. `imageBase64`로 전송했거나 해당 인물에게서 캡처한 경우입니다.
- Journey 플로우에서는 해당 인물이 셀피를 캡처한 이후에야 셀피가 존재합니다. 그 전에는 `process state must be finished`로 시작하는 `message`와 함께 `400`으로 요청이 거부됩니다. 먼저 [프로세스를 조회](/ko/human-plugin/api-reference/get-process)하고, `PROCESS_STATE_FINISHED`가 되면 셀피를 가져오세요.
- 셀피는 프로세스가 완료된 후 제한된 기간 동안만 조회할 수 있습니다. 나중에 필요하다면 이 응답에서 직접 저장해 두세요.

## 이미지 취급

셀피는 생체 정보입니다. Human Plugin은 셀피를 저장하거나 로그로 남기지 않으며, 응답은 `Cache-Control: no-store`와 함께 전송됩니다. 사용 중인 게이트웨이와 애플리케이션 로그에도 셀피가 남지 않도록 하세요.

## 오류

| Status | `message` | 의미 |
| --- | --- | --- |
| 400 | `process state must be finished…` | 캡처가 아직 완료되지 않은 Journey 프로세스입니다. 먼저 프로세스를 조회하세요 |
| 404 | `PROCESS_NOT_FOUND` | id가 UUID가 아니거나 알 수 없는 id입니다 |
| 404 | `SELFIE_NOT_FOUND` | 프로세스에 셀피가 없습니다. 캡처가 없었거나, 시작 전에 실패했거나, 셀피를 더 이상 조회할 수 없습니다 |
| 4xx | 거부 사유 `message` | 요청이 거부되었습니다. 사유는 `message`와 `details`에 있습니다 |
| 502 | `UPSTREAM_UNAVAILABLE` | 제한 시간 내에 셀피를 가져오지 못했습니다. 나중에 다시 시도하세요 |
| 503 | `DATABASE_UNAVAILABLE` | 데이터베이스에 장애가 발생했습니다. 나중에 다시 시도하세요 |

조회는 재시도해도 안전합니다. `404`는 재시도해도 바뀌지 않습니다.

## 다음

[프로세스 수명 주기](/ko/human-plugin/api-reference/process-lifecycle)