---
title: "Kimlik Doğrulama"
description: "Twexapi için Bearer token kimlik doğrulama — Cursor, Claude Code, GitHub Copilot, ChatGPT ve AI kodlama araçlarıyla kullanın. Dakikalar içinde başlayın."
---

## **API Kimlik Doğrulama**

Twexapi, tüm API isteklerini korumak için Bearer token kimlik doğrulama kullanır. Her istek, X-Api-Scraper endpointlerine erişmek için geçerli bir API anahtarı içermelidir.

## API Anahtarı Almak

API anahtarınızı almak için aşağıdaki adımları izleyin:

1. [Twexapi Dashboard](https://twexapi.io/dashboard) 'na giriş yapın
2. Anahtarınız, panonun ana sayfasında belirgin bir şekilde görüntülenir
3. Anahtarınızı güvenli bir şekilde kopyalayın - tüm API istekleriniz için ihtiyacınız olacaktır

:::tip
API anahtarınızı güvenli tutun ve asla müşteri tarafı kodu veya açık kaynak depolarda paylaşmayın.
:::

---

## API Anahtarınızı Kullanma

API anahtarınızı her istekte `Authorization` başlığına ekleyerek kullanın. Bearer token formatını kullanın:

**Gerekli Başlık:**

```bash
Authorization: Bearer YOUR_API_KEY
```

---

## Ortam Değişkeni

SDK'lar ve CLI, aynı kimlik bilgilerini ortam değişkenlerinden okur:

```bash
export X_API_SCRAPER_KEY="YOUR_API_KEY"
```

Ham HTTP isteklerinde `Authorization: Bearer YOUR_API_KEY` kullanın. Oluşturulan SDK'lar `bearer_auth` veya benzeri seçenekleri kabul eder — her bir [SDK sayfasını](/sdks) görüntüleyin.

---

## CLI ile Kimlik Doğrulama

Resmi CLI'yi yükleyin, API anahtarınızı adlandırılmış bir uygulama profiline kaydedin ve komutları çalıştırarak şifreleri şelleye gömmeyin:

```bash
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
```

Tam komut referansı: [CLI](/sdks/cli).

---

## MCP ile Kimlik Doğrulama

AI araçlarını `https://api.twexapi.io/mcp` adresine API anahtarınızla bağlayın:

```json
{
  "headers": {
    "x-api-key": "YOUR_API_KEY"
  }
}
```

Bazı istemciler `Authorization: Bearer YOUR_API_KEY` yerine `x-api-key` kullanabilir. [MCP Sunucusu](/mcp/overview) sayfasında Cursor, Claude Code, Codex CLI ve diğer istemci yapılandırmaları hakkında daha fazla bilgi bulunmaktadır.

---

## AI Kodlama Araçları ile Kimlik Doğrulama

**Cursor**, **Claude Code**, **GitHub Copilot**, **ChatGPT**, **Cline**, **Windsurf**, **Codex**, **Gemini CLI**, **Continue**, **Roo Code** ve diğer AI asistanlarını TwexAPI'nin Bearer tokenlerini doğru bir şekilde bağlamak için TwexAPI becerisini yükleyin. Kurulum rehberleri ve CLI seçenekleri [entegrasyon merkezi](https://twexapi.io/integrations) 'nda bulunmaktadır.

:::tip
API anahtarınızı [dashboard](https://twexapi.io/dashboard) 'dan kopyalayın, `X_API_SCRAPER_KEY` veya bir `.env` dosyasına saklayın ve asistanınıza `Authorization: Bearer YOUR_API_KEY` bağlantısını kurmasını isteyin — beceri, cURL, Python, JavaScript ve CLI için kimlik doğrulama kalıbını kapsar.
:::

```bash
npx skills add twexapi-dev/x-api-scraper-cli
```

Cursor, GitHub Copilot, Claude Code, ChatGPT, Continue, Roo Code veya desteklenen herhangi bir araçta, "my `.env` file'dan Twexapi auth ayarlayın", "bu API istemcisine Bearer kimlik doğrulaması ekleyin" veya "API anahtarım ile test istekleri oluşturun" gibi talimatlar deneyin.

---

## Yazımlar ve BYOC (Kendi Çerezinizi Getirin)

Tüm açık okuma uç noktaları (arama, kullanıcı profilleri, twitler, takipçiler, zincirler, trendler) **sıfır çerez veya Twitter giriş kimlik bilgileri** gerektirirken, yazımlar **Kendi Çerezinizi Getirin (BYOC)** modeli altında çalışır.

### Desteklenen Yazımlar
- Tweetler ve Zincir Paylaşımları Oluşturma (`POST /twitter/tweets/create`, `POST /v3/twitter/tweets/create_thread`)
- Beğenme ve Yeniden Paylaşma (`POST /twitter/tweets/{tweet_id}/like`, `POST /twitter/tweets/{tweet_id}/retweet`)
- Doğrudan Mesaj Gönderme (`POST /v3/twitter/send_dm`)
- Hesap Takibi (`POST /twitter/user/follow`)

### Yetkili Çalıştırma ve Sıfır Kalıplama Güvenliği

<CardGroup cols={2}>
  <Card title="Kullanıcıya Ait Yetkilendirme" icon="user-check">
    Kendi Twitter hesabınızın `auth_token` veya çerez dizesini geçirirsiniz. TwexAPI, size adına devre dışı bırakılmış bir durumsuz çalışma kapısı olarak hareket eder.
  </Card>
  <Card title="Sıfır Kimlik Bilgisi Kalıplama" icon="shield-halved">
    Oturum tokenleri, belirli HTTP isteklerinin çalıştırılması sırasında geçici olarak sunucu belleğinde tutulur. Disk veya veritabanlarına asla kaydedilmez.
  </Card>
  <Card title="Tam Hukuki ve İçerik Koruma" icon="scale">
    Eylemler, açıkça yetkilendirilmiş hesap kimlik bilgileri ile çalıştırıldığı için, takımınız tam telif hakkı sahibidir ve üçüncü taraf taklit sorumlulukları ortadan kalkar.
  </Card>
  <Card title="Paylaşılabilir Hesap Kontaminasyonu Olmaması" icon="lock">
    TwexAPI, yazımlar için asla biriktirilmiş, geri dönüştürülmüş veya paylaşılan ateşli hesaplar kullanmaz. Eylemleriniz tamamen kendi hesaplarınıza ayrılmıştır.
  </Card>
</CardGroup>

### Yazımlar İçin Kimlik Doğrulama Yapmak

`Authorization: Bearer YOUR_API_KEY` başlığına eklenmiş `auth_token` veya çerez dizesi ile birlikte, hesabınızın doğrudan talep yüküne ekleyin:

```bash
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"
  }'
```

:::tip auth_token Çıkarma
Hesabınızın `auth_token`'unu almak için, tarayıcınızın Geliştirici Araçlarını (`F12`), **Uygulama > Depolama > Çerezler > https://x.com**'a gidin ve `auth_token` çerezinin değerini kopyalayın.
:::

---

## Uygulama Örnekleri

Farklı programlama dillerinde isteklerinizi nasıl kimlik doğrulayacağınızı gösteren pratik örnekler:

:::note
`YOUR_API_KEY` yerini dashboard'dan aldığınız gerçek API anahtarınızla değiştirin. Tüm örnekler, kullanıcı bilgilerini gösterme amaçlıdır.
:::

### cURL

Test ve hızlı API keşfi için mükemmel:

```bash
curl --request GET \
  --url 'https://api.twexapi.io/twitter/users?usernames=elonmusk' \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json'
```

### Python

Popüler `requests` kütüphanesini kullanarak:

```python
import requests

# API uç noktası ve parametreleri
url = "https://api.twexapi.io/twitter/users"
params = {"usernames": "elonmusk"}

# Kimlik doğrulama başlığı
headers = {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
}

# İstek yapın
response = requests.get(url, headers=headers, params=params)

# Yanıt işleyin
if response.status_code == 200:
    data = response.json()
    print(data)
else:
    print(f"Hata: {response.status_code} - {response.text}")
```

### JavaScript (Node.js/Browser)

Modern fetch API'si ile:

```javascript
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 hata! durum: ${response.status}`);
    }
    
    const data = await response.json();
    console.log(data);
  } catch (error) {
    console.error('İstek başarısız oldu:', error);
  }
};

