TL;DR #
Od niedawna API Habitica wymaga dodatkowego nagłówka HTTP przy wysyłaniu zapytania. Nagłówek ma zawierać id użytkownika i nazwę aplikacji.
'x-client': habiticaUserId + '-staingalive',
Email z Google Apps Script, Habitica odrzuca zapytanie #
Używam Google Apps Script do automatyzacji niektórych zadań w Habitice. Ostatnio dostałem emaila.
Działanie Twojego skryptu, Habitica-Stayin-Alive-Script, nie zostało ostatnio zakończone pomyślnie. Podsumowanie błędów jest widoczne poniżej. Aby skonfigurować wyzwalacze dla tego skryptu lub zmienić ustawienia dotyczące otrzymywania przyszłych powiadomień o błędach, kliknij tutaj.
Podsumowanie:
Exception: Nie udało się zrealizować żądania skierowanego do https://habitica.com. Zwrócony kod błędu: 400. Skrócona odpowiedź serwera: {“success”:false,“error”:“BadRequest”,“message”:“Missing x-client headers.”} (aby zobaczyć pełną odpowiedź, użyj opcji muteHttpExceptions).
Exception: Niedostępny adres: https://habitica.com/api/v3/user
Kilka dni temu zmieniły się wymagania zapytań do Habitiki.
Należy dodać nagłówek x-client, który ma zawierać id użytkownika i nazwę aplikacji.
W wypadku aplikacji, której używam:
const headers = {
'x-api-user': habiticaUserId,
'x-api-key': habiticaAPIToken,
'x-client': habiticaUserId + '-staingalive',
};