---
title: "API belgeleri ve CLI: Node, Python, Go ve PHP | SingleFax"
description: "SingleFax REST API ve npm CLI ile sunucu uygulamanızdan faks gönderin. Ön ödemeli bakiye, API anahtarları, OpenAPI ve curl, Node, Python, Go, PHP örnekleri."
canonical_url: "https://singlefax.com/tr/gelistiriciler"
meta:
  "og:description": "SingleFax REST API ve npm CLI ile sunucu uygulamanızdan faks gönderin. Ön ödemeli bakiye, API anahtarları, OpenAPI ve curl, Node, Python, Go, PHP örnekleri."
  "og:image": "https://singlefax.com/_og/s/o_1756bf21f8ae648b.jpeg"
  "og:image:alt": "API belgeleri ve CLI: Node, Python, Go ve PHP"
  "og:image:height": "630"
  "og:image:type": image/jpeg
  "og:image:width": "1200"
  "og:title": "Sunucu uygulamanızdan faks gönderin"
---

> Index of every page on this site: [llms.txt](https://singlefax.com/llms.txt)

[singlefax](https://singlefax.com/tr)

[Faks gönder ve al](https://singlefax.com/tr/faks-gonder) [Şirketler için](https://singlefax.com/tr/sirketler-icin)Çözümler [Fiyatlar](https://singlefax.com/tr/fiyatlar) [Blog](https://singlefax.com/tr/blog)

<details>

<summary>Dil</summary>



<a href="https://singlefax.com/developers">English</a><a href="https://singlefax.com/de/entwickler">Deutsch</a><a href="https://singlefax.com/fr/developpeurs">Français</a><a href="https://singlefax.com/es/desarrolladores">Español</a><a href="https://singlefax.com/it/sviluppatori">Italiano</a><a href="https://singlefax.com/zh-tw/%E9%96%8B%E7%99%BC%E4%BA%BA%E5%93%A1">繁體中文</a><a href="https://singlefax.com/pt-br/desenvolvedores">Português do Brasil</a><a href="https://singlefax.com/ko/%EA%B0%9C%EB%B0%9C%EC%9E%90">한국어</a><a href="https://singlefax.com/ja/%E9%96%8B%E7%99%BA%E8%80%85%E5%90%91%E3%81%91">日本語</a><a href="https://singlefax.com/ar/%D8%A7%D9%84%D9%85%D8%B7%D9%88%D8%B1%D9%88%D9%86">العربية</a>

</details>

[Giriş yap](https://singlefax.com/tr/giris)

REST · CLI · OpenAPI

# SingleFax API belgeleri ve CLI

API anahtarı ve ön ödemeli bakiye. npm’de resmi CLI veya curl, Node, Python, Go, PHP için doğrudan kullanılabilir REST örnekleri. Sohbet uygulamaları MCP kullanmalıdır.

[API anahtarı oluştur](https://singlefax.com/tr/giris?redirect=/dashboard/api-keys) [npm CLI](https://www.npmjs.com/package/@singlefax/cli) [OpenAPI](https://singlefax.com/openapi.json)

## CLI

`npx @singlefax/cli send FILE --to +E164`; özgün Word, Excel, PDF veya görsel dosyasıyla kullanın, önceden PDF’ye dönüştürmeyin.

## REST

Bearer `sf_live_…` ve `Idempotency-Key` ile `POST /api/v1/faxes`.

## Sohbet MCP’si

Cursor, Claude, Codex, ChatGPT. API anahtarı yerine OAuth kullanır. [MCP kur](https://singlefax.com/tr/yapay-zeka-ajanlari).

## Hızlı başlangıç

1. [API anahtarları](https://singlefax.com/tr/giris?redirect=/dashboard/api-keys) üzerinden kapsamı sınırlı anahtar oluşturun ( `fax:send`, `fax:read`, `inbox:read`, `credits:read`).
2. Panelden veya `npx @singlefax/cli credits buy` üzerinden ön ödemeli bakiye yükleyin.
3. Aşağıdaki CLI ile veya `POST /api/v1/faxes` üzerinden gönderin.

Temel URL `https://api.singlefax.com` (`https://singlefax.com` üzerinde aynı yollar). `sf_test_` anahtarları gerçek gönderim yapamaz. Anahtarları tarayıcıya koymayın.

## CLI

Node 20+. Yapılandırma: `SINGLEFAX_API_KEY` veya `~/.config/singlefax/config.json`. Özgün dosyayı iletin (Word, Excel, PowerPoint, PDF, metin veya görsel). Önceden PDF’ye dönüştürmeyin. MCP OAuth veya Stripe MPP için değildir.

terminalKopyala

```
export SINGLEFAX_API_KEY=sf_live_…

npx @singlefax/cli send ./document.docx --to +14155552671
npx @singlefax/cli send ./document.pdf --to +14155552671 --wait --json
```

quote, status, creditsKopyala

```
npx @singlefax/cli quote --to +14155552671 --pages 12
npx @singlefax/cli status <id>
npx @singlefax/cli list
npx @singlefax/cli numbers
npx @singlefax/cli numbers buy
npx @singlefax/cli credits
npx @singlefax/cli credits buy --dollars 20
```

## Faks gönder

Tek istek: base64 belge ve hedef. PDF, Word, Excel, PowerPoint, metin veya görsel. `Idempotency-Key` zorunludur. Aynı anahtarı farklı gövdeyle kullanmak 409 döndürür.

curlJavaScriptPythonGoPHP

terminalKopyala

```
PDF_B64="$(base64 < document.pdf | tr -d '\n')"

curl -sS https://api.singlefax.com/api/v1/faxes \
  -H "Authorization: Bearer $SINGLEFAX_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d "{\"to\":\"+14155552671\",\"base64\":\"$PDF_B64\"}"
```

send.mjsKopyala

```
import { readFile } from 'node:fs/promises'
import { randomUUID } from 'node:crypto'

const api = 'https://api.singlefax.com'
const key = process.env.SINGLEFAX_API_KEY
const pdf = await readFile('./document.pdf')

const res = await fetch(`${api}/api/v1/faxes`, {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${key}`,
    'Content-Type': 'application/json',
    'Idempotency-Key': randomUUID(),
  },
  body: JSON.stringify({
    to: '+14155552671',
    base64: pdf.toString('base64'),
  }),
})
console.log(await res.json())
```

send.pyKopyala

```
import base64, json, os, urllib.request, uuid
from pathlib import Path

API = "https://api.singlefax.com"
KEY = os.environ["SINGLEFAX_API_KEY"]
pdf = Path("document.pdf").read_bytes()

req = urllib.request.Request(
    f"{API}/api/v1/faxes",
    data=json.dumps({
        "to": "+14155552671",
        "base64": base64.b64encode(pdf).decode(),
    }).encode(),
    headers={
        "Authorization": f"Bearer {KEY}",
        "Content-Type": "application/json",
        "Idempotency-Key": str(uuid.uuid4()),
    },
    method="POST",
)
with urllib.request.urlopen(req) as res:
    print(res.read().decode())
```

send.goKopyala

```
package main

import (
	"bytes"
	"encoding/base64"
	"encoding/json"
	"fmt"
	"io"
	"net/http"
	"os"
)

func main() {
	pdf, err := os.ReadFile("document.pdf")
	if err != nil {
		panic(err)
	}
	body, _ := json.Marshal(map[string]string{
		"to":     "+14155552671",
		"base64": base64.StdEncoding.EncodeToString(pdf),
	})
	req, _ := http.NewRequest("POST", "https://api.singlefax.com/api/v1/faxes", bytes.NewReader(body))
	req.Header.Set("Authorization", "Bearer "+os.Getenv("SINGLEFAX_API_KEY"))
	req.Header.Set("Content-Type", "application/json")
	req.Header.Set("Idempotency-Key", "send-document-1")
	res, err := http.DefaultClient.Do(req)
	if err != nil {
		panic(err)
	}
	defer res.Body.Close()
	out, _ := io.ReadAll(res.Body)
	fmt.Println(res.Status, string(out))
}
```

send.phpKopyala

```
<?php
$pdf = base64_encode(file_get_contents('document.pdf'));
$ch = curl_init('https://api.singlefax.com/api/v1/faxes');
curl_setopt_array($ch, [
  CURLOPT_POST => true,
  CURLOPT_HTTPHEADER => [
    'Authorization: Bearer ' . getenv('SINGLEFAX_API_KEY'),
    'Content-Type: application/json',
    'Idempotency-Key: send-document-1',
  ],
  CURLOPT_POSTFIELDS => json_encode(['to' => '+14155552671', 'base64' => $pdf]),
  CURLOPT_RETURNTRANSFER => true,
]);
echo curl_exec($ch);
```

## Büyük dosyalar: önce yükleyin, sonra gönderin

CLI’nin yaptığı işlemler: yükleme belirteci oluşturmak, baytları PUT ile yüklemek, ardından `uploadToken` ile göndermek. PUT da Bearer belirteci gerektirir. Büyük dosyayı JSON’a gömmek yerine bu yöntemi kullanın. Önceden PDF’ye dönüştürmeyin.

curlJavaScriptPythonGoPHP

terminalKopyala

```
UPLOAD=$(curl -sS https://api.singlefax.com/api/v1/uploads \
  -H "Authorization: Bearer $SINGLEFAX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"contentType":"application/pdf"}')

UPLOAD_URL=$(printf '%s' "$UPLOAD" | python3 -c "import json,sys; print(json.load(sys.stdin)['uploadUrl'])")
TOKEN=$(printf '%s' "$UPLOAD" | python3 -c "import json,sys; print(json.load(sys.stdin)['uploadToken'])")

curl -sS -X PUT "$UPLOAD_URL" \
  -H "Authorization: Bearer $SINGLEFAX_API_KEY" \
  -H "Content-Type: application/pdf" \
  --data-binary @document.pdf

curl -sS https://api.singlefax.com/api/v1/faxes \
  -H "Authorization: Bearer $SINGLEFAX_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d "{\"to\":\"+14155552671\",\"uploadToken\":\"$TOKEN\"}"
```

upload-send.mjsKopyala

```
import { readFile } from 'node:fs/promises'
import { randomUUID } from 'node:crypto'

const api = 'https://api.singlefax.com'
const key = process.env.SINGLEFAX_API_KEY
const auth = { Authorization: `Bearer ${key}` }
const pdf = await readFile('./document.pdf')

const upload = await fetch(`${api}/api/v1/uploads`, {
  method: 'POST',
  headers: { ...auth, 'Content-Type': 'application/json' },
  body: JSON.stringify({ contentType: 'application/pdf', maxBytes: pdf.byteLength }),
}).then((r) => r.json())

await fetch(upload.uploadUrl, {
  method: 'PUT',
  headers: { ...auth, 'Content-Type': 'application/pdf' },
  body: pdf,
})

const fax = await fetch(`${api}/api/v1/faxes`, {
  method: 'POST',
  headers: {
    ...auth,
    'Content-Type': 'application/json',
    'Idempotency-Key': randomUUID(),
  },
  body: JSON.stringify({ to: '+14155552671', uploadToken: upload.uploadToken }),
}).then((r) => r.json())

console.log(fax)
```

upload\_send.pyKopyala

```
import json, os, urllib.request, uuid
from pathlib import Path

API = "https://api.singlefax.com"
KEY = os.environ["SINGLEFAX_API_KEY"]
pdf = Path("document.pdf").read_bytes()

def request(url, *, data=None, method="GET", headers=None, content_type="application/json"):
    req = urllib.request.Request(
        url,
        data=data,
        headers={
            "Authorization": f"Bearer {KEY}",
            "Content-Type": content_type,
            **(headers or {}),
        },
        method=method,
    )
    with urllib.request.urlopen(req) as res:
        return res.read()

upload = json.loads(request(
    f"{API}/api/v1/uploads",
    method="POST",
    data=json.dumps({"contentType": "application/pdf", "maxBytes": len(pdf)}).encode(),
))
request(upload["uploadUrl"], method="PUT", data=pdf, content_type="application/pdf")
fax = request(
    f"{API}/api/v1/faxes",
    method="POST",
    data=json.dumps({"to": "+14155552671", "uploadToken": upload["uploadToken"]}).encode(),
    headers={"Idempotency-Key": str(uuid.uuid4())},
)
print(fax.decode())
```

upload\_send.goKopyala

```
package main

import (
	"bytes"
	"encoding/json"
	"fmt"
	"io"
	"net/http"
	"os"
)

func main() {
	key := os.Getenv("SINGLEFAX_API_KEY")
	pdf, err := os.ReadFile("document.pdf")
	if err != nil {
		panic(err)
	}

	upBody, _ := json.Marshal(map[string]any{"contentType": "application/pdf", "maxBytes": len(pdf)})
	upReq, _ := http.NewRequest("POST", "https://api.singlefax.com/api/v1/uploads", bytes.NewReader(upBody))
	upReq.Header.Set("Authorization", "Bearer "+key)
	upReq.Header.Set("Content-Type", "application/json")
	upRes, err := http.DefaultClient.Do(upReq)
	if err != nil {
		panic(err)
	}
	defer upRes.Body.Close()
	var upload struct {
		UploadToken string `json:"uploadToken"`
		UploadUrl   string `json:"uploadUrl"`
	}
	json.NewDecoder(upRes.Body).Decode(&upload)

	put, _ := http.NewRequest("PUT", upload.UploadUrl, bytes.NewReader(pdf))
	put.Header.Set("Authorization", "Bearer "+key)
	put.Header.Set("Content-Type", "application/pdf")
	if _, err := http.DefaultClient.Do(put); err != nil {
		panic(err)
	}

	sendBody, _ := json.Marshal(map[string]string{"to": "+14155552671", "uploadToken": upload.UploadToken})
	faxReq, _ := http.NewRequest("POST", "https://api.singlefax.com/api/v1/faxes", bytes.NewReader(sendBody))
	faxReq.Header.Set("Authorization", "Bearer "+key)
	faxReq.Header.Set("Content-Type", "application/json")
	faxReq.Header.Set("Idempotency-Key", "send-document-1")
	faxRes, err := http.DefaultClient.Do(faxReq)
	if err != nil {
		panic(err)
	}
	defer faxRes.Body.Close()
	out, _ := io.ReadAll(faxRes.Body)
	fmt.Println(string(out))
}
```

upload-send.phpKopyala

```
<?php
$key = getenv('SINGLEFAX_API_KEY');
$pdf = file_get_contents('document.pdf');

$ch = curl_init('https://api.singlefax.com/api/v1/uploads');
curl_setopt_array($ch, [
  CURLOPT_POST => true,
  CURLOPT_HTTPHEADER => [
    "Authorization: Bearer $key",
    'Content-Type: application/json',
  ],
  CURLOPT_POSTFIELDS => json_encode(['contentType' => 'application/pdf', 'maxBytes' => strlen($pdf)]),
  CURLOPT_RETURNTRANSFER => true,
]);
$upload = json_decode(curl_exec($ch), true);

$ch = curl_init($upload['uploadUrl']);
curl_setopt_array($ch, [
  CURLOPT_CUSTOMREQUEST => 'PUT',
  CURLOPT_HTTPHEADER => [
    "Authorization: Bearer $key",
    'Content-Type: application/pdf',
  ],
  CURLOPT_POSTFIELDS => $pdf,
  CURLOPT_RETURNTRANSFER => true,
]);
curl_exec($ch);

$ch = curl_init('https://api.singlefax.com/api/v1/faxes');
curl_setopt_array($ch, [
  CURLOPT_POST => true,
  CURLOPT_HTTPHEADER => [
    "Authorization: Bearer $key",
    'Content-Type: application/json',
    'Idempotency-Key: send-document-1',
  ],
  CURLOPT_POSTFIELDS => json_encode(['to' => '+14155552671', 'uploadToken' => $upload['uploadToken']]),
  CURLOPT_RETURNTRANSFER => true,
]);
echo curl_exec($ch);
```

## REST başvuru belgeleri

| Yöntem | Yol | Kimlik doğrulama | Notlar |
| --- | --- | --- | --- |
| POST | /api/v1/faxes | fax:send | Idempotency-Key required. JSON { to, base64 \| uploadToken } or multipart file. |
| GET | /api/v1/faxes | fax:read | List. Query limit, offset. |
| GET | /api/v1/faxes/{id} | fax:read | Status including latest delivery attempt. |
| POST | /api/v1/faxes/quote | fax:read | { to, pages? \| base64? }, quote without charging. |
| POST | /api/v1/uploads | fax:send | Returns uploadToken + uploadUrl. PUT the bytes, then send with uploadToken. |
| GET | /api/v1/credits | credits:read | Prepaid balance. |
| POST | /api/v1/credits/checkout | credits:checkout | { amountCents }. Stripe Checkout for a credit pack. |
| GET | /api/v1/received-faxes | inbox:read | Inbound inbox list. Query limit, cursor. No transcripts in list. |
| GET | /api/v1/received-faxes/{id} | inbox:read | Inbound detail with bounded transcript slice. HIPAA Secure content is omitted. |
| GET | /api/v1/numbers | fax:read | Active fax numbers. |
| POST | /api/v1/numbers | credits:checkout | { sku?, country?, state? }, default inbound\_30day. Returns checkoutUrl + reserved phoneNumber. |
| GET | /api/v1/skus | public | Catalog. Same shape as MCP list\_skus. |
| POST | /api/v1/checkout | credits:checkout | { sku }, credit\_pack, inbound, subscriptions, lifetime. |

Tam şemalar: [openapi.json](https://singlefax.com/openapi.json). Geriye uyumsuz değişiklikler: [sürüm politikası](https://singlefax.com/tr/surum-yonetimi) (90 günlük Sunset süresi). Bu bakiye API’sinde HTTP 402 yetersiz bakiye anlamına gelir. MPP 402 yalnızca `POST /api/v1/machine/faxes` içindir.

## Webhook’lar

İmzalı `fax.queued`, `fax.delivered`, `fax.failed` ve `credits.low_balance` olayları. `SingleFax-Signature` (`t=,v1=`) doğrulamasını ham gövde üzerinde yapın. `timestamp.payload` için HMAC-SHA256 kullanılır. [paneldeki webhook’lar](https://singlefax.com/tr/giris?redirect=/dashboard/webhooks) bölümünden uç nokta ekleyin.

JavaScriptPython

verify.mjsKopyala

```
import { createHmac, timingSafeEqual } from 'node:crypto'

export function verifySingleFaxSignature(rawBody, signatureHeader, secret, toleranceSeconds = 300) {
  const parts = Object.fromEntries(signatureHeader.split(',').map((kv) => kv.split('=')))
  const timestamp = Number(parts.t)
  if (!Number.isFinite(timestamp) || !parts.v1) return false
  if (Math.abs(Math.floor(Date.now() / 1000) - timestamp) > toleranceSeconds) return false
  const expected = createHmac('sha256', secret).update(`${timestamp}.${rawBody}`).digest('hex')
  const a = Buffer.from(parts.v1)
  const b = Buffer.from(expected)
  return a.length === b.length && timingSafeEqual(a, b)
}
```

verify.pyKopyala

```
import hashlib, hmac, time

def verify_singlefax_signature(payload: bytes, header: str, secret: str, tolerance: int = 300) -> bool:
    parts = dict(p.split("=", 1) for p in header.split(","))
    timestamp = int(parts["t"])
    if abs(int(time.time()) - timestamp) > tolerance:
        return False
    expected = hmac.new(
        secret.encode(),
        f"{timestamp}.".encode() + payload,
        hashlib.sha256,
    ).hexdigest()
    return hmac.compare_digest(expected, parts["v1"])
```

## Kısıtlamalar

- API anahtarlarını sunucuda tutun. `sf_live_` anahtarını web sayfasına gömmeyin.
- PHI göndermeyin. Kapsam dahilindeki kuruluşlar web sitesinde elektronik BAA ile HIPAA Secure modunu kullanır.
- Geçerli E.164 hedefleri. PDF, Word, Excel, PowerPoint, RTF, düz metin ve görseller; MIME türleri için OpenAPI’ye bakın. Önceden PDF’ye dönüştürmeyin; gönderimden önce biz dönüştürürüz.
- Sohbet MCP’si ve Stripe MPP: [/agents](https://singlefax.com/tr/yapay-zeka-ajanlari), [mpp.md](https://singlefax.com/mpp.md) ve [MPP ve Instant Checkout karşılaştırması](https://singlefax.com/blog/stripe-machine-payments-protocol).

## Sık sorulan sorular

CLI, REST veya MCP mi?

Göndermeden önce bakiye yüklemem gerekir mi?

sf\_test\_ anahtarlarını kullanabilir miyim?

Resmi SDK var mı?

Bu hizmet HIPAA kapsamında mı?

## Makinece okunabilir belgeler

Tarayıcı robotları ve kodlama ajanları için düz Markdown ve OpenAPI. Bu sayfayla aynı bilgileri içerir.

[Kimlik doğrulama rehberi](https://singlefax.com/tr/kimlik-dogrulama) [OpenAPI başvuru belgeleri](https://singlefax.com/tr/openapi) [developers.md](https://singlefax.com/developers.md) [openapi.json](https://singlefax.com/openapi.json) [auth.md](https://singlefax.com/auth.md) [llms.txt](https://singlefax.com/llms.txt) [MCP / ajanlar](https://singlefax.com/tr/yapay-zeka-ajanlari) [MPP ve Instant Checkout karşılaştırması](https://singlefax.com/blog/stripe-machine-payments-protocol) [versioning.md](https://singlefax.com/versioning.md)

[singlefax](https://singlefax.com/tr)

Tek seferlik gönderin. İhtiyaç duyduğunuzda faks alın.

[![Google Play'den edinin](https://singlefax.com/images/google-play-badge.png)](https://play.google.com/store/apps/details?id=com.monocube.singlefax) [Chrome’a ekle](https://chromewebstore.google.com/detail/singlefax-fax-a-document/ojpmpilgkmjcfebhpkdmmjlkbcifkkej) [LinkedIn'de SingleFax](https://www.linkedin.com/company/singlefax/) [Facebook'ta SingleFax](https://www.facebook.com/singlefax) [Instagram'da SingleFax](https://www.instagram.com/singlefax.app) [Threads'de SingleFax](https://www.threads.com/@singlefax.app) [YouTube'da SingleFax](https://www.youtube.com/@singlefax) [GitHub'da SingleFax](https://github.com/SingleFax)

## Faks hizmetleri

- [Faks gönder](https://singlefax.com/tr/faks-gonder?type=send)
- [Faks al](https://singlefax.com/tr/faks-gonder?type=receive)
- [24 saatlik ücretsiz numara](https://singlefax.com/tr/ucretsiz-faks-numarasi)
- [Ömür boyu numara](https://singlefax.com/tr/omur-boyu-faks-numarasi)
- [Numara taşıma](https://singlefax.com/tr/numara-tasima)
- [Faks testi](https://singlefax.com/tr/test-faks-numarasi)
- [Kurumsal planlar](https://singlefax.com/tr/sirketler-icin)
- [HIPAA Secure](https://singlefax.com/tr/hipaa-faksi)
- [İnternet faksı](https://singlefax.com/tr/internet-faksi)
- [E-postayla faks](https://singlefax.com/tr/epostayla-faks)
- [WhatsApp ile faks](https://singlefax.com/tr/whatsapp-faks)

## IRS'ye form gönderimi

- [Tüm IRS formları](https://singlefax.com/tr/irs-bildirimleri)
- [EIN · SS-4 Formu](https://singlefax.com/tr/ein-basvurusu)
- [5472 Formu](https://singlefax.com/tr/5472-formu-gonder)
- [7004 Formu](https://singlefax.com/tr/7004-formu-gonder)
- [2553 Formu](https://singlefax.com/tr/2553-formu-gonder)
- [2848 Formu](https://singlefax.com/tr/2848-formu-gonder)
- [4506-T Formu](https://singlefax.com/tr/4506-t-formu-gonder)
- [8821 Formu](https://singlefax.com/tr/8821-formu-gonder)
- [8802 Formu](https://singlefax.com/tr/8802-formu-gonder)
- [8655 Formu](https://singlefax.com/tr/8655-formu-gonder)
- [3911 Formu](https://singlefax.com/tr/3911-formu-gonder)
- [8233 Formu](https://singlefax.com/tr/8233-formu-gonder)
- [NY POA-1](https://singlefax.com/tr/ny-poa-1-formu-gonder)

## Araçlar ve kaynaklar

- [Ücretsiz faks araçları](https://singlefax.com/tr/ucretsiz-faks-araclari)
- [Faks için PDF hazırla](https://singlefax.com/tr/faks-hazirla)
- [Yazdırılabilir test sayfası](https://singlefax.com/tr/faks-test-sayfasi)
- [Faks kapak sayfaları](https://singlefax.com/tr/faks-kapak-sayfasi)
- [Mobil uygulama](https://singlefax.com/tr/mobil-uygulama)
- [Chrome uzantısı](https://singlefax.com/tr/chrome-uzantisi)
- [Geliştiriciler](https://singlefax.com/tr/gelistiriciler)
- [Yapay zekâ faks ajanları](https://singlefax.com/tr/yapay-zeka-ajanlari)
- [Sürüm yönetimi](https://singlefax.com/tr/surum-yonetimi)
- [ABD Temsilciler Meclisi faks rehberi](https://singlefax.com/tr/faks-rehberi/temsilciler-meclisi)
- [ABD Senatosu faks rehberi](https://singlefax.com/tr/faks-rehberi/senato)
- [ABD valilikleri faks rehberi](https://singlefax.com/tr/faks-rehberi/valiler)

## SingleFax

- [Fiyatlar](https://singlefax.com/tr/fiyatlar)
- [Blog](https://singlefax.com/tr/blog)
- [Hakkımızda](https://singlefax.com/tr/hakkimizda)
- [İletişim](https://singlefax.com/tr/iletisim)
- [Destek](https://singlefax.com/tr/destek)

© 2026 SingleFax

[Gizlilik](https://singlefax.com/tr/gizlilik-politikasi) [Koşullar](https://singlefax.com/tr/kullanim-kosullari) [İadeler](https://singlefax.com/tr/iade-politikasi) [Kötüye kullanım bildir](https://singlefax.com/tr/kotuye-kullanim-bildir)

```json
{"@context":"https://schema.org","@graph":[{"@id":"https://singlefax.com/tr#website","@type":"WebSite","description":"SingleFax ile telefonunuzdan veya bilgisayarınızdan ihtiyaç duyduğunuzda faks gönderip alabilirsiniz. Kaydolmanız veya hesap oluşturmanız gerekmez.","inLanguage":"tr","name":"SingleFax – Tek seferlik faks gönderin ve alın","url":"https://singlefax.com/tr","translationOfWork":{"@id":"https://singlefax.com/#website"}},{"@id":"https://singlefax.com/tr/gelistiriciler#webpage","description":"SingleFax REST API ve npm CLI ile sunucu uygulamanızdan faks gönderin. Ön ödemeli bakiye, API anahtarları, OpenAPI ve curl, Node, Python, Go, PHP örnekleri.","name":"API belgeleri ve CLI: Node, Python, Go ve PHP","url":"https://singlefax.com/tr/gelistiriciler","@type":["WebPage","FAQPage"],"breadcrumb":{"@id":"https://singlefax.com/tr/gelistiriciler#breadcrumb"},"isPartOf":{"@id":"https://singlefax.com/tr#website"},"mainEntity":[{"@id":"https://singlefax.com/tr/gelistiriciler#/schema/question/1"},{"@id":"https://singlefax.com/tr/gelistiriciler#/schema/question/2"},{"@id":"https://singlefax.com/tr/gelistiriciler#/schema/question/3"},{"@id":"https://singlefax.com/tr/gelistiriciler#/schema/question/4"},{"@id":"https://singlefax.com/tr/gelistiriciler#/schema/question/5"}],"potentialAction":[{"@type":"ReadAction","target":["https://singlefax.com/tr/gelistiriciler"]}]},{"@id":"https://singlefax.com/tr/gelistiriciler#breadcrumb","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","name":"Ana sayfa","item":"https://singlefax.com/tr","position":1},{"@type":"ListItem","name":"Geliştiriciler","item":"https://singlefax.com/tr/gelistiriciler","position":2}]},{"@id":"https://singlefax.com/tr/gelistiriciler#/schema/question/1","@type":"Question","inLanguage":"tr","name":"CLI, REST veya MCP mi?","acceptedAnswer":{"@type":"Answer","text":"Kendi sunucu uygulamalarınızda API anahtarı ve ön ödemeli bakiyeyle npm CLI veya REST kullanın. Özgün Word, Excel, PDF veya görseli iletin; önceden PDF’ye dönüştürmeyin. Sohbet uygulamaları (Cursor, Claude, Codex, ChatGPT) /agents üzerindeki MCP’yi kullanmalıdır. Stripe Shared Payment Token veya Tempo USDC cüzdanı olan otonom ajanlar MPP (HTTP 402), /agents ve /blog/stripe-machine-payments-protocol yolunu kullanır."}},{"@id":"https://singlefax.com/tr/gelistiriciler#/schema/question/2","@type":"Question","inLanguage":"tr","name":"Göndermeden önce bakiye yüklemem gerekir mi?","acceptedAnswer":{"@type":"Answer","text":"API anahtarlı gönderimler için evet. Anahtar oluşturun, panelden veya POST /api/v1/credits/checkout üzerinden bakiye paketi alın ve gönderin. /api/v1/faxes üzerindeki HTTP 402 yetersiz bakiye demektir; MPP ödeme istemi değildir."}},{"@id":"https://singlefax.com/tr/gelistiriciler#/schema/question/3","@type":"Question","inLanguage":"tr","name":"sf_test_ anahtarlarını kullanabilir miyim?","acceptedAnswer":{"@type":"Answer","text":"Test anahtarları gerçek faks gönderemez. Teslim için sf_live_ kullanın. Anahtarları sunucuda tutun; tarayıcıya veya mobil uygulamaya koymayın."}},{"@id":"https://singlefax.com/tr/gelistiriciler#/schema/question/4","@type":"Question","inLanguage":"tr","name":"Resmi SDK var mı?","acceptedAnswer":{"@type":"Answer","text":"Resmi paket npm üzerindeki @singlefax/cli aracıdır. Python, Go ve PHP örnekleri standart HTTP istemcileri kullanır. Ayrı Python, Go veya Ruby SDK paketleri yoktur. İstemci üretmek için /openapi.json dosyasını OpenAPI araçlarıyla kullanın."}},{"@id":"https://singlefax.com/tr/gelistiriciler#/schema/question/5","@type":"Question","inLanguage":"tr","name":"Bu hizmet HIPAA kapsamında mı?","acceptedAnswer":{"@type":"Answer","text":"Hayır. Genel API, CLI, MCP veya MPP üzerinden PHI göndermeyin. Kapsam dahilindeki kuruluşlar web sitesindeki elektronik BAA içeren HIPAA Secure modunu kullanmalıdır."}}]}
```