Reseller API Koleksiyonu
IDrive® e2 Reseller API, REST mimarisi üzerine geliştirilmiştir.
IDrive® e2 Reseller API, 'application/JSON' içerik türündeki istek gövdelerini kabul eder ve 'application/JSON' yanıtları döndürür.
API'miz, API Anahtarı Kimlik Doğrulama mekanizmasını kullanmaktadır. API anahtarını IDrive® e2 hesabınızın profil bölümünden oluşturabilirsiniz.
Profil bölümünden oluşturulan API anahtarını, tüm HTTP API çağrılarının başlığına 'token' anahtarına karşılık gelecek şekilde ekleyin.
HTTP Yanıt kodları:
- 200 (Başarılı)
- 500 (Sunucu Hatası)
- 400 (Geçersiz Parametreler)
- 401 (Yetkisiz)
- 403 (Geçersiz İstek)
Hata yanıt gövdesi aşağıdaki yapıda olacaktır:
Response (application/JSON) : {
error : {
string type;
string code;
string message;
}
}
'error.type' için olası değerler şunlardır:
Daha fazla ayrıntı için 'error.code' ve 'error.message' neyin yanlış gittiğini açıklayacaktır.
Yaygın Hata Durumları
Aşağıda, aşağıda ayrıntılı olarak açıklanan tüm API'ler tarafından döndürülebilecek yaygın hata durumları yer almaktadır. Diğer hata durumları ilgili API'lerle birlikte belgelenecektir.
- Sunucu Hatası (HTTP 500)
Response (application/JSON) : {
error:{
type: 'api_error',
code: 'request_processing_failed',
message: 'Unable to process this request, please try again later'
}
} - Yetkisiz (HTTP 401)
Response (application/JSON) : {
error:{
type: 'invalid_request_error',
code: 'unauthorized',
message: 'Authentication header missing/invalid'
}
} - Geçersiz Parametreler (HTTP 400)
Response (application/JSON) : {
error:{
type: 'invalid_request_error',
code: 'invalid_parameters',
message: 'Invalid parameter values, check errors for details',
errors: [] (array contain details of error)
}
}
YETKİLENDİRME Başlığı API Anahtarı
| Key | token |
| Value | <YOUR-API-KEY> |
API genelinde kullanılan sıralamalar şunlardır:
Sıralamalar (Enums):
Erişim anahtarı izinleri:
{
0: Okuma erişimi,
1: Yazma erişimi,
2: Okuma/Yazma erişimi
}
Kullanıcı İşlemleri
- Tüm kullanıcıları listele
GET
https://api.idrivee2.com/api/reseller/v1/users
Kopyalamak için tıklayınBağlantı kopyalandı
Bu, profiliniz altına eklenen tüm kullanıcıları görüntüler.
İsteğe bağlı olarak bir sorgu parametresi kullanarak kullanıcıları e-posta ile filtreleyebilirsiniz.
Sorgu Parametreleri (İsteğe Bağlı):
string email;
Kullanıcıları tam e-posta eşleşmesine göre filtreler. E-posta parametresi URL ile kodlanmış olmalıdır.
Çıktı
API, profiliniz altına eklenen kullanıcıların dizisini döndürür.
Yanıtın yapısı aşağıdaki gibidir:struct response {
string id;
List users[];
}
struct users{
string email;
string first_name;
string last_name;
string account_creation_timestamp;
string invite_url;
bool is_signed_up;
bool is_active;
double storage_used;
int storage_quota;
} - Kullanıcı Davet Et
- Kota (GB) (sınırsız için 0, aksi takdirde >0)
- E-posta [255]
- Geçersiz İstek (HTTP-403)
- Kullanıcı zaten mevcut ve hesabınıza bağlı.
{
error:{
type: 'invalid_request_error',
code: 'user_signed_up',
message: 'Kullanıcı zaten kayıt olmuş'
}
} - E-posta zaten kullanımda (hesabınıza bağlı olmayan bağımsız bir hesap mevcut).
{
error:{
type: 'invalid_request_error',
code: 'email_already_in_use',
message: 'E-posta zaten kullanımda'
}
}
- Maksimum alt hesap zaten davet edilmiş/kayıt olmuş.
{
error:{
type: 'invalid_request_error',
code: 'maximum_limit_reached',
message: 'Maksimum limite ulaşıldı. Lütfen destek ile iletişime geçin.
}
}
- Kullanıcı zaten mevcut ve hesabınıza bağlı.
- Kullanıcı Oluştur
- Kota (GB) (sınırsız için 0, aksi takdirde >0)
- Şifre base64 ile kodlanmış bir dizedir.
- email_notification sağlanırsa ve false olarak ayarlanırsa belirtilen e-posta adresine e-posta bildirimi gönderilmez.
- E-posta [255]
- Şifre [100]
- Ad [64]
- Soyad [64]
- Geçersiz İstek (HTTP-403)
- Kullanıcı zaten mevcut ve hesabınıza bağlı.
{
error:{
type: 'invalid_request_error',
code: 'user_signed_up',
message : 'Kullanıcı zaten kayıt olmuş'
}
} -
E-posta zaten kullanımda (hesabınıza bağlı olmayan bağımsız bir hesap mevcut).
{
error:{
type: 'invalid_request_error',
code: 'email_already_in_use',
message: 'E-posta zaten kullanımda'
}
}
- Kullanıcı zaten mevcut ve hesabınıza bağlı.
- Kullanıcı Düzenle
- email (string, zorunlu)
Güncellenecek kullanıcının e-posta adresi - quota (int, isteğe bağlı)
- GB cinsinden depolama kotası
Kota (GB) (sınırsız için 0, aksi takdirde >0) - email_notification (bool, isteğe bağlı)
False olarak ayarlanırsa kullanıcıya e-posta bildirimi gönderilmez - Geçersiz İstek (HTTP-403)
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message : "Bu e-posta ile hesap mevcut değil'
}
} -
İzin Verilmedi (Geçersiz Güncelleme Girişimi)
{
error:{
type: 'invalid_request_error',
code: 'not_allowed',
message: 'Bu işleme izin verilmiyor. Lütfen destek ile iletişime geçin.'
}
} - email_notification yalnızca kayıt olan kullanıcılar ve yönetilmeyen kullanıcılar için değiştirilebilir
- Yönetilen veya kayıt olmayan kullanıcılar için email_notification güncellemesi not_allowed hatası döndürür
- quota tüm kullanıcılar için güncellenebilir
- Kullanıcıyı Devre Dışı Bırak
- E-posta [255]
- Kullanıcı kayıt olmuş.
- Hesap etkin.
- Geçersiz İstek (HTTP 403)
- Hesap zaten devre dışı.
error:{
type: 'invalid_request_error',
code: 'user_account_already_disabled',
message: 'Kullanıcının hesabı zaten devre dışı'
}
} - Hesap mevcut değil.
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Bu e-posta ile hesap mevcut değil'
}
}
- Hesap zaten devre dışı.
- Kullanıcıyı Etkinleştir
- E-posta [255]
- Kullanıcı kayıt olmuş/oluşturulmuş.
- Kullanıcı hesabı daha önce devre dışı bırakılmış.
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Bu e-posta ile hesap mevcut değil'
}
} - Hesap zaten etkin.
error:{
type: 'invalid_request_error',
code: 'user_account_already_enabled',
message: 'Kullanıcının hesabı zaten etkin'
}
}
- Hesap mevcut değil.
- Kullanıcıyı Kaldır
- Email [255]
- Kullanıcı devre dışı bırakılmış olmalıdır.
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message:'Bu e-posta ile bir hesap mevcut değil'
}
} - Hesap devre dışı bırakılmamış.
{
error:{
type: 'invalid_request_error',
code: 'user_account_not_disabled',
message: 'Kullanıcı hesabı devre dışı bırakılmamış'
}
}
- Hesap mevcut değil.
- Daveti İptal Et
- Email [255]
- Davet Kaldırılmadı
Sağlanan e-posta geçersiz olduğunda, zaten kayıtlı olduğunda veya satıcının hesabıyla ilişkilendirilmediğinde oluşur.
Yanıt
{
"user_removed": false
} - İstek İşlenemedi
API isteği geçersiz olduğunda veya işlenemediğinde oluşur.
Yanıt
{
"message": "İstek işlenemedi"
} - Parola Sıfırlama
- Email [255]
- Alt kullanıcı mevcut değilse
Response (application/JSON) : {
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Bu e-posta adresine sahip hesap mevcut değil'
}
} - Alt kullanıcı kayıtlı değilse
Response (application/JSON) : {
error:{
type: 'invalid_request_error',
code: 'user_not_signed_up',
message: 'Alt kullanıcı kayıtlı değil'
}
} - Alt kullanıcı managed ise
Response (application/JSON) : {
error:{
type: 'invalid_request_error',
code: 'not_allowed',
message: 'Bu işleme izin verilmiyor. Lütfen destek ile iletişime geçin.',
}
} - Depolama Kullanımını Al
- Email [255]
- Kullanıcı kayıtlı olmalıdır.
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Bu e-posta ile hesap mevcut değil'
}
}
- Hesap mevcut değil.
- Etkinlik Kayıtlarını Al
- Email [255]
- Hesap mevcut değil.
Yanıt (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Bu e-posta ile hesap mevcut değil'
}
}
Not:
storage_used (bayt)
storage_quota (GB) (0 : sınırsız, aksi takdirde > 0)
invite_url boş değilse, davet edilen kullanıcı tarafından kayıt olmak için kullanılabilir
Örnek İstekler:
GET /api/reseller/v1/users
GET /api/reseller/v1/users?email=user%40example.com
Curl Örnek İsteği:
Tüm kullanıcıları getir:
curl --request GET 'https://api.idrivee2.com/api/reseller/v1/users' --header 'token: <your api key>'
E-postaya göre kullanıcı getir:
curl --request GET 'https://api.idrivee2.com/api/reseller/v1/users?email=user%40example.com'' --header 'token: <your api key>'
PUT
https://api.idrivee2.com/api/reseller/v1/invite
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, IDrive® e2 üzerinde hesabınıza bağlanacak bir kullanıcı hesabını davet edecektir. Bu API herhangi bir e-posta göndermez; URL'yi kullanıcıyla paylaşmaktan siz sorumlu olacaksınız.
Girdi
string email;
int quota; //isteğe bağlı
Not:
Uzunluk Parametreleri
Çıktı
Başarılı API Yanıtı (application/JSON) şu şekilde olacaktır:
{ email: abc@example.com, invite_url: signup_invite_url_response }
Hata Durumları
Örnek İstek: Gövde (application/JSON)
{
"email": "e2reseller+1@idrivee2.com,"
"quota": 1024
}
Curl Örnek İsteği:
curl --request PUT 'https://api.idrivee2.com/api/reseller/v1/invite'
--data '{
"email": "e2reseller+1@idrivee2.com",
"quota": 1024
}' --header 'token: <your api key>'
PUT
https://api.idrivee2.com/api/reseller/v1/create_user
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, IDrive® e2 üzerinde hesabınıza bağlanacak bir kullanıcı hesabı oluşturacaktır.
Girdi
string email;
string password; //base64 ile kodlanmış dize
string first_name;
string last_name; //last_name isteğe bağlı bir parametredir
int quota;
bool email_notification; //email_notification isteğe bağlı bir parametredir
Not:
Uzunluk Parametreleri
Çıktı
Başarılı API Yanıtı (application/JSON) şu şekilde olacaktır:
{ user_created: true }
Hata Durumları
Örnek İstek: Gövde (application/JSON)
{
"email": "e2reseller+1@idrivee2.com",
"password":"dGVzdDEyMw==",
"first_name":"dev",
"quota": 1024,
"email_notification": false
}
Curl Örnek İsteği:
curl --request PUT 'https://api.idrivee2.com/api/reseller/v1/create_user'
--data '{
"email": "e2reseller+1@idrivee2.com",
"password":"dGVzdDEyMw==",
"first_name":"dev",
"quota": 1024
}' --header 'token: <your api key>'
POST
https://api.idrivee2.com/api/reseller/v1/edit_user
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, bayi hesabınıza bağlı mevcut bir kullanıcı hesabını güncellemenizi sağlar.
Girdi
string email; // zorunlu
int quota; // 0 = sınırsız, >0 = GB
bool email_notification; //isteğe bağlı
Parametreler
Çıktı
Başarı durumunda API Yanıtı (application/JSON) şu şekilde olacaktır:
{ user_updated: true }
Hata Durumları
Örnek İstek: Gövde (application/JSON)
{
"email": "shane@idrive.com",
"quota": 12,
"email_notification": true
}
Curl Örnek İsteği:
curl --request POST
'https://api.idrivee2.com/api/reseller/v1/edit_user' \
--header 'Content-Type: application/json' \
--header 'token: <your_api_key>' \
--data '{
"email":"shane@idrive.com",
"quota":"12",
"email_notification": true
}'
Not:
POST
https://api.idrivee2.com/api/reseller/v1/disable_user
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, kullanıcı hesabını devre dışı bırakır. Kullanıcılar giriş yapamaz, verilere erişemez ve herhangi bir işlem gerçekleştiremez.
Girdi
string email;
Uzunluk Parametreleri
Ön Koşul
Çıktı
Başarı durumunda API Yanıtı (application/JSON) şu şekilde olacaktır:
{ user_disabled : true }
Hata Durumları
Örnek İstek: Gövde (application/JSON)
{
"email":"e2reseller+1@idrivee2.com"
}
Curl Örnek İsteği:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/disable_user'
--data '{
"email":"e2reseller+1@idrivee2.com"
}'
POST
https://api.idrivee2.com/api/reseller/v1/enable_user
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, devre dışı bırakılmış kullanıcı hesaplarını yeniden etkinleştirir. Kullanıcılar giriş yapabilir, verilere erişebilir ve normal işlemleri gerçekleştirebilir.
Girdi
string email;
Uzunluk Parametreleri
Ön Koşul
Çıktı
Başarı durumunda API Yanıtı (application/JSON) şu şekilde olacaktır:
{ user_enabled : true }
Hata Durumları
Örnek İstek :Gövde (application/JSON)
{
"email":"e2reseller+1@idrivee2.com"
}
Curl Örnek İsteği:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/enable_user'
--data '{
"email":"e2reseller+1@idrivee2.com"
}' --header 'token: <your api key>'
POST
https://api.idrivee2.com/api/reseller/v1/remove_user
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, kullanıcıları IDrive® e2'den kalıcı olarak siler.
Not: Bu işlem yapıldığında kullanıcı verileri kalıcı olarak kaybolur.
Girdi
string email;
Uzunluk Parametreleri
Ön Koşul
Çıktı
Başarı durumunda API yanıtı (JSON) şu olur:
{ user_removed : true }
Hata Durumları
Örnek İstek :Gövde (application/JSON)
{
"email":"e2reseller+1@idrivee2.com"
}
Curl Örnek İsteği:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/remove_user'
--data '{
"email":"e2reseller+1@idrivee2.com"
}' --header 'token: <your api key>'
POST
https://api.idrivee2.com/api/reseller/v1/invite/cancel
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, IDrive® e2 üzerindeki davet edilen kullanıcı hesabını iptal eder ve hesabınıza bağlı bağlantıyı kaldırır.
Girdi
string email;
Uzunluk Parametreleri
Çıktı
Başarı durumunda API yanıtı (application/JSON) şu olur:
{ user_removed : true }
Hata Durumları
Curl Örnek İsteği:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/invite/cancel'
--data '{
"email":"e2reseller+1@idrivee2.com"
}' --header 'token: <your api key>'
Alt kullanıcı parola sıfırlama bağlantısını al
POST
https://api.idrivee2.com/api/reseller/v1/subuser/reset_password_link
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, bir reseller alt kullanıcısı için parola sıfırlama bağlantısı oluşturur. Bağlantı, API yanıtında 1 saatlik token süresiyle döndürülür.
Girdi
string email;
Not:
"email" - parola sıfırlama bağlantısı oluşturmak istediğiniz alt kullanıcının e-posta adresi. Alt kullanıcı, isteği yapan reseller'a ait olmalı ve kayıtlı olmalı, ancak managed olmamalıdır.
Çıktı
Başarılı API yanıtı (application/JSON) şöyle olur :
{
"reset_link": "https://domain.com/change_password?link=&expire_session=true&type=0",
"email": "subuser@example.com"
}
Uzunluk Parametreleri
Geçersiz API anahtarı için kimlik doğrulama hatası
Response (application/JSON) : {
error:{
type: 'authentication_error',
code: 'unauthorized',
message: 'Kimlik doğrulama başlığı eksik/geçersiz',
}
}
Örnek İstek :Gövde (application/JSON)
{
"email":"subuser@example.com",
}
Curl Örnek İsteği:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/subuser/reset_password_link'
--data '{
"email":"subuser@example.com"
}' --header 'token: <your api key>'
POST
https://api.idrivee2.com/api/reseller/v1/usage_stats
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, sağlanan kullanıcı için IDrive® e2 kullanım dizisini döndürür.
Girdi
{
string email;
string date_from;
string date_to;
}
date_from(ISO8601)(başlangıç tarihi)
date_to(ISO8601) (bitiş tarihi)
Uzunluk Parametreleri
Ön Koşullar
Çıktı
usage_stats yapısının dizisi
struct usage_stats{
double downloads;
double uploads;
double disk_used;
string date;
}
downloads, uploads, disk_used bayt cinsindendir
Hata Durumları
Örnek İstek :Body (application/JSON)
{
"email":"e2reseller+1@idrivee2.com",
"date_to":"2022-08-31",
"date_from":"2022-08-01"
}
Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/usage_stats'
--data '{
"email": "DEV-TEST+1@idrivee2.com",
"date_to":"2022-08-31",
"date_from":"2022-08-01"
}' --header 'token: <your api key>'
POST
https://api.idrivee2.com/api/reseller/v1/user_activity_history
Click to copyLink copied
Bu API, bir kullanıcının belirli bir tarih aralığındaki etkinlik kayıtlarını getirir.
Girdi
string email;
string start_date;
string end_date;
int page_no;
Uzunluk Parametreleri
Not
start_date (ISO8601) - Başlangıç tarihi
end_date (ISO8601) - Bitiş tarihi
page_no - API sayfalandırılmıştır ve her sayfa 200 kayıt içerir
ve page_no değeri 1'den başlar
Çıktı
Başarılı durumda API yanıtı (application/JSON) şöyle olur:
struct response {
List[] logs;
struct pagination;
}
struct logs {
string timestamp;
string description;
string ip;
}
struct pagination {
int total_records;
int page_no;
int records_per_page;
}
Özel Hata Durumu
Örnek İstek :Body (application/JSON)
{
"email": "abc1@example.com",
"start_date": "2025-04-05",
"end_date": "2025-05-28",
"page_no": 1
}
Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/user_activity_history'
--data '{
"email": "abc1@example.com",
"start_date": "2025-04-05",
"end_date": "2025-05-28",
"page_no": 1
}' --header 'token: <your api key>'
Depolama İşlemleri
- Bölgeleri Listele
GET
https://api.idrivee2.com/api/reseller/v1/regions
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, IDrive® e2 için bölgelerden oluşan bir dizi döndürür.
Çıktı
struct regions{
string region_key;
string region_name;
string country;
string region_code;
bool active;
bool hdd_storage;
string cors;
}Not: Yalnızca aktif bölgeler kullanıcı için etkinleştirilebilir.
Örnek İstek: Bölgeleri Listele
curl --request GET 'https://api.idrivee2.com/api/reseller/v1/regions' --header 'token: <your api key>' - Kullanıcı için Bölge Etkinleştir
- E-posta [255]
- Bölge[5]
- Mevcut kullanıcı hesabı.
- Bölge kullanıcı için etkinleştirilmemiş olmalıdır.
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Account with this email does not exist'
}
} - Depolama bölgesi kullanıcı için zaten etkinleştirilmiş.
{
error:{
type: 'invalid_request_error',
code: 'region_already_enabled',
message: 'Storage region already enabled for user'
}
} - Kullanıcı devre dışı.
{
error:{
type: 'invalid_request_error',
code: 'user_disabled',
message: 'User Disabled'
}
} - Hesabınız için ödeme başarısız oldu.
{
error:{
type: 'invalid_request_error',
code: 'payment_failed',
message: 'Account expired please update payment info'
}
}
- Hesap mevcut değil.
- Kullanıcının Etkinleştirilmiş Bölgelerini Listele
POST
https://api.idrivee2.com/api/reseller/v1/list_user_regions
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, kullanıcının tüm etkinleştirilmiş bölgelerini listeler.
Girdi
{
string email;
}Uzunluk Parametreleri
- E-posta [255]
Ön Koşul
- Mevcut kullanıcı hesabı.
Çıktı
Başarılı durumda API Yanıtı(application/JSON) şu şekilde olacaktır:
{
user_regions: /*lists user enabled regions*/
}Hata Durumları
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Account with this email does not exist'
}
} - Kullanıcı devre dışı.
{
error:{
type: 'invalid_request_error',
code: 'user_disabled',
message: 'User Disabled'
}
}
- Hesap mevcut değil.
Örnek İstek: Gövde (application/JSON)
{
"email":"e2reseller+1@idrivee2.com"
}Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/list_user_regions'
--data '{
"email":"e2reseller+1@idrivee2.com"
}' --header 'token: <your api key>' - Kullanıcıya Atanan Bölgeyi Kaldır
- E-posta [255]
- Storage_dn[128]
- Kullanıcı kaydolmuş olmalıdır.
- Depolama kullanıcıya atanmış olmalıdır.
- Kullanıcı tarafından oluşturulmuş kova yok
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Account with this email does not exist'
}
} - Depolama mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'storage_non_existant',
message: 'Storage does not exists'
}
} - Depolama boş değil.
{
error:{
type: 'invalid_request_error',
code: 'storage_not_empty',
message: 'Storage not empty. To avoid user data loss, this request will not be
processed. To remove this storage, please disable the user first and try again'
}
}
- Hesap mevcut değil.
- Kullanıcı bölgesi için cors ayarlarını güncelle
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Account with this email does not exist'
}
} - Depolama mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'storage_non_existant',
message: 'Storage does not exists'
}
} - Geçersiz cors parametreleri.
{
error:{
type: 'invalid_request_error',
code: 'invalid_cors_policy',
message: 'The cors policy is invalid' / 'Maximum 10 cors are allowed'
}
}
- Hesap mevcut değil.
- Erişim Anahtarı Ekle
- Kullanıcı kaydolmuş/oluşturulmuş ve etkinleştirilmiş olmalıdır.
- Depolama DN ilgili kullanıcıya atanmış olmalıdır.
- Sağlanmışsa kovalar boş olmamalıdır.
- E-posta [255]
- storage_dn[128]
- Ad[64]
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Account with this email does not exist'
}
} - Depolama mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'storage_non_existant',
message: 'Storage does not exists'
}
} - Kullanıcı devre dışı.
{
error:{
type: 'invalid_request_error',
code: 'user_disabled',
message: 'User Disabled'
}
}
- Hesap mevcut değil.
- Erişim Anahtarlarını Listele
- E-posta [255]
- storage_dn[128]
- Kullanıcı kaydolmuş/oluşturulmuş ve etkinleştirilmiş olmalıdır.
- Depolama kullanıcıya atanmış olmalıdır.
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Account with this email does not exist'
}
} - Depolama mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'storage_non_existant',
message: 'Storage does not exist'
}
} - Kullanıcı devre dışı.
{
error:{
type: 'invalid_request_error',
code: 'user_disabled',
message: 'User Disabled '
}
}
- Hesap mevcut değil.
POST
https://api.idrivee2.com/api/reseller/v1/enable_user_region
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, kullanıcı için bölgeleri etkinleştirir.
Girdi
{
string email;
string region;
}
region : bölge listesi API'sinden alınan region_key. Örn. "TX", "LDN" vb.
API, erişim anahtarı ve gizli anahtar kullanılarak kullanıcı depolamasına erişilebilecek etkinleştirilmiş bölge için depolama DN (alan adı) döndürür.
Uzunluk Parametreleri
Ön Koşul
Çıktı
Başarılı durumda API Yanıtı(application/JSON) şu şekilde olacaktır:
{ storage_added: true, storage_dn: /*user_storage_dns*/ }
Hata Durumları
Örnek İstek: Gövde (application/JSON)
{
"email":"e2reseller+1@idrivee2.com",
"region": "NY"
}
Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/enable_user_region'
--data '{
"email":"e2reseller+1@idrivee2.com",
"region": "NY"
}' --header 'token: <your api key>'
POST
https://api.idrivee2.com/api/reseller/v1/remove_user_region
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, kullanıcıya atanan bir bölgeyi kaldırır.
Girdi
{
string email;
string storage_dn;
}
'storage_dn', kaldırmak istediğiniz kullanıcıya atanan depolama alan adıdır.
Uzunluk Parametreleri
Ön Koşul
Lütfen bu işlemin kullanıcı verilerinin silinmesiyle sonuçlanacağını unutmayın.
API, kullanıcı bölgesini kaldırmanıza şu durumlarda izin verir:
Kullanıcı devre dışı durumda
Çıktı
Başarılı durumda API, Yanıt (JSON) döndürecektir:
{removed : true}
Hata Durumları
Örnek İstek: Gövde (application/JSON)
{
"email":"e2reseller+1@idrivee2.com",
"storage_dn": "abcd.test@idrivee2.com"
}
Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/remove_user_region'
--data '{
"email":"e2reseller+1@idrivee2.com",
"storage_dn": "abcd.test@idrivee2.com"
}' --header 'token: <your api key>'
Yöntem: POST
URL: https://api.idrivee2.com/api/reseller/v1/storage/set_cors
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, bir bölge için cors ayarlarını güncelleyecektir.
İçerik türü: application/json
Başlık API Anahtarı:
'token': <your token>
Zorunlu Parametre:
body : {
"email": "test@test.com",
"storage_dn": "cxan.tx21.edgedrive.com",
"cors": "test1.com,test2.com,test3.com",
}
Zorunlu Parametreler: email,storage_dn,cors
Parametre uzunluk sınırları: email[255],storage_dn[128], cors (virgülle ayrılmış en fazla 10 alan adı)
NOT: Tüm cors için cors değerini "*" olarak ayarlayabilirsiniz; bu aynı zamanda tüm bölgelerdeki varsayılan cors değeridir.
Çıktı
Başarılı durumda API, Yanıt (application/JSON) döndürecektir:
{
cors_updated: true
}
Hata Durumları
Curl istek örneği:
curl --location --request POST
https://api.idrivee2.com/api/reseller/v1/storage/set_cors\
--header 'token: <your token>' \
--header 'Content-Type: application/json' \
--data-raw '{
"email":"test@test.com",
"storage_dn":"cxan.tx21.edgedrive.com",
"cors":"test1.com,test2.com,test3.com",
}'
POST
https://api.idrivee2.com/api/reseller/v1/create_access_key
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, depolama erişimi için bir Erişim Anahtarı oluşturur ve Erişim Anahtarı Kimliğini ile Gizli Anahtarı döndürür.
Girdi
{
string email;
string storage_dn;
string name;
int permissions;
array buckets; //buckets isteğe bağlı bir parametredir
}
Kovalar: Depolamaya erişmek için belirli kovalar için erişim anahtarı oluşturmak amacıyla kova adlarının bir listesini sağlayın. Erişim anahtarı tüm kovalar için ise 'buckets' girişi gerekli değildir.
Ön Koşul
Uzunluk Parametreleri
Erişim Anahtarı İzinleri Numaralandırması:
{
0: Okuma erişimi
1: Yazma erişimi
2: Okuma/Yazma erişimi
}
Çıktı
Başarılı durumda API, Yanıt (application/JSON) döndürecektir:
{
created: true,
data: {
access_key: /access key/
secret_key: /* secret key*/
}
}
Hata Durumları
Örnek İstek: Gövde (application/JSON)
{
"email":"e2reseller+1@idrivee2.com",
"storage_dn":"abcd.test@idrivee2.com",
"name":"myaccesskeyname",
"permissions":0
}
Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/create_access_key'
--data '{
"email":"e2reseller+1@idrivee2.com",
"storage_dn":"abcd.test@idrivee2.com",
"name":"myaccesskeyname",
"permissions":0
}' --header 'token: <your api key>'
POST
https://api.idrivee2.com/api/reseller/v1/list_access_keys
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, depolama için tüm Erişim Anahtarlarını listeler.
Girdi
{
string email;
string storage_dn;
}
'storage_dn', tüm erişim anahtarlarını listelemek istediğiniz kullanıcıya atanan depolama alan adıdır.
Uzunluk Parametreleri
Ön Koşul
Çıktı
Başarılı durumda API, Yanıt(application/JSON) döndürecektir:
{
'storage_dn' : /*user_storage_dns*/,
'access_keys' : [
{
'key_id' : /*key_id*/,
'name' : /*key_name*/,
'creation_date' : /*date_of_key_creation*/,
'description' : /*description_of_access_key_permissions*/
},
{...},
…
]
}
Hata Durumları
Örnek İstek: Gövde (application/JSON)
{
"email" : "e2reseller+1@idrivee2.com",
"storage_dn" : "abcd.test.idrivee2.com"
}
Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/list_access_keys'
--data '{
"email":"e2reseller+1@idrivee2.com",
"storage_dn":"abcd.test.idrivee2.com",
}' --header 'token:<your api key>'
POST
https://api.idrivee2.com/api/reseller/v1/remove_access_key
Click to copyLink copied
Bu API, depolama alanına ait Erişim Anahtarını kaldırır.
Girdi
{
string email;
string storage_dn;
string access_key;
}
Uzunluk Parametreleri
- Email [255]
- storage_dn[128]
- access_key[128]
Ön Koşul
- Kullanıcı kayıt olmuş/oluşturulmuş ve etkinleştirilmiş.
- Kullanıcıya depolama alanı atanmış.
- Depolama alanı için erişim anahtarı mevcut.
Çıktı
Başarı durumunda API, Yanıt (application/JSON) döndürür:
{removed : true}
Hata Durumları
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Account with this email does not exist'
}
} - Depolama alanı mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'storage_non_existant',
message: 'Storage does not exists'
}
} - Kullanıcı devre dışı.
{
error:{
type: 'invalid_request_error',
code: 'user_disabled',
message: 'User Disabled'
}
} - Erişim anahtarı mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'access_key_non_existant',
message: 'Access key does not exist, please provide a valid access key'
}
}
- Hesap mevcut değil.
Örnek İstek: Gövde (application/JSON)
{
"email":"e2reseller+1@idrivee2.com",
"storage_dn":"abcd.test@idrivee2.com",
"access_key":"<ACCESS-KEY-ID>"
}
Curl Örnek İstek:
curl --location --request POST 'https://api.idrivee2.com/api/reseller/v1/remove_access_key'
--data '{
"email":"e2reseller+1@idrivee2.com",
"storage_dn":"abcd.test@idrivee2.com",
"access_key":"<your access key>"
}' --header 'token: <your api key>'
Whitelabeling İşlemleri
- CNAME Ekle
POST
https://api.idrivee2.com/api/reseller/v1/storage/cname/add
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, belirtilen depolama dns'i için CNAME ekler.
Girdi
{
string email;
string storage_dn;
string cname;
string public_key;
string private_key;
string file_index;
string passphrase; // isteğe bağlı, yalnızca şifreli özel anahtar durumunda gönderilmesi gerekir
}'storage_dn', kullanıcıya atanan depolama alanı etki alanıdır.
'CNAME', atanması gereken yeni CNAME'dir.
'file_index' isteğe bağlı bir parametredir.
Uzunluk Parametreleri
- email[255]
- storage_dn[128]
- CNAME[128]
- public_key[10000]
- private_key[6000]
- file_index[64]
- passphrase[255]
Ön Koşul
- Kullanıcı kaydolmuş/oluşturulmuş ve etkinleştirilmiş olmalıdır.
- Kullanıcıya depolama alanı atanmış olmalıdır.
- storage_dn, Kullanıcı Etkin Bölgelerini Listele API'sinden elde edilen kiracı uç noktası olmalıdır.
Çıktı
Başarı durumunda API, Response(application/JSON) döndürür:
{ 'cname_added' : true }Hata Durumları
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Account with this email does not exist'
}
} - CNAME kullanılamaz
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'this CNAME cannot be used, please try changing your CNAME'
}
} - Depolama Alanı Etki Alanı mevcut değil; storage_dns yanlışsa
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'Unable to retrieve storage info for given storage_dn'
}
} - CNAME zaten yapılandırılmışsa
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'CNAME already configure'
}
} - Geçersiz CNAME veya Sertifikalar; genel/özel anahtarlar yanlışsa
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'Could not verify CNAME or certificates. Please try again'
}
}
- Hesap mevcut değil.
- Sunucu Hatası (HTTP 500)
- Bu istek işlenemiyor
{
error:{
type: 'api_error',
code: 'request_processing_failed',
message: 'Unable to process this request, please try again later'
}
} - Verilen dns için veri bulunamadı
{
error:{
type: 'api_error',
code: 'request_processing_failed',
message: 'data not found for given dns'
}
}
- Bu istek işlenemiyor
Örnek İstek: Gövde (application/JSON)
{
"email": "e2reseller+1@idrivee2.com",
"storage_dn": "abcd.test.idrivee2.com",
"cname" : "example.mycloud.io",
"public_key" : "...",
"private_key" : "...",
"file_index" : "1"
}Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/storage/cname'
--data'{
"email": "e2reseller+1@idrivee2.com",
"storage_dn": "abcd.test.idrivee2.com",
"cname" : "example.mycloud.io",
"public_key" : "...",
"private_key" : "...",
"file_index" : "1"
}'--header 'token:<your api key>' - CNAME'leri Listele
POST
https://api.idrivee2.com/api/reseller/v1/storage/cname
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, depolama alanı için tüm CNAME'leri listeler.
Girdi
{
string email;
string storage_dn;
}'storage_dn', tüm CNAME'lerini listelemek istediğiniz kullanıcıya atanan depolama alanı etki alanıdır.
Uzunluk Parametreleri
- email[255]
- storage_dn[128]
Ön Koşul
- Kullanıcı kaydolmuş/oluşturulmuş ve etkinleştirilmiş olmalıdır.
- Kullanıcıya depolama alanı atanmış olmalıdır.
- storage_dn, Kullanıcı Etkin Bölgelerini Listele API'sinden elde edilen kiracı uç noktası olmalıdır.
Çıktı
Başarı durumunda API, Response(application/JSON) döndürür:
{
'cname_list' : [
{
file_index: /*file_index*/,
cname: /*cname*/,
certificate_info: /*isValidSsl.certInfo*/
creation_date: /*creation_date*/
}
{...},
]
}
Hata Durumları
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Account with this email does not exist'
}
} - Kullanıcı devre dışı bırakıldı.
{
error:{
type: 'invalid_request_error',
code: 'user_disabled',
message: 'User Disabled'
}
}
- Hesap mevcut değil.
- Sunucu Hatası (HTTP 500)
- Bu istek işlenemiyor
{
error:{
type: 'api_error',
code: 'request_processing_failed',
message: 'Unable to process this request, please try again later'
}
} - Verilen dns için veri bulunamadı
{
error:{
type: 'api_error',
code: 'request_processing_failed',
message: 'data not found for given dns'
}
}
- Bu istek işlenemiyor
Örnek İstek: Gövde (application/JSON)
{
"email": "e2reseller+1@idrivee2.com",
"storage_dn": "abcd.test.idrivee2.com",
}Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/storage/cname'
--data'{
email: "e2reseller+1@idrivee2.com",
storage_dn: abcd.test.idrivee2.com,
}'--header 'token:<your api key>' - CNAME'leri Güncelle
POST
https://api.idrivee2.com/api/reseller/v1/storage/cname/update
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, belirtilen depolama dns'i için CNAME'i günceller.
Girdi
{
string region_key;
string email;
string storage_dn;
string cname;
string public_key;
string private_key;
string file_index;
string passphrase; // isteğe bağlı, yalnızca şifreli özel anahtar durumunda gönderilmesi gerekir
}'storage_dn', kullanıcıya atanan depolama alanı etki alanıdır.
'CNAME', mevcut CNAME ile değiştirilmesi gereken yeni CNAME'dir.
'file_index' isteğe bağlı bir parametredir.
Uzunluk Parametreleri
- email[255]
- storage_dn[128]
- CNAME[128]
- public_key[10000]
- private_key[6000]
- file_index[64]
- passphrase[255]
Ön Koşul
- Kullanıcı kaydolmuş/oluşturulmuş ve etkinleştirilmiş olmalıdır.
- Kullanıcıya depolama alanı atanmış olmalıdır.
- storage_dn, Kullanıcı Etkin Bölgelerini Listele API'sinden elde edilen kiracı uç noktası olmalıdır.
Çıktı
Başarı durumunda API, Response(application/JSON) döndürür:
{ 'cname_updated' : true }Hata Durumları
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Account with this email does not exist'
}
} - CNAME kullanılamaz; CNAME idrive etki alanıysa
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'this CNAME cannot be used, please try changing your CNAME'
}
} - Depolama Alanı Etki Alanı mevcut değil; storage_dns yanlışsa
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'Unable to retrieve storage info for given storage_dn'
}
} - storage_dn yanlışsa
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'Unable to retrieve storage info for given storage_dn'
}
} - Depolama sunucusuna erişilemiyor; etki alanı mevcut değil; storage_dns kullanılamıyorsa
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'Storage server cannot be reached right now, please try again later'
}
} - CNAME zaten yapılandırılmışsa
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'CNAME already configured'
}
} - Geçersiz CNAME veya Sertifikalar; genel/özel anahtarlar yanlışsa
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'Could not verify CNAME or certificates. Please try again'
}
} - Kullanıcı devre dışı bırakıldı
{
error:{
type: 'invalid_request_error',
code: 'user_disabled',
message: 'User Disabled'
}
}
- Hesap mevcut değil.
- Sunucu Hatası (HTTP 500)
- Bu istek işlenemiyor
{
error:{
type: 'api_error',
code: 'request_processing_failed',
message: 'Unable to process this request, please try again later'
}
} - Verilen dns için veri bulunamadı
{
error:{
type: 'api_error',
code: 'request_processing_failed',
message: 'data not found for given dns'
}
}
- Bu istek işlenemiyor
Örnek İstek: Gövde (application/JSON)
{
"email": "e2reseller+1@idrivee2.com",
"storage_dn": "abcd.test.idrivee2.com",
"cname" : "example.mycloud.io",
"public_key" : "...",
"private_key" : "...",
"file_index" : "1"
}Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/storage/cname/update
--data'{
"email": "e2reseller+1@idrivee2.com",
"storage_dn": "abcd.test.idrivee2.com",
"cname" : "example.mycloud.io",
"public_key" : "...",
"private_key" : "...",
"file_index" : "1"
}'--header 'token:<your api key>' - CNAME'leri Kaldır
POST
https://api.idrivee2.com/api/reseller/v1/storage/cname/remove
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, depolama dns'i için CNAME'i kaldırır.
Girdi
{
string email;
string storage_dn;
string cname;
}'storage_dn', kullanıcıya atanan depolama alanı etki alanıdır.
CNAME: kaldırılması gereken CNAME'i girin.
Uzunluk Parametreleri
- email[255]
- storage_dn[128]
- CNAME[128]
Ön Koşul
- Kullanıcı kaydolmuş/oluşturulmuş ve etkinleştirilmiş olmalıdır.
- Kullanıcıya depolama alanı atanmış olmalıdır.
- CNAME, depolama alanı etki alanıyla eşlenmiş olmalıdır.
- storage_dn, Kullanıcı Etkin Bölgelerini Listele API'sinden elde edilen kiracı uç noktası olmalıdır.
Çıktı
Başarı durumunda API, Response(application/JSON) döndürür:
{ 'cname_removed' : true }Hata Durumları
- Geçersiz İstek (HTTP 403)
- Hesap mevcut değil.
{
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Account with this email does not exist'
}
} - Kullanıcı devre dışı bırakıldı
{
error:{
type: 'invalid_request_error',
code: 'user_disabled',
message: 'User Disabled'
}
} - CNAME kullanılamaz
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'this CNAME cannot be used, please try changing your CNAME'
}
} - Depolama Alanı Etki Alanı mevcut değil
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'Unable to retrieve storage info for given storage_dn'
}
} - Depolama sunucusuna erişilemiyor
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'Storage server cannot be reached right now, please try again later'
}
} - Depolama alanı etki alanı için CNAME mevcut değil
{
error:{
type: 'invalid_request_error',
code: 'request_processing_failed',
message: 'cannot get cname details'
}
} - CNAME kaldırılamadı; CNAME kaldırılamıyor
{
error:{
type: 'api_error',
code: 'request_processing_failed',
message: 'Unable to process this request, please try again later'
}
}
- Hesap mevcut değil.
- Sunucu Hatası (HTTP 500)
- Bu istek işlenemiyor
{
error:{
type: 'api_error',
code: 'request_processing_failed',
message: 'Unable to process this request, please try again later'
}
} - Verilen dns için veri bulunamadı
{
error:{
type: 'api_error',
code: 'request_processing_failed',
message: 'data not found for given dns'
}
}
- Bu istek işlenemiyor
Örnek İstek: Gövde (application/JSON)
{
"email": "e2reseller+1@idrivee2.com",
"storage_dn": "abcd.test.idrivee2.com",
"cname" : "example.mycloud.io"
}Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/reseller/v1/storage/cname/remove
--data'{
"email": "e2reseller+1@idrivee2.com",
"storage_dn": "abcd.test.idrivee2.com",
"cname" : "example.mycloud.io"
}'--header 'token:<your api key>'
Alt Kullanıcı İşlemleri
IDrive® e2 Alt Kullanıcı API'si, bayi hesapları için desteklenmektedir. Bir bayi yöneticisi, hesapları altındaki herhangi bir kullanıcı adına bu API'leri çağırabilir. Başka bir deyişle, bayi yöneticisi kendi API anahtarını kullanarak ilişkili kullanıcılarından herhangi biri için alt kullanıcı yönetimi işlemlerini gerçekleştirebilir.
Bu işlevselliği etkinleştirmek için tüm API isteklerinin ek bir zorunlu parametre içermesi gerekir: admin_email. İstek gövdesine admin_email parametresi eklenmeden yapılan istekler bayi hesapları tarafından işlenmeyecektir.
Numaralandırmalar:
Alt Kullanıcı İzinleri:
{
0: Okuma erişimi,
1: Yazma erişimi,
2: Okuma/Yazma erişimi
}
- Alt kullanıcıyı davet et
PUT
https://api.idrivee2.com/api/subusers/v1/invite
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, istekte belirtilen alt kullanıcı e-postasına alt kullanıcı hesabı oluşturma daveti gönderir.
Girdi
string subuser_email;
boolean disable_delete_object; // isteğe bağlı
int permissions;
boolean is_admin;
boolean sso_login; // isteğe bağlı
boolean allow_session_timeout_settings;
int idle_timeout;
boolean concurrent_sessions;
boolean allow_concurrent_session_settings;
Object[] storage_access; // isteğe bağlı
string admin_email;
Not:
- "subuser_email" - daveti göndermek istediğiniz alt kullanıcının e-posta adresi
- "disable_delete_object" - false olarak gönderilirse alt kullanıcının nesne silme işlemi yapmasına izin veren bir boolean, varsayılan değer true'dur
- "pemissions" - 0 = Yalnızca okuma izni, 1 = Yalnızca yükleme izni ve 2 = Okuma ve Yazma izinleri olan bir enum parametresi
- "is_admin" - true olarak gönderildiğinde alt kullanıcıyı yönetici alt kullanıcı yapmak için kullanılan bir boolean. Bu bayrağı true olarak ayarlamak, alt kullanıcılara tüm depolama erişimi (Okuma ve Yazma) izinleri verir.
- "sso_login" - alt kullanıcı için SSO girişinin etkin olup olmadığını belirleyen bir boolean
- "allow_session_timeout_settings" - true olarak gönderilirse alt kullanıcının oturum zaman aşımı ayarlarını yapılandırmasına izin veren bir boolean
- "idle_timeout" - yönetici kullanıcının alt kullanıcılar için oturum zaman aşımını (saniye cinsinden) yapılandırmak istemesi durumunda. İzin verilen maksimum değer 3600 saniyedir (1 saat)
- "concurrent_sessions" - true olarak gönderilirse alt kullanıcının birden fazla eşzamanlı oturuma sahip olmasına izin veren bir boolean
- "allow_concurrent_session_settings" - true olarak gönderilirse alt kullanıcının birden fazla eşzamanlı oturum ayarlarını yapılandırmasına izin veren bir boolean
- "storage_access" - yöneticinin alt kullanıcının yalnızca belirli kovanlara erişmesini istemesi durumunda izin nesnelerinden oluşan bir dizi. Örneğin, yönetici kullanıcı alt kullanıcının Chicago Bölgesinde "bucket1" ve "bucket2"ye, İrlanda bölgesinde "bucket3" ve "bucket4"e erişmesini istiyorsa, yönetici storage_access dizisini aşağıdaki gibi ayarlamalıdır:
[
{
"storage_dn": "h4l1.ch.idrivee2-29.com", // Chicago Bölgenizin S3 uç noktası
"buckets": [
"bucket1", "bucket2"
]
},
{
"storage_dn": "r8l2.ie.idrivee2-44.com", // İrlanda Bölgenizin S3 uç noktası
"buckets": [
"bucket3", "bucket4"
]
}
]"storage_access"in isteğe bağlı bir parametre olduğunu ve yalnızca yönetici kullanıcı alt kullanıcıya kova düzeyinde erişimi kontrol etmek istiyorsa gönderilmesi gerektiğini lütfen unutmayın.
Çıktı
Başarılı API Yanıtı (application/JSON) şu şekilde olacaktır:
{
result: "invite successful",
invite_url: "invitation url string"
}Uzunluk Parametreleri
- email[255]
- Hesabınız için izin verilen alt kullanıcı sayısı sınırını aşarsanız
Yanıt (application/JSON) :{
error: {
type: 'invalid_request_error',
code: 'maximum_limit_reached',
message: <sınırınız hakkında bilgi>
}
} -
sso_login true olarak gönderildiğinde ve SSO yapılandırılmamış olduğunda
Yanıt (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'sso_not_configured',
message: 'SSO is not configured'
}
}Örnek İstek: Gövde (application/JSON)
{
"subuser_email": "abc1@example.com",
"storage_access": [
{
"storage_dn": "h4l1.ch.idrivee2-29.com",
"buckets": [
"bucket1",
"bucket2"
]
},
{
"storage_dn": "r8l2.ie.idrivee2-44.com",
"buckets": [
"bucket3",
"bucket4"
]
}
],
"disable_delete_object": true,
"permissions": 0,
"is_admin": false,
"sso_login": false,
"allow_session_timeout_settings": false,
"idle_timeout": 300,
"concurrent_sessions": true,
"allow_concurrent_session_settings": false,
"admin_email": "abc@example.com"
}Curl Örnek İsteği:
curl --request PUT 'https://api.idrivee2.com/api/subusers/v1/invite'
--data '{
"subuser_email": "abc1@example.com",
"storage_access": [
{
"storage_dn": "h4l1.ch.idrivee2-29.com",
"buckets": [
"bucket1",
"bucket2"
]
},
{
"storage_dn": "r8l2.ie.idrivee2-44.com",
"buckets": [
"bucket3",
"bucket4"
]
}
],
"disable_delete_object": true,
"permissions": 0,
"is_admin": false,
"sso_login": false,
"allow_session_timeout_settings": false,
"idle_timeout": 300,
"concurrent_sessions": true,
"allow_concurrent_session_settings": false,
"admin_email": "abc@example.com"
}' --header 'token: <api anahtarınız>' -
Tüm alt kullanıcıları listele
POST
https://api.idrivee2.com/api/subusers/v1/list
Kopyalamak için tıklayınBağlantı kopyalandı
Bu, profiliniz altına eklenen tüm alt kullanıcıları görüntüler.
Girdi
string admin_email;
Çıktı
API, profiliniz altına eklenen kullanıcıların dizisini döndürür.
Yanıtın yapısı aşağıdaki gibidir:struct response {
List users[];
}
struct users {
string email;
string first_name;
string last_name;
Object[] storage_access;
string account_creation_timestamp;
string invite_url;
bool is_admin;
bool signed_up;
int permissions;
bool disable_delete_object;
bool sso_login;
int idle_timeout;
bool concurrent_sessions;
bool allow_session_timeout_settings;
bool allow_concurrent_session_settings;
}Not
Kullanıcı nesnesi parametreleri, davet API'sinde açıklanan istek gövdesi parametrelerine karşılık gelir. Referans için lütfen davet API'sine bakın.Curl Örnek İsteği
curl --request POST 'https://api.idrivee2.com/api/subusers/v1/list'
--data '{
"admin_email": "abc@example.com"
}'
--header 'token: <api anahtarınız>' -
Alt kullanıcı oluştur
PUT
https://api.idrivee2.com/api/subusers/v1/create_account
Kopyalamak için tıklayınBağlantı kopyalandı
Bu, hesabınıza bağlı olacak bir alt kullanıcı hesabı oluşturur.
Girdi
string subuser_email;
boolean disable_delete_object; // isteğe bağlı
int permissions;
boolean is_admin;
boolean sso_login; // isteğe bağlı
boolean allow_session_timeout_settings;
int idle_timeout;
boolean concurrent_sessions;
boolean allow_concurrent_session_settings;
Object[] storage_access; // isteğe bağlı
string admin_email;
string first_name;
string last_name; // isteğe bağlı
string password; // base64 ile kodlanmış dize
Not
İstek gövdesi parametrelerinin ayrıntıları için Alt Kullanıcı Davet API'sine başvurabilirsiniz.Uzunluk Parametreleri
- E-posta [255]
- Şifre [100]
- Ad [64]
- Soyad [64]
Çıktı
Başarı durumunda API Yanıtı (application/JSON) şu şekilde olacaktır:{ success: true }Özel Hata Durumu
- Hesabınız için izin verilen alt kullanıcı sayısı sınırını aşarsanız
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'maximum_limit_reached',
message: 'sınırınız hakkında bilgi'
}
} - Depolama alanı mevcut değil.
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'storage_non_existant',
message: 'Depolama alanı mevcut değil'
}
} - Kullanıcı zaten mevcut
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'user_already_signedup',
message: 'Kullanıcı kayıt olmuş'
}
} -
sso_login true olarak gönderilirse ve SSO yapılandırılmamışsa
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'sso_not_configured',
message: 'SSO yapılandırılmamış'
}
}
Örnek İstek :Gövde (application/JSON)
{
"subuser_email": "abc1@example.com",
"storage_access": [
{
"storage_dn": "h4l1.ch.idrivee2-29.com",
"buckets": [
"bucket1",
"bucket2"
]
},
{
"storage_dn": "r8l2.ie.idrivee2-44.com",
"buckets": [
"bucket3",
"bucket4"
]
}
],
"disable_delete_object": true,
"permissions": 0,
"is_admin": false,
"sso_login": false,
"allow_session_timeout_settings": false,
"idle_timeout": 300,
"concurrent_sessions": true,
"allow_concurrent_session_settings": false,
"first_name": "jack",
"last_name": "russell",
"password": "dGVzdDEyMw==",
"admin_email": “abc@example.com”
}Curl Örnek İstek:
curl --request PUT 'https://api.idrivee2.com/api/subusers/v1/create_account'
--data '{
"subuser_email": "abc1@example.com",
"storage_access": [
{
"storage_dn": "h4l1.ch.idrivee2-29.com",
"buckets": [
"bucket1",
"bucket2"
]
},
{
"storage_dn": "r8l2.ie.idrivee2-44.com",
"buckets": [
"bucket3",
"bucket4"
]
}
],
"disable_delete_object": true,
"permissions": 0,
"is_admin": false,
"sso_login": false,
"allow_session_timeout_settings": false,
"idle_timeout": 300,
"concurrent_sessions": true,
"allow_concurrent_session_settings": false,
"first_name": "jack",
"last_name": "russell",
"password": "dGVzdDEyMw==",
"admin_email": “abc@example.com”
}' --header 'token: <your api key>' - Alt kullanıcıyı devre dışı bırak
POST
https://api.idrivee2.com/api/subusers/v1/disable
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, alt kullanıcı hesabını devre dışı bırakır. Alt kullanıcılar giriş yapamaz, verilere erişemez ve herhangi bir işlem gerçekleştiremez.
Girdi
string subuser_email;
string admin_email;
bool email_notification; // e-posta bildirimi yalnızca bu parametre true olarak ayarlandığında alt kullanıcıya gönderilir
Uzunluk Parametreleri
- E-posta [255]
Ön Koşul
- Kullanıcı kayıt olmuş.
- Hesap etkin.
Çıktı
Başarı durumunda API Yanıtı (application/JSON) şu şekilde olacaktır:{ success: true }Özel Hata Durumu
- Alt kullanıcı kayıt olmamışsa
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'user_not_signed_up',
message: 'Alt kullanıcı kayıt olmamış'
}
} - Alt kullanıcı hesabı zaten devre dışıysa
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'user_account_already_disabled',
message: 'Kullanıcı hesabı zaten devre dışı'
}
} - Hesap mevcut değil
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Bu e-posta ile ilişkili hesap mevcut değil'
}
}
Örnek İstek: Gövde (application/JSON)
{
"subuser_email": "abc1@example.com",
"admin_email": "admin1@example.com",
"email_notification": true
}Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/subusers/v1/disable'
--data '{
"subuser_email": "abc1@example.com",
"admin_email": "admin1@example.com",
"email_notification": true
}' --header 'token: <api anahtarınız>' - Alt kullanıcıyı etkinleştir
POST
https://api.idrivee2.com/api/subusers/v1/enable
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, devre dışı bırakılmış alt kullanıcı hesaplarını yeniden etkinleştirir. Alt kullanıcılar, etkinleştirildikten sonra oturum açabilir, verilere erişebilir ve normal işlemleri gerçekleştirebilir.
Girdi
string subuser_email;
string admin_email;
bool email_notification; // bu parametre true olarak ayarlandığında alt kullanıcıya e-posta bildirimi gönderilir
Çıktı
Başarı durumunda API Yanıtı (application/JSON) şu şekilde olacaktır:{ success: true }Uzunluk Parametreleri
- E-posta [255]
Ön Koşul
- Kullanıcı kayıt olmuş/oluşturulmuş.
- Kullanıcı hesabı daha önce devre dışı bırakılmış.
Özel Hata Durumu
- Alt kullanıcı kayıt olmamışsa
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'user_not_signed_up',
message: 'Alt kullanıcı kayıt olmamış'
}
} - Alt kullanıcı hesabı zaten etkinse
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'user_account_already_enabled',
message: 'Kullanıcı hesabı zaten etkin'
}
} - Hesap mevcut değil.
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Bu e-posta ile ilişkili hesap mevcut değil'
}
}
Örnek İstek: Gövde (application/JSON)
{
"subuser_email": "abc1@example.com",
"admin_email": "admin1@example.com",
"email_notification": true
}Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/subusers/v1/enable'
--data '{
"subuser_email": "abc1@example.com",
"admin_email": "admin1@example.com",
"email_notification": true
}' --header 'token: <api anahtarınız>' - Alt kullanıcıyı kaldır
POST
https://api.idrivee2.com/api/subusers/v1/remove
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, kullanıcıları IDrive® e2'den kalıcı olarak siler.
Not: Bu işlem gerçekleştirildiğinde kullanıcı verileri kalıcı olarak kaybolacaktır.Girdi
string subuser_email;
string admin_email;
bool email_notification; // alt kullanıcıya e-posta bildirimi yalnızca bu parametre true olarak ayarlandığında gönderilecektir
Uzunluk Parametreleri
- E-posta [255]
Ön Koşul
- Kullanıcı devre dışı bırakılmış olmalıdır.
Çıktı
Başarı durumunda API Yanıtı (application/JSON) şöyle olacaktır:{ success: true }Uzunluk Parametreleri
- E-posta [255]
Özel Hata Durumu
- Alt kullanıcı kaydolmamışsa
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'user_not_signed_up',
message: 'Alt kullanıcı kaydolmamış'
} } - Alt kullanıcı hesabı devre dışı bırakılmamışsa
Response (application/JSON) : { error: {
type: 'invalid_request_error',
code: 'user_account_not_disabled',
message: 'Kullanıcı hesabı devre dışı bırakılmamış'
} } - Hesap mevcut değil
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Bu e-posta ile ilişkili hesap mevcut değil'
} }
Örnek İstek: Gövde (application/JSON)
{
"subuser_email": "abc1@example.com",
"admin_email": "admin1@example.com",
"email_notification": true
}Curl Örnek İstek:
curl --request POST 'https://api.idrivee2.com/api/subusers/v1/remove'
--data '{
"subuser_email": "abc1@example.com",
"admin_email": "admin1@example.com",
"email_notification": true
}' --header 'token: <api anahtarınız>' - Daveti İptal Et
POST
https://api.idrivee2.com/api/subusers/v1/invite/cancel
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, alt kullanıcıya gönderilen daveti iptal eder.
Girdi
string subuser_email;
string admin_email;
Uzunluk Parametreleri
- E-posta [255]
Ön Koşul
- Kullanıcı henüz kaydolmamış olmalıdır.
Çıktı
Başarı durumunda API Yanıtı (application/JSON) şöyle olacaktır:{ success: true }Özel Hata Durumu
- Alt kullanıcı zaten kaydolmuşsa
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'user_already_signedup',
message: 'Kullanıcı kaydoldu'
}
}
Örnek İstek: Gövde (application/JSON)
{
"subuser_email": "abc1@example.com",
"admin_email": "admin1@example.com"
}Curl Örnek İsteği:
curl --request POST 'https://api.idrivee2.com/api/subusers/v1/invite/cancel'
--data '{
"subuser_email": "abc1@example.com",
"admin_email": "admin1@example.com"
}' --header 'token: <your api key>' - Alt Kullanıcıyı Güncelle
POST
https://api.idrivee2.com/api/subusers/v1/update
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, alt kullanıcıların erişimini, izinlerini, SSO ve oturum kontrolünü günceller. API, hem davet edilmiş hem de kayıtlı alt kullanıcıları güncellemek için kullanılabilir.
Girdi
string subuser_email;
boolean disable_delete_object; // isteğe bağlı
int permissions; // isteğe bağlı
boolean is_admin; // isteğe bağlı
boolean sso_login; // isteğe bağlı
boolean allow_session_timeout_settings; // isteğe bağlı
int idle_timeout; // isteğe bağlı
boolean concurrent_sessions; // isteğe bağlı
boolean allow_concurrent_session_settings; // isteğe bağlı
Object[] storage_access; // isteğe bağlı
string admin_email;
boolean expire_subuser_sessions; // isteğe bağlı, true ise mevcut kullanıcı oturumlarını sona erdirir
Not
İstek gövdesi parametre ayrıntıları için Alt Kullanıcı Davet API'sine başvurabilirsiniz. İstek gövdesine yalnızca güncellenmesi gereken parametreler dahil edilmelidir.
Çıktı
Başarı durumunda API Yanıtı (application/JSON) şöyle olacaktır:{ success: true }Uzunluk Parametreleri
- E-posta [255]
Özel Hata Durumu
- Depolama alanı mevcut değil
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'storage_non_existant',
message: 'Storage does not exist'
}
} - Hesap mevcut değil
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Account with this email does not exist'
}
} - sso_login true olarak gönderilirse ve SSO yapılandırılmamışsa
Response (application/JSON) : {
error: {
type: 'invalid_request_error',
code: 'sso_not_configured',
message: 'SSO is not configured'
}
}
Örnek İstek: Gövde (application/JSON)
{
"subuser_email": "abc1@example.com",
"storage_access": [
{
"storage_dn": "h4l1.ch.idrivee2-29.com",
"buckets": [
"bucket1",
"bucket2"
]
},
{
"storage_dn": "r8l2.ie.idrivee2-44.com",
"buckets": [
"bucket3",
"bucket4"
]
}
],
"is_admin": false,
"sso_login": false,
"expire_subuser_sessions": false,
"admin_email": "abc@example.com"
}Curl Örnek İsteği:
curl --request POST 'https://api.idrivee2.com/api/subusers/v1/update'
--data '{
"subuser_email": "abc1@example.com",
"storage_access": [
{
"storage_dn": "h4l1.ch.idrivee2-29.com",
"buckets": [
"bucket1",
"bucket2"
]
},
{
"storage_dn": "r8l2.ie.idrivee2-44.com",
"buckets": [
"bucket3",
"bucket4"
]
}
],
"is_admin": false,
"sso_login": false,
"expire_subuser_sessions": false,
"admin_email": "abc@example.com"
}' --header 'token: <your api key>' - Etkinlik Günlüklerini Getir
POST
https://api.idrivee2.com/api/subusers/v1/user_activity_history
Kopyalamak için tıklayınBağlantı kopyalandı
Bu API, bir alt kullanıcının belirli bir tarih aralığındaki etkinlik günlüklerini getirir.
Girdi
string subuser_email;
string admin_email;
string start_date;
string end_date;
int page_no;Uzunluk Parametreleri
- E-posta [255]
Not
start_date (ISO8601) - Başlangıç Tarihi
end_date (ISO8601) - Bitiş Tarihi
page_no - API, her sayfası 200 kayıttan oluşan sayfalandırma kullanır
ve page_no 1'den itibaren başlarÇıktı
Başarı durumunda API Yanıtı (application/JSON) şöyle olacaktır:struct response {
List[] logs;
struct pagination;
}
struct logs {
string timestamp;
string description;
string ip;
}
struct pagination {
int total_records;
int page_no;
int records_per_page;
}Özel Hata Durumu
- Alt kullanıcı kayıtlı değilse
Response (application/JSON) : {
error:{
type: 'invalid_request_error',
code: 'user_not_signed_up',
message: 'Subuser is not signed up'
}
} - Hesap mevcut değil
Response (application/JSON) : {
error:{
type: 'invalid_request_error',
code: 'account_non_existant',
message: 'Account with this email does not exist'
}
}
Örnek İstek : Gövde (application/JSON)
{
"subuser_email": "abc1@example.com",
"admin_email": "admin1@example.com",
"start_date": "2025-04-05",
"end_date": "2025-05-28",
"page_no": 1
}Curl Örnek İsteği:
curl --request POST 'https://api.idrivee2.com/api/subusers/v1/user_activity_history'
--data '{
"subuser_email": "abc1@example.com",
"admin_email" : "admin1@example.com",
"start_date" : "2025-04-05",
"end_date" : "2025-05-28",
"page_no" : 1
}' --header 'token: <api anahtarınız>'
Özel Hata Durumu