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

# X API v2로 사용자의 Post 및 언급 탐색하기

> user Post timeline과 user mention timeline 엔드포인트를 사용하면 사용자가 작성했거나 사용자를 언급하는 공개 Post를 개발자가 조회할 수 있습니다.

## 소개

[recent search 엔드포인트](/x-api/posts/search/introduction)는 지난 7일 동안 게시된 Post만 가져올 수 있는 반면, user Post timeline과 user mention timeline 엔드포인트는 인증된 사용자에 대해(사용자 ID 사용) 지난 7일보다 오래된 Post와 언급을 조회할 수 있습니다. 개발자는 이러한 엔드포인트를 사용하여 사용자의 timeline 또는 언급에서 Post의 주제, 엔티티, 감정을 연구할 수 있습니다. 이 튜토리얼에서는 user Tweet timeline과 user mention timeline 엔드포인트를 사용하여 사용자의 Post와 언급을 탐색하는 방법을 보여드립니다.

## 사전 요건

* user Tweet timeline 및 user mention timeline 엔드포인트를 사용하려면 유효한 개발자 계정이 있어야 합니다.
* 또한 [Project](/resources/fundamentals/developer-apps)가 생성되어 있어야 합니다.
* 개발자 계정에 [가입](https://developer.x.com/en/portal/petition/essential/basic-info)하고, [새로운 Developer Console 경험](https://developer.x.com/en/portal/opt-in.html)을 활성화해야 합니다.
* [Developer Console](/resources/fundamentals/developer-portal)에서 생성한 [Project](/resources/fundamentals/developer-apps)에 연결된 개발자 App의 활성 키와 토큰으로 액세스할 수 있습니다.
* [X Developer Console](/resources/fundamentals/developer-portal)의 App에서 얻은 Bearer Token.
* 승인된 개발자 계정이 없다면 [신청](https://developer.x.com/en/apply-for-access)할 수 있습니다.

## 승인된 개발자 계정

아직 없다면 [신청](https://developer.x.com/en/apply-for-access)할 수 있습니다.

## Project 생성 및 App 연결

[Developer Console](https://developer.x.com/en/portal/dashboard)에서 새 App 생성을 클릭합니다.

<Frame>
  <img src="https://mintcdn.com/x-preview/l3xgUBEfGdfuOen0/images/projects.png.twimg.1920.png?fit=max&auto=format&n=l3xgUBEfGdfuOen0&q=85&s=9264e7d6cb9aa2dbeeaabbd836302d74" width="880" height="397" data-path="images/projects.png.twimg.1920.png" />
</Frame>

이름을 지정하고, 적절한 사용 사례를 선택한 후 Project 설명을 제공합니다. 다음으로 새 App을 만들거나 기존 [App](/resources/fundamentals/developer-apps)을 연결할 수 있습니다(App은 X API에 HTTP 요청을 보내는 데 필요한 API 키를 담는 컨테이너입니다).

<Frame>
  <img src="https://mintcdn.com/x-preview/s_D1jGy1nLdDmXkd/images/add-your-app.png.twimg.1920.png?fit=max&auto=format&n=s_D1jGy1nLdDmXkd&q=85&s=c659b4cfe02d956faad3021a7beb2c9d" width="880" height="569" data-path="images/add-your-app.png.twimg.1920.png" />
</Frame>

'create a new App instead'를 클릭하고 App의 이름을 지정하여 새 App을 만듭니다.

<Frame>
  <img src="https://mintcdn.com/x-preview/l3xgUBEfGdfuOen0/images/last-step-name-your-app.png.twimg.1920.png?fit=max&auto=format&n=l3xgUBEfGdfuOen0&q=85&s=c62db12722d6c1048d2522c76498a9db" width="880" height="558" data-path="images/last-step-name-your-app.png.twimg.1920.png" />
</Frame>

완료를 클릭하면 API 키와 bearer 토큰이 발급되며, 이를 사용하여 X API v2의 새 엔드포인트에 연결할 수 있습니다.

<Frame>
  <img src="https://mintcdn.com/x-preview/l3xgUBEfGdfuOen0/images/here-are-your-keys.png.twimg.1920.png?fit=max&auto=format&n=l3xgUBEfGdfuOen0&q=85&s=7c7385eed29546412c31c659ef6490c4" width="880" height="897" data-path="images/here-are-your-keys.png.twimg.1920.png" />
</Frame>

API key, API secret key, Bearer token 옆의 (+)를 클릭하고 이 값을 로컬 컴퓨터의 안전한 곳에 복사하세요. 다음 단계에서 API 호출을 하는 데 필요합니다.

참고: 위 스크린샷의 키는 숨겨져 있지만, 자신의 Developer Console에서는 API key, API secret key, Bearer token의 실제 값을 볼 수 있습니다.

## user Tweet timeline 및 user mention timeline 엔드포인트에서 사용할 사용자 ID를 가져오는 방법

user Tweet timeline 및 user mention timeline 엔드포인트는 사용자 ID를 사용하여 Post를 가져올 수 있게 합니다. 사용자 이름에서 사용자 ID를 얻으려면 새 [user lookup endpoint v2](/x-api/users/lookup/quickstart/user-lookup)를 사용할 수 있습니다. USER\_NAME을 원하는 사용자 이름으로, XXXX를 위에서 얻은 bearer 토큰으로 바꾸세요.

```bash theme={null}
  curl --request GET 'https://api.x.com/2/users/by/username/USER_NAME --header 'Authorization: Bearer XXXXXX'
```

아래와 같이 응답에서 사용자 ID를 볼 수 있습니다:

```json theme={null}
{
   "data": {
       "id": "2244994945",
       "name": "Developers",
       "username": "XDevelopers"
   }
}
```

## user Tweet timeline 및 user mention timeline 엔드포인트에 연결하기

사용자의 user Tweet timeline을 가져오려면 터미널에서 다음 curl 명령을 실행하세요(USER\_ID를 원하는 사용자 ID로, XXXX를 위에서 얻은 bearer 토큰으로 반드시 바꾸세요).

```bash theme={null}
curl --request GET 'https://api.x.com/2/users/USER_ID/tweets' --header 'Authorization: Bearer XXXXXX'
```

이러한 요청에 대한 JSON 응답에는 기본적으로 Post의 ID와 텍스트가 포함된 것을 확인할 수 있습니다(예시는 아래 참고).

```yaml theme={null}
{
   "id": "1334200897081987072",
   "text": "👀 If you are new to the X API v2, check out this step-by-step guide to making your first request https://t.co/4rZqThpSbp"
}
```

응답에 추가 필드(사용자 정보, context annotation과 같은 추가 Tweet 필드 등)를 포함하려면 응답에서 해당 필드를 명시적으로 지정해야 합니다. [필드와 확장 사용 가이드](/x-api/fundamentals/data-dictionary/reference#how-to-use-fields-and-expansions)에서 방법을 알아보세요.

원하는 프로그래밍 언어를 사용해 이러한 Post를 가져올 수도 있습니다. user Tweet timeline 및 user mention timeline 엔드포인트에 대한 Python, Node (JavaScript), Java, Ruby 샘플 코드는 [Github 저장소](https://github.com/xdevplatform/Twitter-API-v2-sample-code)에서 확인하세요.

## 사용자의 Post 탐색하기

user Tweet timeline 및 user mention timeline 엔드포인트를 사용하여 Post를 가져오는 방법을 알게 되면 그들의 Post를 탐색할 수 있습니다. 예를 들어 사용자의 언급에 있는 일반적인 명명된 엔티티를 식별하려면 다음을 수행할 수 있습니다:

API 요청에서 Tweet 응답에 context\_annotations 객체가 반환되도록 지정합니다:

```bash theme={null}
curl --request GET 'https://api.x.com/2/users/USER_ID/mentions?tweet.fields=context_annotations' --header 'Authorization: Bearer XXXXXX'
```

응답에서 언급에 명명된 엔티티가 있는지 확인할 수 있습니다. 예시는 다음과 같습니다:

```json theme={null}
{
   "domain": {
       "id": "47",
       "name": "Brand",
       "description": "Brands and Companies"
   },
   "entity": {
       "id": "783214",
       "name": "X"
   }
}
```

언급에 어떤 인기 엔티티가 나타나는지 확인하고 싶다면, 언급의 각 Tweet을 파싱하여 인기 엔티티의 수를 집계할 수 있습니다.

미디어가 포함된 timeline의 모든 Post에 대한 미리보기 이미지 URL을 탐색하려면 다음을 수행할 수 있습니다:

API 요청에서 tweet.media 필드에 preview\_image\_url을, 그리고 attachments.media\_keys expansions을 지정합니다.

```bash theme={null}
curl --request GET 'https://api.x.com/2/users/2244994945/mentions?max_results=100&media.fields=preview_image_url&expansions=attachments.media_keys' --header 'Authorization: Bearer XXXXXX'
```

응답에서 다음과 같이 includes 객체에 preview\_image\_url이 표시됩니다:

```json theme={null}
{
   "includes": {
       "media": [
           {
               "media_key": "16_1334657439640121344",
               "preview_image_url": "https://pbs.twimg.com/tweet_video_thumb/EoWn3rqU8AAtFWL.jpg",
               "type": "animated_gif"
           }
       ]
   }
}
```

사용자의 Post를 탐색하는 방법을 이해했다면, 다른 API 및 서비스를 사용하여 해당 Post로 더 많은 작업을 수행할 수 있습니다. 아래는 user Tweet timeline과 user mention timeline 엔드포인트를 사용할 때 유용한 리소스입니다.

## 리소스

* [user Tweet timeline 및 user mention timeline 엔드포인트](/x-api/posts/timelines/introduction)에 대해 자세히 알아보세요.
* 무엇을 사용할 수 있는지 자세히 알아보려면 [user Tweet timeline 엔드포인트에 대한 API 참조](/x-api/users/get-posts)를 확인하세요.
* 무엇을 사용할 수 있는지 자세히 알아보려면 [user mention timeline 엔드포인트에 대한 API 참조](/x-api/users/get-mentions)를 확인하세요.
* 다른 [튜토리얼](/tutorials)을 읽고 영감을 얻으세요.
