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
    }
}