> ## Documentation Index
> Fetch the complete documentation index at: https://www.octoparse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# 업스트림 호출 상세

> 업스트림 호출 하나 전체.

**`GET`** `https://api-datahub.octoparse.com/v1/runs/{run_id}/upstream-calls/{call_id}`

인증: API 키 필요. App 작성자(게시자)만. 그 외 `404`.

트레일 하나 전체 캡처: 요청(query/body)과 응답 body. 과대 body는 기록 시 잘림.

## 요청

### 경로 파라미터

<ParamField path="run_id" type="string" required>
  디버그 실행 ID.
</ParamField>

<ParamField path="call_id" type="integer" required>
  목록 `items[].call_id`의 트레일 id.
</ParamField>

### 요청 예시

```bash theme={null}
curl \
  -H "Authorization: Bearer $OCTOPARSE_API_KEY" \
  "https://api-datahub.octoparse.com/v1/runs/run_c62bc0fb8df2/upstream-calls/1"
```

## 응답

### 200 성공

```json theme={null}
{
  "data": {
    "call_id": 0,
    "attempt": 0,
    "seq": 0,
    "stage": "string",
    "method": "string",
    "url": "string",
    "status_code": 0,
    "error": "string",
    "duration_ms": 0,
    "response_truncated": false,
    "created_at": "string",
    "request": {},
    "response_body": "string"
  }
}
```

페이로드는 `data`로 감쌉니다. 필드:

<ResponseField name="call_id" type="integer" required>
  —
</ResponseField>

<ResponseField name="attempt" type="integer" required>
  —
</ResponseField>

<ResponseField name="seq" type="integer" required>
  —
</ResponseField>

<ResponseField name="stage" type="string" required>
  —
</ResponseField>

<ResponseField name="method" type="string" required>
  —
</ResponseField>

<ResponseField name="url" type="string" required>
  —
</ResponseField>

<ResponseField name="status_code" type="integer">
  —
</ResponseField>

<ResponseField name="error" type="string">
  —
</ResponseField>

<ResponseField name="duration_ms" type="integer">
  —
</ResponseField>

<ResponseField name="response_truncated" type="boolean">
  응답 body가 기록 시 잘렸는지.
</ResponseField>

<ResponseField name="created_at" type="string" required>
  —
</ResponseField>

<ResponseField name="request" type="object">
  요청 내용(query / headers / body, 민감한 값은 마스킹됨).
</ResponseField>

<ResponseField name="response_body" type="string">
  업스트림 응답 본문.
</ResponseField>

### 오류

| HTTP | `code`                     | `category`  | 설명                                                    |
| ---- | -------------------------- | ----------- | ----------------------------------------------------- |
| 401  | `unauthorized`             | `forbidden` | API 키 누락 또는 무효.                                       |
| 404  | `upstream-calls-not-found` | `not_found` | 업스트림 트레일은 디버그 실행(`run_kind=test`)만. 프로덕션·타인·없음은 이 오류. |

오류 응답은 `{"error": {code, category, message, retryable}}`입니다. <a href="/docs/ko/datahub/api/reference/introduction#errors">오류</a> 참고.

## 클라이언트 라이브러리

Python / JavaScript SDK는 아직 이 엔드포인트를 감싸지 않습니다. REST를 직접 호출하세요.
