---
title: "MPP Hızlı Başlangıç"
description: "Tempo USDC ve mppx istemcisi ile TwexAPI gelişmiş arama sayfası için ödeme yapın."
---

# MPP Hızlı Başlangıç

TwexAPI API anahtarı olmadan kullanım başına gelişmiş arama isteği yapın. Bu kılavuz HTTP 402 zorlamasını yanıtlamak, Tempo USDC ile ödemek ve isteği otomatik yeniden denemek için `mppx` istemcisini kullanır.

## Adım 1: İstemci bağımlılıklarını kurun

```bash
npm install mppx viem
```

`mppx` MPP zorlamalarını ve ödemelerini yönetir. `viem` Tempo özel anahtarını istemcinin kullandığı cüzdan hesabına dönüştürür.

## Adım 2: Tempo cüzdanı oluşturun ve fonlayın

Yerel bir MPP hesabı oluşturun, ardından özel anahtarını dışa aktarın:

```bash
mppx account create
mppx account export
```

Yazdırılan adresi Tempo üzerinde USDC ile fonlayın. Dışa aktarılan `0x...` özel anahtarını ortam değişkeninde saklayın:

```bash
export TEMPO_PRIVATE_KEY="0x..."
```

:::warning
  Özel anahtarı asla commit etmeyin. Gizli yöneticinizde veya kabuk ortamında tutun; cüzdanı yalnızca entegrasyonunuzun harcamasına izin verilen tutarla fonlayın.
:::

## Adım 3: MPP isteği yapın

`mpp-search.ts` oluşturun:

```ts
import { Mppx, tempo } from "mppx/client";
import { privateKeyToAccount } from "viem/accounts";

Mppx.create({
  methods: [
    tempo({
      account: privateKeyToAccount(
        process.env.TEMPO_PRIVATE_KEY as `0x${string}`,
      ),
    }),
  ],
});

const response = await fetch(
  "https://api.twexapi.io/twitter/advanced_search/page",
  {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      searchTerms: ["openai"],
      sortBy: "Latest",
    }),
  },
);

if (!response.ok) {
  throw new Error(`TwexAPI request failed: ${response.status}`);
}

console.log(await response.json());
```

`Mppx.create()` `fetch`'i MPP `402 Payment Required` zorlamasını işleyecek şekilde yapılandırır. Uygun bir uç nokta için sunucunun sağladığı Tempo teklifini öder ve aynı isteği ödeme kimlik bilgisiyle yeniden dener. Yerleşimi kaydetmeniz gerekiyorsa `response.headers.get("Payment-Receipt")` değerini inceleyin.

Önceki sayfadan devam ederken JSON gövdesine `next_cursor` iletin:

```json
{
  "searchTerms": ["openai"],
  "sortBy": "Latest",
  "next_cursor": "cursor-from-the-previous-response"
}
```

## Adım 4: Ham HTTP akışını uygulayın

`mppx` olmadan önce arama sayfasını normal isteyin:

```bash
curl -i --request POST 'https://api.twexapi.io/twitter/advanced_search/page' \
  --header 'Content-Type: application/json' \
  --data '{"searchTerms":["openai"],"sortBy":"Latest"}'
```

`402` durumunda `WWW-Authenticate: Payment` zorlamasını uyumlu bir Tempo MPP uygulamasıyla işleyin. Ardından oluşturulan kimlik bilgisiyle tam isteği yeniden deneyin:

```bash
curl -i --request POST 'https://api.twexapi.io/twitter/advanced_search/page' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Payment eyJjaGFsbGVuZ2UiOnsi...' \
  --data '{"searchTerms":["openai"],"sortBy":"Latest"}'
```

Başarılı yanıt TwexAPI'nin olağan JSON zarfını ve `Payment-Receipt` yanıt başlığını içerir. Uygulamanız mutabakat gerektiriyorsa makbuzları kendi istek kayıtlarınızla birlikte saklayın.

## Sonraki adımlar

- [Machine Payments Protocol](/mpp/machine-payments-protocol) — desteklenen işlem, ödeme sırası ve API anahtarı karşılaştırmasını inceleyin.
- [API overview](/api-reference/overview) — API anahtarı kimlik doğrulamasına ve tam uç nokta kataloğuna göz atın.
