Skip to content
This repository was 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

KeyValue Açıklaması
accessAccess key clear-text olarak gönderilir.
secretSecret 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.

EndpointParametrelerAçıklaması
/YokTest için kullanılır.
/server/listYokAktif sunucuların listesine ulaşmanızı sağlar
/server/list/allYokTüm sunucuların listesine ulaşmanızı sağlar
/server/createYokSunucu oluşturmak için gerekli parametreleri sağlar
/server/create/configGösterYeni bir sunucu oluşturmak için kullanılır
/server/manage/[servername]/showYokSunucu durumunun görüntülenmesini sağlar
/server/manage/[servername]/monitorGeliştiriliyorSunucu monitoring verilerinin görüntülenmesini sağlar
/server/manage/[servername]/powerGösterSunucu güç yönetimi için kullanılır
/server/manage/[servername]/ip/rdnsGösterSunucu için IP rdns kaydı değişikliği sağlar
/server/manage/[servername]/ip/logsYokSunucuya gelen saldırı loglarının okunmasını sağlar
/server/manage/[servername]/snapshot/listYokSunucu snapshot listesini gösterir
/server/manage/[servername]/snapshot/revertGösterSnapshot yüklemesi için kullanılır
/server/manage/[servername]/backup/listYokSunucu yedek listesini gösterir
/server/manage/[servername]/backup/revertGösterSeçilen yedeğin restore edilmesini sağlar
/domain/listYokDNS sistemine kayıtlı alan adları listelenir
/domain/createGösterDNS sistemine yeni alan adı ekler
/domain/manage/[domain]/showYokAlan adi DNS kayıtlarını gösterir
/domain/manage/[domain]/addGösterYeni DNS kaydı ekler
/domain/manage/[domain]/updateGösterMevcut DNS kaydını günceller
/domain/manage/[domain]/deleteYokMevcut DNS kaydını siler
/domain/manage/[domain]/pushYokYapılan değişiklikleri DNS sunucularına gönderir
/accountYokHesap bilgilerini görüntülemenizi sağlar
/account/paymentGeliştiriliyorHesaba 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

KeyValue Açıklama
usernameSunucu kullanıcı adı (eğer root seçilirse alt kullanıcı açmaz)
passwordSunucu kullanıcı şifresi
nameAlfanümerik olarak sunucu adı
os_idİşletim sistemi ID. Eğer hazır uygulama kurulacaksa 0 olmalı
app_idHazır uygulama ID. Eğer işletim sistemi kurulacaksa 0 olmalı
package_idOluşturulacak sunucu için paket ID numarasıdır
sshkeyPublic 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

KeyValue Açıklama
setGüç yönetimi için kullanılan parametredir.

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

ValueAçıklama
startKapalı olan sunucuyu çalıştırır
shutdownSunucuya shutdown isteği gönderir
rebootSunucuyu yeniden başlatır
destroySunucuyu 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

KeyValue Açıklama
ipİşlem yapılacak IP adresi bilgisidir.
rdnsIP 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

KeyValue Açıklama
snapshot_idGeriye 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

KeyValue Açıklama
backup_idGeriye 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

KeyValue Açıklama
domainDNS 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

KeyValue Açıklama
record_nameKayıt adını belirtir.
record_typeKayıt tipini belirtir parametredir
record_contentKayıt içeriğini belirtir parametredir
record_priorityMX 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.

ValueAçıklama
AA kaydı seçiminde record_content IPv4 olmalıdır
AAAAAAAA kaydı seçiminde record_content IPv6 olmalıdır
CNAMECNAME kaydı seçiminde record_content domain/hostname olmalıdır
MXMX kaydı seçiminde record_content domain/hostname olmalıdır
TXTTXT kaydı seçiminde record_content içeriği tırnak içerisinde yazılmalıdır
NSNS 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

KeyValue Açıklama
record_idGüncellenecek kayıt ID numarasıdır
record_contentKayıt içeriğini belirtir parametredir
record_priorityMX 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 >>