superpowers-rest-automation
Builds reliable automations that integrate with REST APIs: auth, pagination, retries, rate limits, idempotency, webhooks, data mapping, and safe error handling. Use when calling external APIs, syncing systems, or building ETL-style workflows.
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Builds reliable automations that integrate with REST APIs: auth, pagination, retries, rate limits, idempotency, webhooks, data mapping, and safe error handling. Use when calling external APIs, syncing systems, or building ETL-style workflows.
How to use
Zdefiniuj kontrakt automatyzacji: określ format wejściowych danych (wymagane pola, walidacja), gdzie mają trafiać wyniki, co oznacza sukces oraz jakie zadania nie będą wykonane.
Skonfiguruj uwierzytelnianie i zarządzanie sekretami: zidentyfikuj typ autentykacji (klucz API, OAuth2, JWT lub mTLS), nigdy nie umieszczaj sekretów w kodzie, użyj zmiennych środowiskowych lub menedżera sekretów, zaplanuj odświeżanie tokenów jeśli jest wymagane.
Wybierz strategię idempotencji: użyj kluczy idempotencji wspieranego przez dostawcę API, stabilnych identyfikatorów zewnętrznych do operacji upsert, lokalnego magazynu stanu mapującego źródłowe ID na docelowe, lub deterministycznych hashów do deduplikacji. Jawnie udokumentuj wybraną strategię.
Obsłuż paginację i synchronizację przyrostową: wykryj styl paginacji (link next, kursor, page+limit, offset+limit), upewnij się że pętle nie pominęły danych, zaimplementuj synchronizację przyrostową za pomocą znaczników czasu lub kursorów.
Dodaj obsługę limitów szybkości i ponowień: respektuj nagłówki Rate-Limit, zaimplementuj exponential backoff, obsłuż błędy przejściowe (5xx, timeout) z ponowieniami, unikaj cichych awarii poprzez logowanie i alertowanie.
Wdroż obsługę błędów i monitorowanie: obsługuj błędy częściowe bez utraty danych, loguj każde wywołanie API z kontekstem, unikaj ujawniania sekretów w logach, ustaw metryki do śledzenia każdego przebiegu automatyzacji.