fetchUserData();
```

### Java

Unirest ile basit HTTP istekleri:

```java
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("Hata: " + response.getStatus() + " - " + response.getBody());
            }
        } catch (Exception e) {
            System.err.println("İstek başarısız oldu: " + e.getMessage());
        }
    }
}
```

## **En İyi Uygulamalar ve Sonraki Adımlar**

- **Ortam Değişkenleri**: API anahtarınızı `X_API_SCRAPER_KEY` veya gizli yöneticilerde saklayın, asla kodun içine yazmayın
- **Şeffaf Faturalama**: [Fiyatlandırma ve Faturalama Kılavuzu](/guides/pricing) 'nda pay-per-request mikro ücretleri gözden geçirin
- **Hata Kurtarma**: `4xx`/`5xx` yanıtlarını ele alın — [Hata İşleme](/guides/error-handling) sayfasını görüntüleyin
- **Hız Sınırları**: `429` yanıtlarına geri çekin — [Hız Sınırları](/guides/rate-limits) sayfasını görüntüleyin
- **Sıfır Çerezli Açık Okuma**: Self-hosted Scraper ile karşılaştırarak neden login çerezlerine ihtiyaç duyulmadığını [Self-Hosted Scraper vs TwexAPI](/comparison/scraper-vs-api) ve [Nitter Alternatifleri](/comparison/nitter-alternatives) sayfalarında anlayın
- **Arquitetura Değerlendirmesi**: TwexAPI'yi resmi X API ile karşılaştırın (Pay-as-you-go kaynak başına karşı pay-per-request) — [Resmi X API Karşılaştırması](/comparison/official-x-api)
- **HTTPS Sadece**: Tüm istekler HTTPS kullanmalıdır
