Skip to content
This repository has been archived by the owner on Oct 26, 2020. It is now read-only.
Osman Makal edited this page Oct 8, 2020 · 8 revisions

API geliştirilme aşamasında Pre-Alpha versiyonunda olup kesinlikle production ortamında kullanılmamalıdır.

Genel Bakış

Doküman api.ilkbyte.com kullanımı için hazırlanmış Türkçe bir kaynaktır. İnternet teknolojilerinde her şeyin tamamen Türkçe karşılığı olmadığından geliştiriciler tarafından “Bu ne demektir?” sorusunu sordurmamak adına İngilizce terimler ile doküman hazırlanmıştır.

API kullanımına ilişkin sorularınızı soru/cevap bölümü üzerinden sormanızı rica ederiz.

Soru/Cevap sayfası için tıklayınız.

Authentication

Authentication işlemi için gerekli anahtarları oluşturmak Access Key ve Secret Key edinmek için ilkbyte.com üzerinden Hesabım bölümünü açıp Hesap Ayarları sayfasına geçiş yapınız.

API Erişim Anahtarları tablosu üzerinde yer alan + Yeni Anahtar Ekle kısmından API erişim anahtarınızı oluşturunuz. API erişim anahtarı yetki seviyelerini, talep edilir ise (kesinlikle öneriyoruz!) IP adresi kısıtlaması gibi yetkilendirmeleri bu kısımda tanımlayabilirsiniz. Aynı sayfada Access Key clear-text olarrak görüntülebilirken Secret Key sonradan tekrar görüntülenemez. Bu nedenle API erişim anahtarını oluştururken Secret Key anahtarınızı saklamayı unutmayınız.

Edindiğiniz API erişim anahtarları için tüm Endpoint adreslerine POST veya GET metodu ile alt kısımda listelenen parametreleri ile her zaman göndermelisiniz.

Authentication Parametreleri

Key Value Açıklaması
access Access key clear-text olarak gönderilir.
secret Secret key clear-text olarak gönderilir.

Endpoint Listesi

Alt kısımda yer alan endpoint listesinde "[value]" şeklinde köşeli parantez içerisinde yazan ifade bir değişkeni göstermektedir. Buna göre servername, işlem yapılan sunucu adı olmalı ve domain ise dns kayıtlarında işlem yapılan alan adı olmalıdır.

Endpoint Parametreler Açıklaması
/ Yok Test için kullanılır.
/server/list Yok Aktif sunucuların listesine ulaşmanızı sağlar
/server/list/all Yok Tüm sunucuların listesine ulaşmanızı sağlar
/server/create Yok Sunucu oluşturmak için gerekli parametreleri sağlar
/server/create/config Göster Yeni bir sunucu oluşturmak için kullanılır
/server/manage/[servername]/show Yok Sunucu durumunun görüntülenmesini sağlar
/server/manage/[servername]/monitor Geliştiriliyor Sunucu monitoring verilerinin görüntülenmesini sağlar
/server/manage/[servername]/power Göster Sunucu güç yönetimi için kullanılır
/server/manage/[servername]/ip/rdns Göster Sunucu için IP rdns kaydı değişikliği sağlar
/server/manage/[servername]/ip/logs Yok Sunucuya gelen saldırı loglarının okunmasını sağlar
/server/manage/[servername]/snapshot/list Yok Sunucu snapshot listesini gösterir
/server/manage/[servername]/snapshot/revert Göster Snapshot yüklemesi için kullanılır
/server/manage/[servername]/backup/list Yok Sunucu yedek listesini gösterir
/server/manage/[servername]/backup/revert Göster Seçilen yedeğin restore edilmesini sağlar
/domain/list Yok DNS sistemine kayıtlı alan adları listelenir
/domain/create Göster DNS sistemine yeni alan adı ekler
/domain/manage/[domain]/show Yok Alan adi DNS kayıtlarını gösterir
/domain/manage/[domain]/add Göster Yeni DNS kaydı ekler
/domain/manage/[domain]/update Göster Mevcut DNS kaydını günceller
/domain/manage/[domain]/delete Yok Mevcut DNS kaydını siler
/domain/manage/[domain]/push Yok Yapılan değişiklikleri DNS sunucularına gönderir
/account Yok Hesap bilgilerini görüntülemenizi sağlar
/account/payment Geliştiriliyor Hesaba bakiye yüklemek için kullanılır

Endpoint listesi tablosunda yer alan endpoint adreslerinin URL adresi: https://api.ilkbyte.com

Endpoint /server/create/config

Key Value Açıklama
username Sunucu kullanıcı adı (eğer root seçilirse alt kullanıcı açmaz)
password Sunucu kullanıcı şifresi
name Alfanümerik olarak sunucu adı
os_id İşletim sistemi ID. Eğer hazır uygulama kurulacaksa 0 olmalı
app_id Hazır uygulama ID. Eğer işletim sistemi kurulacaksa 0 olmalı
package_id Oluşturulacak sunucu için paket ID numarasıdır
sshkey Public SSH anahtarı clear-text olarak gönderilir. Birden fazla için birebir aynı parametre birden fazla kullanılabilir

