Konto użytkownika¶
Pobieranie danych zalogowanego użytkownika¶
Aby otrzymać dane zalogowanego użytkownika należy wysłać wiadomość GET na adres /api/user/account/.
W odpowiedzi powinniśmy otrzymać wiadomość o treści z taką strukturą danych:
{
"id": 1,
"username": "root",
"first_name": "John",
"last_name": "Kowalski",
"email": "jd@netrsr.com",
"is_superuser": true,
"credits": 100,
"date_joined": "2020-08-28T14:37:00.300578+02:00",
"subscription_id": 1,
"subscription_active": true,
"subscription_valid_until": "2021-04-29T23:59:00Z",
"cloud_config_id": 6,
"policy_config_id": 1,
"group_ids": [
1
],
"timezone": "Europe/Warsaw",
"notification_expiration_time": 30,
"delivery_channels_config": {
"email": {
"host": "test",
"port": 25,
"login": "test",
"password": "test",
"authentication": "tls"
}
},
"configuration_limits": {
"maximum_tests": 50000,
"maximum_workers": 1000,
"maximum_schedules": 100,
"maximum_cloud_workers": 200,
"test_stage_size_limit": 20,
"test_block_count_limit": 30,
"test_stage_count_limit": 3,
"maximum_cloud_locations": 25,
"maximum_days_in_advance_schedule": 30
}
}
Zmiana strefy czasowej użytkownika¶
Aby zmienić dane zalogowanego użytkownika należy wysłać wiadomość PATCH na adres /api/user/account/<id>/, gdzie <id> jest id użytkownika.
Wiadomość powinna zawierać treść:
{
"timezone": "Europe/Warsaw"
}
Pole timezone powinno być zgodne ze standardem nazewnictwa stref czasowych IANA
W odpowiedzi powinniśmy otrzymać wiadomość o treści z taką strukturą danych:
{
"id": 1,
"username": "root",
"first_name": "John",
"last_name": "Kowalski",
"email": "jd@netrsr.com",
"is_superuser": true,
"credits": 100,
"date_joined": "2020-08-28T14:37:00.300578+02:00",
"subscription_id": 1,
"subscription_active": true,
"subscription_valid_until": "2021-04-29T23:59:00Z",
"cloud_config_id": 6,
"policy_config_id": 1,
"group_ids": [
1
],
"timezone": "Europe/Warsaw",
"notification_expiration_time": 30,
"delivery_channels_config": {
"email": {
"host": "test",
"port": 25,
"login": "test",
"password": "test",
"authentication": "tls"
}
},
"configuration_limits": {
"maximum_tests": 50000,
"maximum_workers": 1000,
"maximum_schedules": 100,
"maximum_cloud_workers": 200,
"test_stage_size_limit": 20,
"test_block_count_limit": 30,
"test_stage_count_limit": 3,
"maximum_cloud_locations": 25,
"maximum_days_in_advance_schedule": 30
}
}
Aktualizacja czasu przechowywania powiadomień¶
Aby zmienić maksymalny czas przechowywania powiadomień w systemie należy wysłać wiadomość PATCH na adres /api/user/account/<id>/, gdzie <id> jest id użytkownika.
Wiadomość powinna zawierać treść:
{
"notification_expiration_time": 60
}
Pole notification_expiration_time określane jest jako ilość dni, po których powiadomienia zostają automatycznie usuwane z systemu. Wartość tego pola powinna być liczbą całkowitą.
W odpowiedzi na to żądanie powinniśmy otrzymać wiadomość o treści z taką strukturą danych:
{
"id": 1,
"username": "root",
"first_name": "John",
"last_name": "Kowalski",
"email": "jd@netrsr.com",
"is_superuser": true,
"credits": 100,
"date_joined": "2020-08-28T14:37:00.300578+02:00",
"subscription_id": 1,
"subscription_active": true,
"subscription_valid_until": "2021-04-29T23:59:00Z",
"cloud_config_id": 6,
"policy_config_id": 1,
"group_ids": [
1
],
"timezone": "Europe/Warsaw",
"notification_expiration_time": 60,
"delivery_channels_config": {
"email": {
"host": "test",
"port": 25,
"login": "test",
"password": "test",
"authentication": "tls"
}
},
"configuration_limits": {
"maximum_tests": 50000,
"maximum_workers": 1000,
"maximum_schedules": 100,
"maximum_cloud_workers": 200,
"test_stage_size_limit": 20,
"test_block_count_limit": 30,
"test_stage_count_limit": 3,
"maximum_cloud_locations": 25,
"maximum_days_in_advance_schedule": 30
}
}
Konfiguracja serwera poczty e-mail¶
Aby dodać lub zaktualizować konfigurację serwera poczty e-mail potrzebnej do prawidłowego funkcjonowania wysyłania powiadomień mailowych należy wysłać wiadomość PATCH na adres /api/user/account/<id>/, gdzie <id> jest id użytkownika.
Wiadomość powinna zawierać treść:
{
"delivery_channels_config": {
"email": {
"host": "test",
"port": 25,
"login": "test",
"password": "test",
"authentication": "ssl"
}
}
}
Obiekt „email” powinien zawierać pola:
host - adres serwera poczty wychodzącej,
port - port poczty wychodzącej,
login - login użytkownika,
password - hasło użytkownika,
authentication - sposób uwierzytelniania (może mieć wartości „tls” lub „ssl”).
W odpowiedzi powinniśmy otrzymać wiadomość o treści z taką strukturą danych:
{
"id": 1,
"username": "root",
"first_name": "John",
"last_name": "Kowalski",
"email": "jd@netrsr.com",
"is_superuser": true,
"credits": 100,
"date_joined": "2020-08-28T14:37:00.300578+02:00",
"subscription_id": 1,
"subscription_active": true,
"subscription_valid_until": "2021-04-29T23:59:00Z",
"cloud_config_id": 6,
"policy_config_id": 1,
"group_ids": [
1
],
"timezone": "Europe/Warsaw",
"notification_expiration_time": 60,
"delivery_channels_config": {
"email": {
"host": "test",
"port": 25,
"login": "test",
"password": "test",
"authentication": "ssl"
}
},
"configuration_limits": {
"maximum_tests": 50000,
"maximum_workers": 1000,
"maximum_schedules": 100,
"maximum_cloud_workers": 200,
"test_stage_size_limit": 20,
"test_block_count_limit": 30,
"test_stage_count_limit": 3,
"maximum_cloud_locations": 25,
"maximum_days_in_advance_schedule": 30
}
}
Zmiana hasła użytkownika¶
Aby zmienić hasło użytkownika należy wysłać wiadomość PATCH na adres /api/user/account/<id>/, gdzie <id> jest id użytkownika.
Wiadomość powinna zawierać treść:
{
"password": "password"
}
W odpowiedzi powinniśmy otrzymać wiadomość o treści z taką strukturą danych:
{
"id": 1,
"username": "root",
"first_name": "John",
"last_name": "Kowalski",
"email": "jd@netrsr.com",
"is_superuser": true,
"credits": 100,
"date_joined": "2020-08-28T14:37:00.300578+02:00",
"subscription_id": 1,
"subscription_active": true,
"subscription_valid_until": "2021-04-29T23:59:00Z",
"cloud_config_id": 6,
"policy_config_id": 1,
"group_ids": [
1
],
"timezone": "Europe/Warsaw",
"notification_expiration_time": 60,
"delivery_channels_config": {
"email": {
"host": "test",
"port": 25,
"login": "test",
"password": "test",
"authentication": "ssl"
}
},
"configuration_limits": {
"maximum_tests": 50000,
"maximum_workers": 1000,
"maximum_schedules": 100,
"maximum_cloud_workers": 200,
"test_stage_size_limit": 20,
"test_block_count_limit": 30,
"test_stage_count_limit": 3,
"maximum_cloud_locations": 25,
"maximum_days_in_advance_schedule": 30
}
}