인증
Twexapi의 Bearer 토큰 인증 — Cursor, Claude Code, GitHub Copilot, ChatGPT, AI 코드 작성 도구와 함께 사용하세요. 몇 분 만에 시작하세요.
API 인증
Twexapi는 모든 API 요청을 보호하기 위해 Bearer 토큰 인증을 사용합니다. 각 요청은 Authorization 헤더에 유효한 API 키를 포함하여 우리의 엔드포인트에 접근할 수 있습니다.
API 키 얻기
다음 단계를 따라 API 키를 얻으세요:
- Twexapi 대시보드에 로그인하세요
- 대시보드 홈페이지에 명확하게 표시된 독특한 API 키가 있습니다
- 키를 안전하게 복사하세요 - 모든 API 요청에 사용할 필요가 있습니다
API 키 사용
API 키를 Bearer 토큰 형식으로 사용하여 각 요청의 Authorization 헤더에 포함하세요:
필수 헤더:
Authorization: Bearer YOUR_API_KEY
환경 변수
SDK와 CLI는 동일한 인증 정보를 환경 변수에서 읽습니다:
export X_API_SCRAPER_KEY="YOUR_API_KEY"
원시 HTTP 요청에서는 Authorization: Bearer YOUR_API_KEY를 사용합니다. 생성된 SDK는 bearer_auth 또는 유사한 옵션을 받아들이며, 각 SDK 페이지를 참조하세요.
CLI로 인증
공식 CLI를 설치하고 API 키를 명명된 앱 프로필로 저장하여 시ェ일러 히스토리에 비밀을 담지 않고 명령을 실행하세요:
npm install -g @twexapi-dev/x-api-scraper-cli
export X_API_SCRAPER_KEY="YOUR_API_KEY"
x-api-scraper auth apps add --name prod --api-key "YOUR_API_KEY"
x-api-scraper auth apps use prod
x-api-scraper --app prod about elonmusk
전체 명령어 참조: CLI.
MCP로 인증
AI 에이전트를 https://api.twexapi.io/mcp에 API 키로 연결하세요:
{
"headers": {
"x-api-key": "YOUR_API_KEY"
}
}
일부 클라이언트는 Authorization: Bearer YOUR_API_KEY를 대신 받아들입니다. Cursor, Claude Code, Codex CLI, 그리고 다른 클라이언트 설정에 대해 MCP 서버를 참조하세요.
AI 코드 작성 도구로 인증
Cursor, Claude Code, GitHub Copilot, ChatGPT, Cline, Windsurf, Codex, Gemini CLI, Continue, Roo Code, 그리고 다른 AI 비서를 인식하도록 TwexAPI 스킬을 설치하세요. 설정 가이드와 CLI 옵션은 통합 허브에 있습니다.
npx skills add twexapi-dev/x-api-scraper-cli
Cursor, GitHub Copilot, Claude Code, ChatGPT, Continue, Roo Code, 또는 지원되는 다른 에이전트에서 “내 .env 파일에서 Twexapi 인증을 설정하다”, “이 API 클라이언트에 Bearer 인증을 추가하다”, 또는 “내 API 키로 테스트 요청을 생성하다”와 같은 명령을 시도하세요.
작업 작성 및 BYOC (Bring Your Own Cookie)
모든 공개 읽기 엔드포인트 (검색, 사용자 프로필, 트윗, 팔로워, 스레드, 트렌드)는 쿠키나 트위터 로그인 정보가 필요하지 않지만, 작성 작업은 Bring Your Own Cookie (BYOC) 모델을 사용합니다.
지원되는 작성 작업
- 트윗 및 스레드 포스트 생성 (
POST /twitter/tweets/create,POST /v3/twitter/tweets/create_thread) - 좋아요 및 리트윗 (
POST /twitter/tweets/{tweet_id}/like,POST /twitter/tweets/{tweet_id}/retweet) - 직접 메시지 전송 (
POST /v3/twitter/send_dm) - 계정 팔로우 (
POST /twitter/user/follow)
위임된 실행 및 제로-리테이션 보안
사용자 소유 인증
TwexAPI는 사용자의 auth_token 또는 쿠키 문자열을 전달합니다. TwexAPI는 사용자 대신 상태无关한 실행 게이트웨이로 strictly 행동합니다.
제로 인증 보관
세션 토큰은 해당 HTTP 요청 실행 중에 strict하게 서버 메모리에 보관됩니다. 디스크나 데이터베이스에 저장되지 않습니다.
전체 법적 및 컨텐츠 보호
작업은 명시적으로 인증된 계정 자격 증명으로 실행되므로, 팀은 전체 저작권 소유를 유지하고, 제3자 위장 책임을 제거할 수 있습니다.
공유 계정 오염 없음
TwexAPI는 작성 작업에 대한 풀러드, 재활용된, 또는 공유된 랜더 계정을 사용하지 않습니다. 작업은 사용자의 계정에 완전히 고립됩니다.
작성 요청 인증 방법
Authorization: Bearer YOUR_API_KEY 헤더와 함께 사용자 계정의 auth_token 또는 쿠키 문자열을 요청 본문에 직접 제공하세요:
curl -X POST "https://api.twexapi.io/twitter/tweets/create" \
-H "Authorization: Bearer YOUR_TWEXAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"tweet_text": "Hello world from an automated pipeline!",
"cookie": "auth_token=YOUR_TWITTER_AUTH_TOKEN; ct0=YOUR_CT0_TOKEN"
}'
구현 예제
다음은 다양한 프로그래밍 언어에서 요청을 인증하는 실제 예제입니다:
cURL
테스트 및 빠른 API 탐색에 적합합니다:
curl --request GET \
--url 'https://api.twexapi.io/twitter/users?usernames=elonmusk' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json'
Python
인기 있는 requests 라이브러리를 사용합니다:
import requests
# API 엔드포인트 및 매개변수
url = "https://api.twexapi.io/twitter/users"
params = {"usernames": "elonmusk"}
# 인증 헤더
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
}
# 요청을 보냅니다
response = requests.get(url, headers=headers, params=params)
# 응답을 처리합니다
if response.status_code == 200:
data = response.json()
print(data)
else:
print(f"Error: {response.status_code} - {response.text}")
JavaScript (Node.js/Browser)
모던 fetch API 구현:
const fetchUserData = async () => {
const options = {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
}
};
try {
const response = await fetch(
'https://api.twexapi.io/twitter/users?usernames=elonmusk',
options
);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
console.log(data);
} catch (error) {
console.error('Request failed:', error);
}
};
fetchUserData();
Java
Unirest를 사용하여 간소화된 HTTP 요청:
import kong.unirest.HttpResponse;
import kong.unirest.Unirest;
public class TwitterApiExample {
public static void main(String[] args) {
try {
HttpResponse<String> response = Unirest
.get("https://api.twexapi.io/twitter/users?usernames=elonmusk")
.header("Authorization", "Bearer YOUR_API_KEY")
.header("Content-Type", "application/json")
.asString();
if (response.getStatus() == 200) {
System.out.println(response.getBody());
} else {
System.err.println("Error: " + response.getStatus() + " - " + response.getBody());
}
} catch (Exception e) {
System.err.println("Request failed: " + e.getMessage());
}
}
}
최고의 관행 및 다음 단계
- 환경 변수: API 키를
X_API_SCRAPER_KEY또는 시크릿 관리자에 저장하고, 코드에 직접 코드를 작성하지 마세요 - 투명한 요금제: 가격 및 요금 지침에서 요금을 검토하세요
- 에러 복구:
4xx/5xx응답을 처리 — 에러 처리를 참조하세요 - 速率 제한:
429에 대처하기 위해 백오프 — 速率 제한를 참조하세요 - 제로 쿠키 공개 읽기: 서버 사이드 스크레이퍼 vs TwexAPI와 Nitter 대안에서 공개 읽기가 쿠키가 필요하지 않는 이유를 이해하세요
- 아키텍처 평가: TwexAPI와 공식 X API(자원별 대비 요청별 요금제)를 비교하세요 — 공식 X API 비교
- HTTPS 만 사용: 모든 요청은 HTTPS를 사용하여 보안을 유지해야 합니다