Yukarıda yer alan parametreler arasında ID numaralarına /server/create endpoint adresinden erişebilirsiniz. Hesaba kayıtlı SSH anahtarları API üzerinden görüntülenemez ve seçilemez. Bu nedenle ssh anahtarlarınızı clear-text olarak sshkey parametresi ile göndermeniz gerekir.

Endpoint listesine geri dön >>

Endpoint /server/manage/[servername]/power

Key Value Açıklama
set Güç yönetimi için kullanılan parametredir.

Set parametresi sadece alt kısımda yer alan değerleri alabilir.

Value Açıklama
start Kapalı olan sunucuyu çalıştırır
shutdown Sunucuya shutdown isteği gönderir
reboot Sunucuyu yeniden başlatır
destroy Sunucuyu direkt olarak kapatır

UYARI: Bu işlemler arasında reboot ve destroy sunucu üzerinde açık olan veya işlem gören dosyaların bozulmasına sebebiyet verebilir. Tüm işlemlerde olduğu gibi sorumluluk sizindir.

Endpoint listesine geri dön >>

Endpoint /server/manage/[servername]/ip/rdns

Key Value Açıklama
ip İşlem yapılacak IP adresi bilgisidir.
rdns IP adresi için tanımlanacak RDNS kaydı bilgisidir

IP RDNS değişikliği yapabilmek için RDNS için tanımlanacak dns kaydının ilgili ip adresine doğru A kaydı yönlendirmesi yapılmış ve erişilebilir durumda olması gerekmektedir.

Endpoint listesine geri dön >>

Endpoint /server/manage/[servername]/snapshot/revert

Key Value Açıklama
snapshot_id Geriye dönülecek snapshot ID numarasıdır

Yukarıda yer alan parametre arasında ihtiyaç duyulacak ID numarasına /server/manage/[servername]/snapshot/list isimli endpoint üzerinden erişilebilinir.

Endpoint listesine geri dön >>

Endpoint /server/manage/[servername]/backup/revert

Key Value Açıklama
backup_id Geriye dönülecek snapshot ID numarasıdır

Yukarıda yer alan parametre arasında ihtiyaç duyulacak ID numarasına /server/manage/[servername]/backup/list isimli endpoint üzerinden erişilebilinir.

Endpoint listesine geri dön >>

Endpoint /domain/create

Key Value Açıklama
domain DNS sistemine eklenecek alan adını belirtir

İşlem sonucunda alan adı sadece veri tabanında oluşturulur, sunucuda alan adına ilişkin bir kayıt oluşturulmaz. Bunun için alan adı nameserver kayıtlarının DNS sunucusuna yönlenmiş olması gerekir. Bu işlem tamamlandıysa /domain/manage/[domain]/push isimli endpoint için post isteği gönderilerek alan adı dns kayıtlarının sunucuda oluşturulması sağlanır.

Endpoint listesine geri dön >>

Endpoint /domain/manage/[domain]/add

Key Value Açıklama
record_name Kayıt adını belirtir.
record_type Kayıt tipini belirtir parametredir
record_content Kayıt içeriğini belirtir parametredir
record_priority MX ve benzeri kayıtlar için zorunlu alandır

Yukarıda yer alan record_type parametresi sadece alt kısımda yer alan değerleri alabilir.

Value Açıklama
A A kaydı seçiminde record_content IPv4 olmalıdır
AAAA AAAA kaydı seçiminde record_content IPv6 olmalıdır
CNAME CNAME kaydı seçiminde record_content domain/hostname olmalıdır
MX MX kaydı seçiminde record_content domain/hostname olmalıdır
TXT TXT kaydı seçiminde record_content içeriği tırnak içerisinde yazılmalıdır
NS NS kaydı seçiminde record_content domain/hostname olmalıdır

Bu işlem değişikliği sadece veri tabanında yapmaktadır değişiklikleri sunucuya göndermek için /domain/manage/[domain]/push isimli endpoint kullanılarak kayıtların DNS sunucularında güncellenmesi sağlanmalıdır.

Endpoint listesine geri dön >>

Endpoint /domain/manage/[domain]/update

Key Value Açıklama
record_id Güncellenecek kayıt ID numarasıdır
record_content Kayıt içeriğini belirtir parametredir
record_priority MX ve benzeri kayıtlar için zorunlu alandır

Bu işlem değişikliği sadece veri tabanında yapmaktadır değişiklikleri sunucuya göndermek için /domain/manage/[domain]/push isimli endpoint kullanılarak kayıtların DNS sunucularında güncellenmesi sağlanmalıdır.

Endpoint listesine geri dön >>