REST API do zaszyfrowanego udostępniania sekretów
Twórz i pobieraj zaszyfrowane, samozniszczające się sekrety programowo.
To API przechowuje wstępnie zaszyfrowany szyfrogram. Szyfrowanie musi odbywać się po stronie klienta przed wywołaniem API. Serwer nigdy nie widzi tekstu jawnego.
W większości przypadków CLI lub GitHub Action obsługują szyfrowanie automatycznie.
Bazowy URL
https://www.vaulted.fyi/apiPrzechowuje zaszyfrowany szyfrogram z metadanymi wygaśnięcia i limitu wyświetleń. Zwraca ID sekretu.
Treść żądania
| Pole | Typ | Wymagane | Wartości |
|---|---|---|---|
| ciphertext | string | tak | maks. 4096 znaków |
| iv | string | tak | wektor inicjalizacji |
| maxViews | number | tak | 0, 1, 3, 5, 10 (0 = bez limitu, zwraca -1 dla viewsRemaining) |
| ttl | number | tak | 3600, 7200, 21600, 43200, 86400, 259200, 604800, 1209600, 2592000 (sekundy) |
| hasPassphrase | boolean | nie | domyślnie false |
curl -X POST https://www.vaulted.fyi/api/secrets \
-H "Content-Type: application/json" \
-d '{
"ciphertext": "encrypted-base64-data",
"iv": "initialization-vector",
"maxViews": 1,
"ttl": 86400,
"hasPassphrase": false
}'{ "id": "abc123" }Odpowiedzi błędów
| Status | Opis |
|---|---|
| 400 | Błąd walidacji (brakujące lub nieprawidłowe pola) |
| 429 | Przekroczono limit żądań |
| 500 | Wewnętrzny błąd serwera |
Pobiera zaszyfrowany szyfrogram i zużywa jedno wyświetlenie. Sekret jest usuwany po zużyciu wszystkich wyświetleń.
Każde żądanie zużywa jedno wyświetlenie. Użyj endpointu status, aby sprawdzić bez zużywania.
curl https://www.vaulted.fyi/api/secrets/abc123{
"ciphertext": "encrypted-base64-data",
"iv": "initialization-vector",
"hasPassphrase": false,
"viewsRemaining": 2
}viewsRemaining wynosi -1 dla sekretów z nieograniczoną liczbą wyświetleń (maxViews = 0).
Odpowiedzi błędów
| Status | Opis |
|---|---|
| 404 | Sekret nie znaleziony lub wygasł |
| 429 | Przekroczono limit żądań |
| 500 | Wewnętrzny błąd serwera |
Sprawdza, czy sekret istnieje i ile wyświetleń pozostało, bez zużywania wyświetlenia.
curl https://www.vaulted.fyi/api/secrets/abc123/status{
"exists": true,
"viewsRemaining": 3,
"hasPassphrase": false
}viewsRemaining wynosi -1 dla sekretów z nieograniczoną liczbą wyświetleń (maxViews = 0).
Odpowiedzi błędów
| Status | Opis |
|---|---|
| 404 | Sekret nie znaleziony lub wygasł |
| 500 | Wewnętrzny błąd serwera |
Limity żądań
| Endpoint | Limit | Okno czasowe |
|---|---|---|
| POST /api/secrets | 20 żądań | 10 minut |
| GET /api/secrets/[id] | 60 żądań | 10 minut |
Limity żądań są per adres IP. Przekroczenie limitu zwraca 429.