İçeriğe atla

API ve istemci kütüphaneleri

Web uygulamasının bir gizli mesajla yaptığı her şey HTTPS üzerinden JSON ile yapılabilir. Yaygın kalıp, bir gizli mesaj oluşturup bağlantıyı bir kişiye ileten bir betik veya işlem hattıdır; böylece kimlik bilgisi hiçbir zaman bir günlükte, destek talebinde veya sohbet geçmişinde kalmaz.

İstek ve yanıt şemaları ile bir deneme konsolu içeren tam uç nokta referansı api.onetimesecret.com adresinde bulunur. Bu sayfa, oraya geçmeden önce bilmeniz gerekenleri ele alır.

İstekler, hesabınızı barındıran bölgeye gider. Her bölge ayrı bir dağıtımdır ve aralarında hiçbir şey çoğaltılmaz.

https://REGION.onetimesecret.com/api/v2
REGIONSunucu
caca.onetimesecret.com
eueu.onetimesecret.com
nznz.onetimesecret.com
ukuk.onetimesecret.com
usus.onetimesecret.com

Yalın onetimesecret.com sunucusu API isteklerini yanıtlamaya ve aktif bir bölgeye yönlendirmeye devam eder; ancak bu yedek yönlendirme kaldırılırsa entegrasyonunuzun çalışmaya devam etmesi için bir bölgeyi açıkça sabitleyin. Her bölgenin verileriniz için ne anlama geldiğini öğrenmek için Verilerinizin bulunduğu yer sayfasına bakın.

Bir özel alan adında API, alan adınızdaki aynı yolda bulunur ve oluşturduğu bağlantılar o alan adını kullanır:

https://secrets.example.com/api/v2

Kendi barındırdığınız bir örnek, hangi sunucuda çalıştırırsanız çalıştırın aynı API'yi sunar.

HTTP Basic kimlik doğrulamasını kullanın. Kullanıcı adı hesap e-postanızdır; parola ise hesap ayarlarınızdaki API anahtarıdır.

Terminal penceresi
curl -u 'you@example.com:APITOKEN' https://eu.onetimesecret.com/api/v2/status

Gizli mesaj oluşturma ve gösterme, anonim bir kullanıcının sınırlarıyla kimlik doğrulaması olmadan da çalışır: daha kısa maksimum süre, daha küçük gizli mesaj boyutu ve makbuz listesi yok. Kimliği doğrulanmış istekler planınızın sınırlarını alır ve makbuzlarınızda görünür.

Bir saat geçerli olacak bir gizli mesaj oluşturun:

Terminal penceresi
curl -u 'you@example.com:APITOKEN' \
-H 'Content-Type: application/json' \
-d '{"secret": {"secret": "the password is hunter2", "ttl": 3600}}' \
https://eu.onetimesecret.com/api/v2/secret/conceal

Yanıt iki kayıt içerir. record.secret.identifier, https://eu.onetimesecret.com/secret/IDENTIFIER biçiminde paylaştığınız anahtardır. record.receipt.identifier sizindir: gizli mesajın görüntülenip görüntülenmediğini gösterir ve erken yakmanıza olanak tanır. Makbuz anahtarını alıcıya asla göndermeyin.

Görüntüleme sırasında güvenlik ifadesi istemek için secret nesnesine "passphrase": "..." ekleyin. Güvenlik ifadesi şifreleme anahtarı değil, bir erişim kontrolüdür: hizmet onun yalnızca tek yönlü bir özetini (hash) saklar ve değerin şifresini çözmeden önce onu doğrular. Kaybolan bir güvenlik ifadesi kurtarılamaz, bu nedenle gizli mesaj artık ne gösterilebilir ne de yakılabilir; süresi dolduğunda silinir.

Bir gizli mesajı gösterin; bu işlem mesajı tüketir:

Terminal penceresi
curl -X POST -H 'Content-Type: application/json' -d '{}' \
https://eu.onetimesecret.com/api/v2/secret/IDENTIFIER/reveal

Makbuz anahtarını kullanarak bir gizli mesajı kimse görüntülemeden önce yakın:

Terminal penceresi
curl -u 'you@example.com:APITOKEN' -X POST \
https://eu.onetimesecret.com/api/v2/receipt/RECEIPT_IDENTIFIER/burn
  • v2 mevcut genel API'dir: JSON giriş ve çıkış, makbuzlar, durum ve yakma uç noktaları. Bunun üzerine geliştirin.
  • v1 orijinal form kodlamalı API'dir (POST /api/v1/share). Hâlâ çalışır ve topluluk kütüphanelerinin çoğu bunu kullanır, ancak yeni entegrasyonlar v2'yi kullanmalıdır.

Her ikisi de api.onetimesecret.com adresinde belgelenmiştir.