---
title: "Alan adı ve DNS — API başvurusu"
description: "Kayıt, transfer, yenileme, ad sunucuları, DNS kayıtları, DNSSEC, kilit, EPP kodu, gizlilik, WHOIS kişileri, yönlendirme (çekirdek WISECP müşteri API's"
url: https://www.gyrohosting.com/developers/tr/api/domains-and-dns.html
language: tr
openapi: https://www.gyrohosting.com/developers/openapi.json
api_version: 2.30.0
---

# Alan adı ve DNS

Kayıt, transfer, yenileme, ad sunucuları, DNS kayıtları, DNSSEC, kilit, EPP kodu, gizlilik, WHOIS kişileri, yönlendirme (çekirdek WISECP müşteri API'si).

Base URL: `https://www.gyrohosting.com/api/v1/client` · OpenAPI: https://www.gyrohosting.com/developers/openapi.json


## GET /domains/tlds

**Uzantı Fiyatlarını Okuma** · operationId `coreGetTlds` · scope `Domains/GetTlds` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetTlds.json

Satıştaki uzantıları süreleri ve fiyatlarıyla döndürür. — cüzdan para birimi


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `tld` | query | string | Tek bir uzantı. Listeyi daraltır ve süre başına fiyat tablosunu ekler. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: domains_not_offered

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains/tlds' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain tld list
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains/tlds", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/tlds", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## POST /domains/check

**Alan Adının Boş Olup Olmadığını Sorma** · operationId `coreCheckDomain` · scope `Domains/CheckDomain` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreCheckDomain.json

Bir alan adının alınabilirliğini canlı sorar. — kayıt kuruluşuna sorar


### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `domain` (zorunlu) | string | Sorulacak tam alan adı. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **422**: domain_check_throttled, domain_invalid, domain_required, domains_not_offered, tld_not_offered

### Örnekler

```bash
curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/domains/check' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"domain": "string"}'
```
```bash
gyro domain check --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.post("https://www.gyrohosting.com/api/v1/client/domains/check", headers=h, json={"domain": "string"}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/check", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"domain": "string"}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## POST /domains/register

**Alan Adı Kaydetme** · operationId `coreRegisterDomain` · scope `Domains/RegisterDomain` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreRegisterDomain.json

**Para harcar / fatura oluşturur.** Para kuralları (AK-40): gövdede `"confirm": true`, `Idempotency-Key` başlığı, yalnız bakiye (kayıtlı kart yok), hesap başına günlük ücretli işlem sınırı (varsayılan 50, hesap/bayi bazında değiştirilebilir, 00:00 TR'de sıfırlanır). Yeni bir alan adı sipariş eder ve tahsil eder. — bakiye ya da kayıtlı kart


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `Idempotency-Key` (zorunlu) | header | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `terms` (zorunlu) | boolean | Şartların kabulü. Doğru gönderilmelidir. |
| `domain` (zorunlu) | string | Tam alan adı. |
| `years` | integer | Kayıt süresi. Uzantının penceresi içinde olmalı; özel fiyatlı adlar ne gönderilirse gönderilsin bir yıl kaydedilir. |
| `accept_premium` | boolean | Özel fiyatlı adın fiyatını kabul. Böyle bir adda zorunludur. |
| `addons` | string | Birlikte alınacak ek hizmetler. Alan adı yönetimi, kayıt gizliliği ve yönlendirme; yalnız uzantı sunuyorsa. |
| `nameservers` | string | Ad sunucuları. İkiden dörde; verilmezse hesabın varsayılanları uygulanır. |
| `whois_profile_id` | integer | Kayıtlı kayıt sahibi profili. Dört rolü birden doldurur. |
| `contacts` | object | Rol bazında kişiler. Her rol ya kayıtlı bir profil numarası ya da satır içi bir kişi taşır ve o rol için profili ezer. |
| `coupons` | string | Kupon kodları. |
| `billing_profile_id` | integer | Fatura profilinin numarası. |
| `notes` | string | Sipariş notu. |
| `payment` | object | Ödeme kaynağı. Hesap bakiyesi ya da kayıtlı kart. |
| `auth_code` | string |  |
| `method` | string |  |
| `card_id` | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: addon_not_offered, contact_field_invalid, contact_field_required, domains_not_offered, insufficient_balance, nameservers_invalid, terms_required, tld_not_offered, verification_required, years_invalid

### Örnekler

```bash
curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/domains/register' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"terms": true, "domain": "string", "years": 1, "accept_premium": true, "addons": "string", "nameservers": "string", "whois_profile_id": 1, "contacts": {}, "coupons": "string", "billing_profile_id": 1, "notes": "string", "payment": {}, "auth_code": "string", "method": "string", "card_id": "string"}'
```
```bash
gyro domain register --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
h["Idempotency-Key"] = str(uuid.uuid4())
r = requests.post("https://www.gyrohosting.com/api/v1/client/domains/register", headers=h, json={"terms": True, "domain": "string", "years": 1, "accept_premium": True, "addons": "string", "nameservers": "string", "whois_profile_id": 1, "contacts": {}, "coupons": "string", "billing_profile_id": 1, "notes": "string", "payment": {}, "auth_code": "string", "method": "string", "card_id": "string"}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/register", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
    "Idempotency-Key": crypto.randomUUID(),
  },
  body: JSON.stringify({"terms": true, "domain": "string", "years": 1, "accept_premium": true, "addons": "string", "nameservers": "string", "whois_profile_id": 1, "contacts": {}, "coupons": "string", "billing_profile_id": 1, "notes": "string", "payment": {}, "auth_code": "string", "method": "string", "card_id": "string"}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## POST /domains/transfer

**Alan Adı Transferi** · operationId `coreTransferDomain` · scope `Domains/TransferDomain` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreTransferDomain.json

**Para harcar / fatura oluşturur.** Para kuralları (AK-40): gövdede `"confirm": true`, `Idempotency-Key` başlığı, yalnız bakiye (kayıtlı kart yok), hesap başına günlük ücretli işlem sınırı (varsayılan 50, hesap/bayi bazında değiştirilebilir, 00:00 TR'de sıfırlanır). Başka bir sağlayıcıdaki alan adını buraya taşır. — kod gerekebilir


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `Idempotency-Key` (zorunlu) | header | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `terms` (zorunlu) | boolean | Şartların kabulü. Doğru gönderilmelidir. |
| `domain` (zorunlu) | string | Tam alan adı. |
| `auth_code` | string | Mevcut sağlayıcıdan alınan transfer kodu. Uzantı işaretliyse zorunludur ve her durumda hizmete yazılır. |
| `addons` | string | Birlikte alınacak ek hizmetler. Alan adı yönetimi, kayıt gizliliği ve yönlendirme; yalnız uzantı sunuyorsa. |
| `nameservers` | string | Ad sunucuları. İkiden dörde; verilmezse hesabın varsayılanları uygulanır. |
| `whois_profile_id` | integer | Kayıtlı kayıt sahibi profili. Dört rolü birden doldurur. |
| `contacts` | object | Rol bazında kişiler. Her rol ya kayıtlı bir profil numarası ya da satır içi bir kişi taşır ve o rol için profili ezer. |
| `coupons` | string | Kupon kodları. |
| `billing_profile_id` | integer | Fatura profilinin numarası. |
| `notes` | string | Sipariş notu. |
| `payment` | object | Ödeme kaynağı. Hesap bakiyesi ya da kayıtlı kart. |
| `years` | string |  |
| `accept_premium` | string |  |
| `method` | string |  |
| `card_id` | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **422**: auth_code_required, checkout_blocked, domain_not_registered, domain_transfer_locked, domains_not_offered, terms_required, transfer_not_offered

### Örnekler

```bash
curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/domains/transfer' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"terms": true, "domain": "string", "auth_code": "string", "addons": "string", "nameservers": "string", "whois_profile_id": 1, "contacts": {}, "coupons": "string", "billing_profile_id": 1, "notes": "string", "payment": {}, "years": "string", "accept_premium": "string", "method": "string", "card_id": "string"}'
```
```bash
gyro domain transfer --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
h["Idempotency-Key"] = str(uuid.uuid4())
r = requests.post("https://www.gyrohosting.com/api/v1/client/domains/transfer", headers=h, json={"terms": True, "domain": "string", "auth_code": "string", "addons": "string", "nameservers": "string", "whois_profile_id": 1, "contacts": {}, "coupons": "string", "billing_profile_id": 1, "notes": "string", "payment": {}, "years": "string", "accept_premium": "string", "method": "string", "card_id": "string"}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/transfer", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
    "Idempotency-Key": crypto.randomUUID(),
  },
  body: JSON.stringify({"terms": true, "domain": "string", "auth_code": "string", "addons": "string", "nameservers": "string", "whois_profile_id": 1, "contacts": {}, "coupons": "string", "billing_profile_id": 1, "notes": "string", "payment": {}, "years": "string", "accept_premium": "string", "method": "string", "card_id": "string"}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## GET /domains/whois-profiles

**Kayıtlı Profilleri Listeleme** · operationId `coreGetWhoisProfiles` · scope `Domains/GetWhoisProfiles` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetWhoisProfiles.json

Hesabın kayıtlı kişi profillerini döndürür. — hesap geneli


### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains/whois-profiles' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain whois-profile list
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains/whois-profiles", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/whois-profiles", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## POST /domains/whois-profiles

**Profil Oluşturma** · operationId `coreCreateWhoisProfile` · scope `Domains/CreateWhoisProfile` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreCreateWhoisProfile.json

Yeniden kullanılabilir bir kişi profili kaydeder. — hesap geneli


### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `name` (zorunlu) | string | Profilin etiketi. |
| `contact` (zorunlu) | object | contactKaydedilecek kişi. İl burada zorunlu değildir. |
| `first_name` (zorunlu) | string | Kişinin adı. |
| `last_name` (zorunlu) | string | Kişinin soyadı. |
| `company` | string | Kurum adı. Tek isteğe bağlı alandır. |
| `email` (zorunlu) | string | Geçerli bir e-posta. |
| `phone` (zorunlu) | string | Telefon. |
| `address` (zorunlu) | string | Adres satırı. |
| `address2` | string | İkinci adres satırı. İsteğe bağlı; anahtar yoksa boş satır kaydedilir. |
| `city` (zorunlu) | string | Şehir. |
| `state` | string | İl ya da eyalet. Alan adı kişilerinde zorunludur, kayıtlı profillerde değildir. |
| `zip` (zorunlu) | string | Posta kodu. |
| `country` (zorunlu) | string | Ülke kodu. Büyük harfe çevrilir. |
| `postal_code` | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **422**: contact_email_invalid, contact_field_invalid, contact_field_required, contact_name_required, name_required, profile_rejected
- **500**: profile_failed

### Örnekler

```bash
curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/domains/whois-profiles' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "string", "contact": {}, "first_name": "string", "last_name": "string", "company": "string", "email": "string", "phone": "string", "address": "string", "address2": "string", "city": "string", "state": "string", "zip": "string", "country": "string", "postal_code": "string"}'
```
```bash
gyro domain whois-profile create --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.post("https://www.gyrohosting.com/api/v1/client/domains/whois-profiles", headers=h, json={"name": "string", "contact": {}, "first_name": "string", "last_name": "string", "company": "string", "email": "string", "phone": "string", "address": "string", "address2": "string", "city": "string", "state": "string", "zip": "string", "country": "string", "postal_code": "string"}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/whois-profiles", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"name": "string", "contact": {}, "first_name": "string", "last_name": "string", "company": "string", "email": "string", "phone": "string", "address": "string", "address2": "string", "city": "string", "state": "string", "zip": "string", "country": "string", "postal_code": "string"}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## PUT /domains/whois-profiles/{pid}

**Profili Güncelleme** · operationId `coreUpdateWhoisProfile` · scope `Domains/UpdateWhoisProfile` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreUpdateWhoisProfile.json

Kayıtlı bir profili yeniden yazar. — tam kişi


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `pid` (zorunlu) | path | integer |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `name` (zorunlu) | string | Yeni etiket. |
| `contact` (zorunlu) | object | contactTam kişi. Kayıtlı kişi bütünüyle değiştirilir. |
| `first_name` (zorunlu) | string | Kişinin adı. |
| `last_name` (zorunlu) | string | Kişinin soyadı. |
| `company` | string | Kurum adı. Tek isteğe bağlı alandır. |
| `email` (zorunlu) | string | Geçerli bir e-posta. |
| `phone` (zorunlu) | string | Telefon. |
| `address` (zorunlu) | string | Adres satırı. |
| `address2` | string | İkinci adres satırı. Profil bütün olarak değiştirilir; anahtar yoksa boş satır kaydedilir. |
| `city` (zorunlu) | string | Şehir. |
| `state` | string | İl ya da eyalet. Alan adı kişilerinde zorunludur, kayıtlı profillerde değildir. |
| `zip` (zorunlu) | string | Posta kodu. |
| `country` (zorunlu) | string | Ülke kodu. Büyük harfe çevrilir. |
| `postal_code` | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: contact_email_invalid, contact_field_invalid, contact_field_required, contact_name_required, name_required, profile_rejected

### Örnekler

```bash
curl -s -X PUT 'https://www.gyrohosting.com/api/v1/client/domains/whois-profiles/1' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "string", "contact": {}, "first_name": "string", "last_name": "string", "company": "string", "email": "string", "phone": "string", "address": "string", "address2": "string", "city": "string", "state": "string", "zip": "string", "country": "string", "postal_code": "string"}'
```
```bash
gyro domain whois-profile set --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.put("https://www.gyrohosting.com/api/v1/client/domains/whois-profiles/1", headers=h, json={"name": "string", "contact": {}, "first_name": "string", "last_name": "string", "company": "string", "email": "string", "phone": "string", "address": "string", "address2": "string", "city": "string", "state": "string", "zip": "string", "country": "string", "postal_code": "string"}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/whois-profiles/1", {
  method: "PUT",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"name": "string", "contact": {}, "first_name": "string", "last_name": "string", "company": "string", "email": "string", "phone": "string", "address": "string", "address2": "string", "city": "string", "state": "string", "zip": "string", "country": "string", "postal_code": "string"}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## DELETE /domains/whois-profiles/{pid}

**Profili Silme** · operationId `coreDeleteWhoisProfile` · scope `Domains/DeleteWhoisProfile` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreDeleteWhoisProfile.json

Kayıtlı bir kişi profilini siler. — hesap geneli


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `pid` (zorunlu) | path | integer |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found

### Örnekler

```bash
curl -s -X DELETE 'https://www.gyrohosting.com/api/v1/client/domains/whois-profiles/1' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain whois-profile delete
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.delete("https://www.gyrohosting.com/api/v1/client/domains/whois-profiles/1", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/whois-profiles/1", {
  method: "DELETE",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## POST /domains/whois-profiles/{pid}/default

**Profili Varsayılan Yapma** · operationId `coreSetDefaultWhoisProfile` · scope `Domains/SetDefaultWhoisProfile` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreSetDefaultWhoisProfile.json

Yeni kayıtlarda kendiliğinden uygulanacak profili belirler. — hesap geneli


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `pid` (zorunlu) | path | integer |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found

### Örnekler

```bash
curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/domains/whois-profiles/1/default' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain whois-profile default
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.post("https://www.gyrohosting.com/api/v1/client/domains/whois-profiles/1/default", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/whois-profiles/1/default", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## GET /domains/default-nameservers

**Varsayılan Ad Sunucularını Okuma** · operationId `coreGetDefaultNameservers` · scope `Domains/GetDefaultNameservers` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetDefaultNameservers.json

Hesabın yeni alan adlarına uygulanan varsayılan setini döndürür. — hesap geneli


### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains/default-nameservers' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain default-nameserver list
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains/default-nameservers", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/default-nameservers", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## PUT /domains/default-nameservers

**Varsayılan Ad Sunucularını Kaydetme** · operationId `coreUpdateDefaultNameservers` · scope `Domains/UpdateDefaultNameservers` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreUpdateDefaultNameservers.json

Yeni alan adlarına uygulanacak varsayılan seti kaydeder. — hesap geneli


### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `nameservers` (zorunlu) | string | Varsayılan set. İkiden dörde kadar geçerli sunucu adı; boşluklar kırpılır ve küçük harfe çevrilir. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **422**: nameservers_invalid

### Örnekler

```bash
curl -s -X PUT 'https://www.gyrohosting.com/api/v1/client/domains/default-nameservers' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"nameservers": "string"}'
```
```bash
gyro domain default-nameserver set --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.put("https://www.gyrohosting.com/api/v1/client/domains/default-nameservers", headers=h, json={"nameservers": "string"}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/default-nameservers", {
  method: "PUT",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"nameservers": "string"}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## GET /domains

**Alan Adlarını Listeleme** · operationId `coreGetDomains` · scope `Domains/GetDomains` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetDomains.json

Hesabın alan adlarını döndürür. — anahtarın sahibi


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `page` | query | integer | Kaçıncı sayfa. |
| `limit` | query | integer | Sayfa başına satır. En çok 100. |
| `status` | query | string | Durum süzgeci. Rozet gruplarını alır. |
| `tld` | query | string | Yalnız bu uzantının alan adları. |
| `search` | query | string | Alan adında arar. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain list
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## GET /domains/{domain}

**Alan Adını Okuma** · operationId `coreGetDomain` · scope `Domains/GetDomain` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetDomain.json

Alan adını, sağlayıcının yeteneklerini ve yenileme seçeneklerini döndürür. — yetenek sondası


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains/1' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain get
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains/1", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## PATCH /domains/{domain}

**Alan Adı Tercihlerini Değiştirme** · operationId `coreUpdateDomain` · scope `Domains/UpdateDomain` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreUpdateDomain.json

Otomatik yenilemeyi ve fatura profilini değiştirir. — iki alan


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `auto_renew` | boolean | Alan adı bazlı otomatik yenileme. Yalnız etkin alan adlarında ve gerçek bir mantıksal değerle. |
| `billing_profile_id` | integer | Fatura profilinin numarası. Sıfır hesabın varsayılanına döner. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: auto_renew_invalid, autorenew_locked, billing_profile_rejected, no_auto_pay_source, not_actionable, nothing_to_update

### Örnekler

```bash
curl -s -X PATCH 'https://www.gyrohosting.com/api/v1/client/domains/1' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"auto_renew": true, "billing_profile_id": 1}'
```
```bash
gyro domain update --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.patch("https://www.gyrohosting.com/api/v1/client/domains/1", headers=h, json={"auto_renew": True, "billing_profile_id": 1}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1", {
  method: "PATCH",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"auto_renew": true, "billing_profile_id": 1}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## POST /domains/{domain}/renew

**Yenileme Faturası Kesme** · operationId `coreRenewDomain` · scope `Domains/RenewDomain` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreRenewDomain.json

**Para harcar / fatura oluşturur.** Para kuralları (AK-40): gövdede `"confirm": true`, `Idempotency-Key` başlığı, yalnız bakiye (kayıtlı kart yok), hesap başına günlük ücretli işlem sınırı (varsayılan 50, hesap/bayi bazında değiştirilebilir, 00:00 TR'de sıfırlanır). Alan adı için istenen yıl sayısı kadar yenileme faturası keser. — fatura üretir


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |
| `Idempotency-Key` (zorunlu) | header | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `years` (zorunlu) | integer | Yenileme süresi. Detaydaki fiyatlı süre satırlarından biri olmalıdır. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: not_renewable, years_invalid

### Örnekler

```bash
curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/domains/1/renew' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"years": 1}'
```
```bash
gyro domain renew --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
h["Idempotency-Key"] = str(uuid.uuid4())
r = requests.post("https://www.gyrohosting.com/api/v1/client/domains/1/renew", headers=h, json={"years": 1}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/renew", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
    "Idempotency-Key": crypto.randomUUID(),
  },
  body: JSON.stringify({"years": 1}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## GET /domains/{domain}/transfer-status

**Transferin Nerede Olduğunu Sorma** · operationId `coreGetTransferStatus` · scope `Domains/GetTransferStatus` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetTransferStatus.json

Devam eden bir transferin durumunu sağlayıcıdan okur. — canlı sorar


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: not_a_transfer

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains/1/transfer-status' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain transfer-status get
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains/1/transfer-status", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/transfer-status", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## GET /domains/{domain}/nameservers

**Ad Sunucularını Okuma** · operationId `coreGetNameservers` · scope `Domains/GetNameservers` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetNameservers.json

Alan adının ad sunucularını ve hesabın varsayılan setini döndürür. — anahtarın sahibi


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains/1/nameservers' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain nameserver list
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains/1/nameservers", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/nameservers", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## PUT /domains/{domain}/nameservers

**Ad Sunucularını Değiştirme** · operationId `coreUpdateNameservers` · scope `Domains/UpdateNameservers` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreUpdateNameservers.json

Alan adının ad sunucularını sağlayıcıda değiştirir. — siteyi taşır


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `nameservers` (zorunlu) | string | Yeni set. İkiden dörde kadar geçerli sunucu adı; boş girişler sayımdan önce düşer. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: nameservers_failed, nameservers_invalid, nameservers_not_supported, nameservers_rejected, not_actionable
- **500**: nameservers_failed

### Örnekler

```bash
curl -s -X PUT 'https://www.gyrohosting.com/api/v1/client/domains/1/nameservers' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"nameservers": "string"}'
```
```bash
gyro domain nameserver set --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.put("https://www.gyrohosting.com/api/v1/client/domains/1/nameservers", headers=h, json={"nameservers": "string"}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/nameservers", {
  method: "PUT",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"nameservers": "string"}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## GET /domains/{domain}/child-nameservers

**Kendi Ad Sunucularını Listeleme** · operationId `coreGetChildNameservers` · scope `Domains/GetChildNameservers` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetChildNameservers.json

Alan adının altında tanımlı ad sunucularını döndürür. — sağlayıcıdan okur


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: child_ns_failed, child_ns_not_supported
- **500**: child_ns_failed

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains/1/child-nameservers' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain child-nameserver list
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains/1/child-nameservers", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/child-nameservers", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## POST /domains/{domain}/child-nameservers

**Kendi Ad Sunucusunu Tanımlama** · operationId `coreCreateChildNameserver` · scope `Domains/CreateChildNameserver` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreCreateChildNameserver.json

Alan adının altında bir ad sunucusu tanımlar. — sicile yazar


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `host` (zorunlu) | string | Sunucunun tam adı. Küçük harfe çevrilir. |
| `ip` (zorunlu) | string | Sunucunun adresi. Biçimi doğrulanır. |
| `ns` | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: child_ns_failed, child_ns_fields, child_ns_host_invalid, child_ns_ip_invalid, child_ns_not_supported, child_ns_rejected, not_actionable
- **500**: child_ns_failed

### Örnekler

```bash
curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/domains/1/child-nameservers' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"host": "string", "ip": "string", "ns": "string"}'
```
```bash
gyro domain child-nameserver create --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.post("https://www.gyrohosting.com/api/v1/client/domains/1/child-nameservers", headers=h, json={"host": "string", "ip": "string", "ns": "string"}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/child-nameservers", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"host": "string", "ip": "string", "ns": "string"}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## DELETE /domains/{domain}/child-nameservers

**Kendi Ad Sunucusunu Kaldırma** · operationId `coreDeleteChildNameserver` · scope `Domains/DeleteChildNameserver` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreDeleteChildNameserver.json

Alan adının altındaki bir ad sunucusu tanımını kaldırır. — sicile yazar


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: child_ns_failed, child_ns_fields, child_ns_not_supported, child_ns_rejected, not_actionable
- **500**: child_ns_failed

### Örnekler

```bash
curl -s -X DELETE 'https://www.gyrohosting.com/api/v1/client/domains/1/child-nameservers' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain child-nameserver delete
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.delete("https://www.gyrohosting.com/api/v1/client/domains/1/child-nameservers", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/child-nameservers", {
  method: "DELETE",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## GET /domains/{domain}/transfer-lock

**Transfer Kilidini Okuma** · operationId `coreGetTransferLock` · scope `Domains/GetTransferLock` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetTransferLock.json

Alan adının transfere kapalı olup olmadığını sağlayıcıdan okur. — canlı okur


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains/1/transfer-lock' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain transfer-lock get
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains/1/transfer-lock", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/transfer-lock", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## PUT /domains/{domain}/transfer-lock

**Transfer Kilidini Değiştirme** · operationId `coreUpdateTransferLock` · scope `Domains/UpdateTransferLock` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreUpdateTransferLock.json

Alan adını transfere kapatır ya da açar. — sağlayıcıya yazar


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `locked` (zorunlu) | boolean | Yeni kilit durumu. Gerçek bir mantıksal değer olmalıdır; metin ve sayı reddedilir. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: lock_failed, lock_not_supported, lock_rejected, locked_invalid, not_actionable
- **500**: lock_failed

### Örnekler

```bash
curl -s -X PUT 'https://www.gyrohosting.com/api/v1/client/domains/1/transfer-lock' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"locked": true}'
```
```bash
gyro domain transfer-lock set --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.put("https://www.gyrohosting.com/api/v1/client/domains/1/transfer-lock", headers=h, json={"locked": True}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/transfer-lock", {
  method: "PUT",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"locked": true}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## POST /domains/{domain}/auth-code

**Transfer Kodunu İsteme** · operationId `coreSendAuthCode` · scope `Domains/SendAuthCode` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreSendAuthCode.json

Transfer kodunu alan adı sahibinin e-postasına gönderir. — yanıtta kod yok


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: auth_code_failed, auth_code_not_supported, auth_code_rejected, not_actionable
- **500**: auth_code_failed

### Örnekler

```bash
curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/domains/1/auth-code' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain auth-code send
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.post("https://www.gyrohosting.com/api/v1/client/domains/1/auth-code", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/auth-code", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## PUT /domains/{domain}/auth-code

**Gelen Transfer Kodunu Kaydetme** · operationId `coreSaveAuthCode` · scope `Domains/SaveAuthCode` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreSaveAuthCode.json

Devam eden bir transfer için kodu günceller. — anahtarın sahibi


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `code` (zorunlu) | string | Yeni transfer kodu. İşaretleme ayıklanır ve boşluklar kırpılır. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: code_required, not_actionable

### Örnekler

```bash
curl -s -X PUT 'https://www.gyrohosting.com/api/v1/client/domains/1/auth-code' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"code": "string"}'
```
```bash
gyro domain auth-code set --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.put("https://www.gyrohosting.com/api/v1/client/domains/1/auth-code", headers=h, json={"code": "string"}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/auth-code", {
  method: "PUT",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"code": "string"}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## GET /domains/{domain}/dns-records

**DNS Kayıtlarını Listeleme** · operationId `coreGetDnsRecords` · scope `Domains/GetDnsRecords` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetDnsRecords.json

Alan adının DNS kayıtlarını sağlayıcıdan okur. — ek hizmet gerekir


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: addon_pending, addon_required, dns_failed, dns_not_supported, dns_rejected
- **500**: dns_failed

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains/1/dns-records' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain dns-record list
```
```hcl
# kaynak gyro_domain_record: https://registry.terraform.io/providers/gyro-hosting/gyro/latest/docs/resources/domain_record
resource "gyro_domain_record" "www" {
  domain = "example.com"
  type   = "A"
  name   = "www"
  value  = gyro_server.web.ipv4
  ttl    = 3600
}
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains/1/dns-records", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/dns-records", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## POST /domains/{domain}/dns-records

**DNS Kaydı Ekleme** · operationId `coreCreateDnsRecord` · scope `Domains/CreateDnsRecord` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreCreateDnsRecord.json

Alan adına yeni bir DNS kaydı ekler. — ek hizmet gerekir


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `type` (zorunlu) | string | Kayıt türü. |
| `name` (zorunlu) | string | Kaydın yanıtlayacağı ad. Kabul edilen biçim sağlayıcıya göre değişir. |
| `value` (zorunlu) | string | Kaydın içeriği. |
| `ttl` | integer | Yaşam süresi. Verilmezse sağlayıcının varsayılanı kullanılır. |
| `priority` | integer | Öncelik. Posta ve hizmet kayıtları dışında yok sayılır. |
| `identity` | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: addon_required, dns_failed, dns_fields, dns_not_supported, dns_rejected, not_actionable
- **500**: dns_failed

### Örnekler

```bash
curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/domains/1/dns-records' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"type": "string", "name": "string", "value": "string", "ttl": 1, "priority": 1, "identity": "string"}'
```
```bash
gyro domain dns-record create --help    # tüm seçenekler
```
```hcl
# kaynak gyro_domain_record: https://registry.terraform.io/providers/gyro-hosting/gyro/latest/docs/resources/domain_record
resource "gyro_domain_record" "www" {
  domain = "example.com"
  type   = "A"
  name   = "www"
  value  = gyro_server.web.ipv4
  ttl    = 3600
}
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.post("https://www.gyrohosting.com/api/v1/client/domains/1/dns-records", headers=h, json={"type": "string", "name": "string", "value": "string", "ttl": 1, "priority": 1, "identity": "string"}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/dns-records", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"type": "string", "name": "string", "value": "string", "ttl": 1, "priority": 1, "identity": "string"}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## PUT /domains/{domain}/dns-records

**DNS Kaydını Düzenleme** · operationId `coreUpdateDnsRecord` · scope `Domains/UpdateDnsRecord` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreUpdateDnsRecord.json

Var olan bir DNS kaydını değiştirir. — numara ile eşleşir


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `identity` | string | Listeden gelen kayıt numarası. Liste bir numara döndürdüyse mutlaka gönderin. |
| `type` (zorunlu) | string | Kayıt türü. |
| `name` (zorunlu) | string | Kaydın adı. |
| `value` (zorunlu) | string | Yeni içerik. |
| `ttl` | integer | Yaşam süresi. Verilmezse kayıt mevcut yaşam süresini korur. |
| `priority` | integer | Öncelik. Verilmezse kayıt, türü değişmediği sürece mevcut önceliğini korur. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: addon_required, dns_edit_not_supported, dns_failed, dns_fields, dns_rejected, not_actionable
- **500**: dns_failed

### Örnekler

```bash
curl -s -X PUT 'https://www.gyrohosting.com/api/v1/client/domains/1/dns-records' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"identity": "string", "type": "string", "name": "string", "value": "string", "ttl": 1, "priority": 1}'
```
```bash
gyro domain dns-record set --help    # tüm seçenekler
```
```hcl
# kaynak gyro_domain_record: https://registry.terraform.io/providers/gyro-hosting/gyro/latest/docs/resources/domain_record
resource "gyro_domain_record" "www" {
  domain = "example.com"
  type   = "A"
  name   = "www"
  value  = gyro_server.web.ipv4
  ttl    = 3600
}
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.put("https://www.gyrohosting.com/api/v1/client/domains/1/dns-records", headers=h, json={"identity": "string", "type": "string", "name": "string", "value": "string", "ttl": 1, "priority": 1}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/dns-records", {
  method: "PUT",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"identity": "string", "type": "string", "name": "string", "value": "string", "ttl": 1, "priority": 1}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## DELETE /domains/{domain}/dns-records

**DNS Kaydını Silme** · operationId `coreDeleteDnsRecord` · scope `Domains/DeleteDnsRecord` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreDeleteDnsRecord.json

Bir DNS kaydını kaldırır. — eşleşme daraltılır


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: addon_required, dns_failed, dns_fields, dns_rejected, not_actionable
- **500**: dns_failed

### Örnekler

```bash
curl -s -X DELETE 'https://www.gyrohosting.com/api/v1/client/domains/1/dns-records' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain dns-record delete
```
```hcl
# kaynak gyro_domain_record: https://registry.terraform.io/providers/gyro-hosting/gyro/latest/docs/resources/domain_record
resource "gyro_domain_record" "www" {
  domain = "example.com"
  type   = "A"
  name   = "www"
  value  = gyro_server.web.ipv4
  ttl    = 3600
}
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.delete("https://www.gyrohosting.com/api/v1/client/domains/1/dns-records", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/dns-records", {
  method: "DELETE",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## GET /domains/{domain}/dnssec

**İmza Kayıtlarını Listeleme** · operationId `coreGetDnssecRecords` · scope `Domains/GetDnssecRecords` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetDnssecRecords.json

Alan adının imza doğrulama kayıtlarını döndürür. — sağlayıcıdan okur


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: dnssec_failed, dnssec_not_supported
- **500**: dnssec_failed

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains/1/dnssec' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain dnssec list
```
```hcl
# kaynak gyro_domain_record: https://registry.terraform.io/providers/gyro-hosting/gyro/latest/docs/resources/domain_record
resource "gyro_domain_record" "www" {
  domain = "example.com"
  type   = "A"
  name   = "www"
  value  = gyro_server.web.ipv4
  ttl    = 3600
}
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains/1/dnssec", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/dnssec", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## POST /domains/{domain}/dnssec

**İmza Kaydı Ekleme** · operationId `coreCreateDnssecRecord` · scope `Domains/CreateDnssecRecord` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreCreateDnssecRecord.json

Alan adına bir imza doğrulama kaydı ekler. — algoritma denetlenir


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `key_tag` (zorunlu) | integer | Anahtarın etiketi. `dnskey-keytag-flags`'te anahtar bayrağını taşır. |
| `algorithm` (zorunlu) | integer | Anahtar algoritmasının numarası. Modülün bildirdiği kümede olmalıdır. |
| `digest_type` (zorunlu) | integer | Özet algoritmasının numarası ya da `meta.dnssec_fields`'in adlandırdığı anahtar bayrağı veya protokol. Modülün bildirdiği kümede olmalıdır. |
| `digest` (zorunlu) | string | İmza özeti. DNSKEY isteyen servis sağlayıcı burada açık anahtarı (base64) alır. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: dnssec_algorithm_invalid, dnssec_digest_type_invalid, dnssec_failed, dnssec_fields, dnssec_not_supported, dnssec_rejected, not_actionable
- **500**: dnssec_failed

### Örnekler

```bash
curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/domains/1/dnssec' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"key_tag": 1, "algorithm": 1, "digest_type": 1, "digest": "string"}'
```
```bash
gyro domain dnssec create --help    # tüm seçenekler
```
```hcl
# kaynak gyro_domain_record: https://registry.terraform.io/providers/gyro-hosting/gyro/latest/docs/resources/domain_record
resource "gyro_domain_record" "www" {
  domain = "example.com"
  type   = "A"
  name   = "www"
  value  = gyro_server.web.ipv4
  ttl    = 3600
}
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.post("https://www.gyrohosting.com/api/v1/client/domains/1/dnssec", headers=h, json={"key_tag": 1, "algorithm": 1, "digest_type": 1, "digest": "string"}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/dnssec", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"key_tag": 1, "algorithm": 1, "digest_type": 1, "digest": "string"}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## DELETE /domains/{domain}/dnssec

**İmza Kaydını Silme** · operationId `coreDeleteDnssecRecord` · scope `Domains/DeleteDnssecRecord` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreDeleteDnssecRecord.json

Bir imza doğrulama kaydını kaldırır. — siteyi kırabilir


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: dnssec_failed, dnssec_fields, dnssec_not_supported, dnssec_rejected, not_actionable
- **500**: dnssec_failed

### Örnekler

```bash
curl -s -X DELETE 'https://www.gyrohosting.com/api/v1/client/domains/1/dnssec' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain dnssec delete
```
```hcl
# kaynak gyro_domain_record: https://registry.terraform.io/providers/gyro-hosting/gyro/latest/docs/resources/domain_record
resource "gyro_domain_record" "www" {
  domain = "example.com"
  type   = "A"
  name   = "www"
  value  = gyro_server.web.ipv4
  ttl    = 3600
}
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.delete("https://www.gyrohosting.com/api/v1/client/domains/1/dnssec", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/dnssec", {
  method: "DELETE",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## GET /domains/{domain}/whois

**Alan Adı Kişilerini Okuma** · operationId `coreGetWhoisContacts` · scope `Domains/GetWhoisContacts` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetWhoisContacts.json

Alan adının dört rolündeki kişi bilgilerini döndürür. — sağlayıcıdan okur


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: whois_not_supported, whois_rejected

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains/1/whois' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain whois get
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains/1/whois", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/whois", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## PUT /domains/{domain}/whois

**Alan Adı Kişilerini Yazma** · operationId `coreUpdateWhoisContacts` · scope `Domains/UpdateWhoisContacts` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreUpdateWhoisContacts.json

Bir kişiyi seçilen role ya da dört role birden yazar. — sicile yazar


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `role` | string | Hangi rollere yazılacağı. Verilmezse dört rolün hepsine yazılır. |
| `contact` (zorunlu) | object | contactYazılacak kişi. |
| `first_name` (zorunlu) | string | Kişinin adı. |
| `last_name` (zorunlu) | string | Kişinin soyadı. |
| `company` | string | Kurum adı. Tek isteğe bağlı alandır. |
| `email` (zorunlu) | string | Geçerli bir e-posta. |
| `phone` (zorunlu) | string | Telefon. |
| `address` (zorunlu) | string | Adres satırı. |
| `address2` | string | İkinci adres satırı (daire, kat, blok). Anahtar gönderilmezse sağlayıcıdaki satır korunur; boş metin satırı siler. |
| `city` (zorunlu) | string | Şehir. |
| `state` | string | İl ya da eyalet. Alan adı kişilerinde zorunludur, kayıtlı profillerde değildir. |
| `zip` (zorunlu) | string | Posta kodu. |
| `country` (zorunlu) | string | Ülke kodu. Büyük harfe çevrilir. |
| `postal_code` | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: contact_email_invalid, contact_field_invalid, contact_field_required, contact_name_required, not_actionable, role_invalid, whois_failed, whois_not_supported, whois_rejected
- **500**: whois_failed

### Örnekler

```bash
curl -s -X PUT 'https://www.gyrohosting.com/api/v1/client/domains/1/whois' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"role": "string", "contact": {}, "first_name": "string", "last_name": "string", "company": "string", "email": "string", "phone": "string", "address": "string", "address2": "string", "city": "string", "state": "string", "zip": "string", "country": "string", "postal_code": "string"}'
```
```bash
gyro domain whois set --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.put("https://www.gyrohosting.com/api/v1/client/domains/1/whois", headers=h, json={"role": "string", "contact": {}, "first_name": "string", "last_name": "string", "company": "string", "email": "string", "phone": "string", "address": "string", "address2": "string", "city": "string", "state": "string", "zip": "string", "country": "string", "postal_code": "string"}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/whois", {
  method: "PUT",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"role": "string", "contact": {}, "first_name": "string", "last_name": "string", "company": "string", "email": "string", "phone": "string", "address": "string", "address2": "string", "city": "string", "state": "string", "zip": "string", "country": "string", "postal_code": "string"}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## POST /domains/{domain}/whois/apply

**Kayıtlı Profili Uygulama** · operationId `coreApplyWhoisProfile` · scope `Domains/ApplyWhoisProfile` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreApplyWhoisProfile.json

Kayıtlı bir kişi profilini alan adının dört rolüne birden yazar. — dört rolü doldurur


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `profile_id` (zorunlu) | integer | Uygulanacak profilin numarası. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: not_actionable, whois_failed, whois_not_supported, whois_rejected
- **500**: whois_failed

### Örnekler

```bash
curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/domains/1/whois/apply' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"profile_id": 1}'
```
```bash
gyro domain whois apply --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.post("https://www.gyrohosting.com/api/v1/client/domains/1/whois/apply", headers=h, json={"profile_id": 1}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/whois/apply", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"profile_id": 1}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## PUT /domains/{domain}/whois-privacy

**Kayıt Gizliliğini Değiştirme** · operationId `coreUpdateWhoisPrivacy` · scope `Domains/UpdateWhoisPrivacy` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreUpdateWhoisPrivacy.json

Kişi bilgilerinin herkese açık sorguda gizlenmesini açar ya da kapatır. — ücretli olabilir


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `enabled` (zorunlu) | boolean | Gizlilik açık mı. Gerçek bir mantıksal değer olmalıdır. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: addon_required, enabled_invalid, not_actionable, privacy_failed, privacy_not_supported, privacy_rejected
- **500**: privacy_failed

### Örnekler

```bash
curl -s -X PUT 'https://www.gyrohosting.com/api/v1/client/domains/1/whois-privacy' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"enabled": true}'
```
```bash
gyro domain whois-privacy set --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.put("https://www.gyrohosting.com/api/v1/client/domains/1/whois-privacy", headers=h, json={"enabled": True}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/whois-privacy", {
  method: "PUT",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"enabled": true}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## GET /domains/{domain}/email-forwards

**E-posta Yönlendirmelerini Listeleme** · operationId `coreGetEmailForwards` · scope `Domains/GetEmailForwards` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetEmailForwards.json

Alan adında tanımlı e-posta yönlendirmelerini döndürür. — ek hizmet gerekir


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: addon_pending, addon_required, email_forwarding_failed, email_forwarding_not_supported
- **500**: email_forwarding_failed

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains/1/email-forwards' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain email-forward list
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains/1/email-forwards", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/email-forwards", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## POST /domains/{domain}/email-forwards

**E-posta Yönlendirmesi Ekleme** · operationId `coreCreateEmailForward` · scope `Domains/CreateEmailForward` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreCreateEmailForward.json

Alan adına gelen postayı başka bir kutuya taşıyan bir kural ekler. — ek hizmet gerekir


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `prefix` (zorunlu) | string | Alan adındaki yerel kısım. Yönlendirme bu kısım ile alan adının birleşimine yanıt verir. |
| `target` (zorunlu) | string | Hedef posta kutusu. Geçerli bir e-posta adresi olmalıdır. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: addon_required, email_forward_fields, email_forward_rejected, email_forward_target_invalid, email_forwarding_failed, email_forwarding_not_supported, not_actionable
- **500**: email_forwarding_failed

### Örnekler

```bash
curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/domains/1/email-forwards' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"prefix": "string", "target": "string"}'
```
```bash
gyro domain email-forward create --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.post("https://www.gyrohosting.com/api/v1/client/domains/1/email-forwards", headers=h, json={"prefix": "string", "target": "string"}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/email-forwards", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"prefix": "string", "target": "string"}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## DELETE /domains/{domain}/email-forwards

**E-posta Yönlendirmesini Silme** · operationId `coreDeleteEmailForward` · scope `Domains/DeleteEmailForward` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreDeleteEmailForward.json

Bir e-posta yönlendirme kuralını kaldırır. — eşleşme daraltılır


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: addon_required, email_forward_fields, email_forwarding_failed, email_forwarding_not_supported, not_actionable
- **500**: email_forwarding_failed

### Örnekler

```bash
curl -s -X DELETE 'https://www.gyrohosting.com/api/v1/client/domains/1/email-forwards' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain email-forward delete
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.delete("https://www.gyrohosting.com/api/v1/client/domains/1/email-forwards", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/email-forwards", {
  method: "DELETE",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## GET /domains/{domain}/forwarding

**Adres Yönlendirmesini Okuma** · operationId `coreGetUrlForwarding` · scope `Domains/GetUrlForwarding` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreGetUrlForwarding.json

Alan adının başka bir adrese yönlendirilip yönlendirilmediğini döndürür. — ek hizmet gerekir


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: addon_pending, addon_required, url_forwarding_failed, url_forwarding_not_supported
- **500**: url_forwarding_failed

### Örnekler

```bash
curl -s 'https://www.gyrohosting.com/api/v1/client/domains/1/forwarding' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain forwarding get
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/domains/1/forwarding", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/forwarding", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## PUT /domains/{domain}/forwarding

**Adres Yönlendirmesi Kurma** · operationId `coreUpdateUrlForwarding` · scope `Domains/UpdateUrlForwarding` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreUpdateUrlForwarding.json

Alan adına gelen ziyaretçiyi başka bir adrese gönderir. — ek hizmet gerekir


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### İstek gövdesi

| Alan | Tür | Açıklama |
|---|---|---|
| `url` (zorunlu) | string | Tam hedef adres. Şeması yönlendirmenin şeması olur; yazılmazsa güvensiz şema kullanılır. |
| `method` | integer | Yönlendirme türü. Kalıcı olan varsayılandır; başka bir değer ona düşer. |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: addon_required, not_actionable, url_forwarding_failed, url_forwarding_not_supported, url_forwarding_rejected, url_required
- **500**: url_forwarding_failed

### Örnekler

```bash
curl -s -X PUT 'https://www.gyrohosting.com/api/v1/client/domains/1/forwarding' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url": "string", "method": 1}'
```
```bash
gyro domain forwarding set --help    # tüm seçenekler
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.put("https://www.gyrohosting.com/api/v1/client/domains/1/forwarding", headers=h, json={"url": "string", "method": 1}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/forwarding", {
  method: "PUT",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"url": "string", "method": 1}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## DELETE /domains/{domain}/forwarding

**Adres Yönlendirmesini Kaldırma** · operationId `coreDeleteUrlForwarding` · scope `Domains/DeleteUrlForwarding` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreDeleteUrlForwarding.json

Alan adının adres yönlendirmesini kaldırır. — ek hizmet gerekir


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: addon_required, not_actionable, url_forwarding_failed, url_forwarding_not_supported, url_forwarding_rejected
- **500**: url_forwarding_failed

### Örnekler

```bash
curl -s -X DELETE 'https://www.gyrohosting.com/api/v1/client/domains/1/forwarding' \
  -H "Authorization: Bearer $GYRO_TOKEN"
```
```bash
gyro domain forwarding delete
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.delete("https://www.gyrohosting.com/api/v1/client/domains/1/forwarding", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/forwarding", {
  method: "DELETE",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```


## POST /domains/{domain}/addons/{key}

**Alan Adı Ek Hizmeti Alma** · operationId `coreBuyDomainAddon` · scope `Domains/BuyDomainAddon` · OpenAPI fragment: https://www.gyrohosting.com/developers/spec/ops/coreBuyDomainAddon.json

**Para harcar / fatura oluşturur.** Para kuralları (AK-40): gövdede `"confirm": true`, `Idempotency-Key` başlığı, yalnız bakiye (kayıtlı kart yok), hesap başına günlük ücretli işlem sınırı (varsayılan 50, hesap/bayi bazında değiştirilebilir, 00:00 TR'de sıfırlanır). Alan adı yönetimi, gizlilik ya da yönlendirme ek hizmetini satın alır. — oranlı ilk dönem


### Parametreler

| Alan | in | Tür | Açıklama |
|---|---|---|---|
| `domain` (zorunlu) | path | string |  |
| `key` (zorunlu) | path | string |  |
| `Idempotency-Key` (zorunlu) | header | string |  |

### Yanıtlar

- **200**: Success
- **401**: Missing, invalid or revoked key
- **403**: Key lacks the scope, IP not allowed, or feature disabled
- **404**: not_found
- **422**: addon_active, addon_free, addon_not_offered, addon_not_supported, addon_pending, addon_rejected, addon_term_invalid, not_actionable
- **500**: addon_failed

### Örnekler

```bash
curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/domains/1/addons/1' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)"
```
```bash
gyro domain addon buy
```
```python
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
h["Idempotency-Key"] = str(uuid.uuid4())
r = requests.post("https://www.gyrohosting.com/api/v1/client/domains/1/addons/1", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
```
```js
const res = await fetch("https://www.gyrohosting.com/api/v1/client/domains/1/addons/1", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Idempotency-Key": crypto.randomUUID(),
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);
```
