- Hem
- Datastruktur
Datastruktur
Hexbon krypterar inte bara din data - den strukturerar den också. Lär dig om det nödvändiga JSON-formatet och validera din data för att låsa upp den fulla interaktiva upplevelsen.
Kapitel
Varför datastruktur är viktigt
Hexbon är mer än bara ett krypteringsverktyg; det är ett strukturerat datalagringssystem. Din data är organiserad i ett hierarkiskt format som möjliggör kraftfulla funktioner som dra-och-släpp-sortering, interaktiva kort, expanderbara poster och organiserade sektioner.
Struktur vs. kryptering
Vi kan alltid dekryptera din data om du anger rätt krypteringsnyckel. Men om din data inte följer våra strukturriktlinjer kommer vi att visa den i råläge (raw mode) - du kommer att se datan, men utan de interaktiva UI-funktionerna som kort, poster, sektioner, dra-och-släpp osv.
Denna dokumentation beskriver den exakta JSON-struktur som Hexbon förväntar sig. Genom att följa denna struktur säkerställer du att din data är fullt kompatibel med de interaktiva funktionerna i vår kontrollpanel.
Strukturöversikt
Hexbon-data följer en strikt hierarki. Att förstå denna hierarki är nyckeln till att organisera din data korrekt.
Datahierarki
{ "cards": [...] }
{
"title": "Personal",
"records": [...],
"updated_at": 1763938832
}
{
"title": "Gmail",
"data": [...]
}
{
"name": "Login",
"values": [...]
}
{
"value": "secret123",
"type": "secret"
}
| Egenskap | Obligatoriskt | Gäller för |
|---|---|---|
| cards | Ja | Rotobjekt |
| title | Ja | Kort, Post |
| records | Ja | Kort |
| data | Ja | Post (array av sektioner) |
| name | Ja | Sektion |
| values | Ja | Sektion |
| value | Ja | Värde |
| type | Ja | Värde (secret, note, totp, link, email) |
| id | Nej | Värde (för sortering) |
| updated_at | Nej | Kort (tidsstämpel) |
Kort
Kort är toppnivå-behållarna i din kontrollpanel. Varje kort visas som en klickbar box som kan expanderas för att visa sina poster. Kort kan sorteras om via dra-och-släpp.
{
"title": "string", // Required: Card name displayed on tile
"records": [], // Required: Array of Record objects
"updated_at": 1763938832 // Optional: Unix timestamp of last update
}
| Egenskap | Typ | Obligatoriskt | Beskrivning |
|---|---|---|---|
| title | string | Ja | Namnet som visas på kortboxen |
| records | array | Ja | Array av post-objekt (kan vara tom) |
| updated_at | integer | Nej | Unix-tidsstämpel för att visa "senast uppdaterad" |
{
"title": "Work Credentials",
"records": [
// Record objects go here...
],
"updated_at": 1763938832
}
Poster
Poster är poster inuti ett kort. De visas i vänster sidofält när ett kort öppnas och kan väljas för att se sina sektioner. Tänk på poster som individuella objekt eller poster (t.ex. "Gmail-konto", "Företags-VPN", "Databas-legitimation").
{
"title": "string", // Required: Record name displayed in sidebar
"data": [] // Required: Array of Section objects
}
| Egenskap | Typ | Obligatoriskt | Beskrivning |
|---|---|---|---|
| title | string | Ja | Namnet som visas i postlistan |
| data | array | Ja | Array av sektionsobjekt (kan vara tom) |
Notera:
Egenskapen data innehåller "sektioner", inte rådata. Denna namngivning är av historiska skäl. Varje objekt i data-arrayen är ett sektionsobjekt.
{
"title": "Gmail Account",
"data": [
{
"name": "Login Details",
"values": [
// Value objects go here...
]
}
]
}
Sektioner
Sektioner grupperar relaterade värden inuti en post. De ger en organisatorisk nivå som hjälper till att kategorisera olika typer av information (t.ex. "Inloggningsuppgifter", "Återställningsalternativ", "API-nycklar"). Varje sektion har ett namn och innehåller flera värden.
{
"name": "string", // Required: Section heading/label
"values": [] // Required: Array of Value objects
}
| Egenskap | Typ | Obligatoriskt | Beskrivning |
|---|---|---|---|
| name | string | Ja | Sektionstiteln som visas ovanför värdena |
| values | array | Ja | Array av värdeobjekt som innehåller din data |
{
"name": "Login Details",
"values": [
{
"value": "user@example.com",
"type": "note",
"id": "value_1763938238781_3jh5i3r20"
},
{
"value": "supersecretpassword123",
"type": "secret",
"id": "value_1763938251026_fvjeq1vg9"
}
]
}
Värden
Värden är de faktiska dataposterna - lösenord, anteckningar och TOTP-koder du sparar. Varje värde har en typ som bestämmer hur det visas och hur det interageras med i användargränssnittet.
{
"value": "string", // Required: The actual content
"type": "secret" | "note" | "totp" | "link" | "email" | "username", // Required
"id": "string" // Optional: Unique identifier for sorting
}
| Egenskap | Typ | Obligatoriskt | Beskrivning |
|---|---|---|---|
| value | string | Ja | Det faktiska innehållet (lösenord, anteckningstext, TOTP-hemlighet) |
| type | string | Ja | En av: "secret", "note", "totp", "link", "email", eller "username" |
| id | string | Nej | Ett unikt ID som används för sortering och referens |
Värdetyper
| Typ | Visning | Användningsfall |
|---|---|---|
| "secret" | Dolt som standard (•••••), klicka för att visa | Lösenord, API-nycklar, känslig data |
| "note" | Klartext som alltid är synlig | Användarnamn, e-post, URL:er, icke-känslig information |
| "totp" | Genererar 6-siffriga koder i realtid | 2FA-hemligheter (Base32-kodade) |
| "link" | Klickbar hyperlänk | URL:er, webbplatsadresser |
| "email" | E-postadress med mailto-länk | E-postadresser |
| "username" | Klartext som alltid är synlig med en användarikon | Användarnamn, konto-ID:n |
// Secret value (hidden by default)
{
"value": "MySecurePassword123!",
"type": "secret",
"id": "value_1763938251026_fvjeq1vg9"
}
// Note value (always visible)
{
"value": "user@example.com",
"type": "note",
"id": "value_1763938238781_3jh5i3r20"
}
// TOTP value (generates 2FA codes)
{
"value": "JBSWY3DPEHPK3PXP",
"type": "totp",
"id": "value_1763938267595_kaecs9y31"
}
// Username value (visible text with user icon)
{
"value": "john_doe_123",
"type": "username",
"id": "value_1763938289412_xm2kp7v91"
}
Fullständigt exempel
Här är en fullständig, giltig datastruktur som visar hela hierarkin med flera kort, poster, sektioner och olika värdetyper.
{
"cards": [
{
"title": "Personal Accounts",
"records": [
{
"title": "Gmail",
"data": [
{
"name": "Login Details",
"values": [
{
"value": "myemail@gmail.com",
"type": "note"
},
{
"value": "SuperSecretPassword123",
"type": "secret"
}
]
},
{
"name": "2FA",
"values": [
{
"value": "JBSWY3DPEHPK3PXP",
"type": "totp"
}
]
}
]
},
{
"title": "GitHub",
"data": [
{
"name": "Account",
"values": [
{
"value": "myusername",
"type": "note"
},
{
"value": "gh_token_abc123xyz",
"type": "secret"
}
]
}
]
}
],
"updated_at": 1763938832
},
{
"title": "Work",
"records": [
{
"title": "VPN Access",
"data": [
{
"name": "Credentials",
"values": [
{
"value": "vpn.company.com",
"type": "note"
},
{
"value": "john.doe",
"type": "note"
},
{
"value": "VpnP@ssw0rd!",
"type": "secret"
}
]
}
]
}
],
"updated_at": 1763856530
}
]
}
Råläge (Raw Mode)
Om din dekrypterade data inte följer den förväntade strukturen kommer Hexbon att visa den ändå, men i råläge. Detta innebär att du kommer att se din data som enkel JSON utan de interaktiva funktionerna som strukturerad data ger.
| Funktion | Strukturerat läge | Råläge |
|---|---|---|
| Interaktiva kortboxar | ||
| Dra-och-släpp-sortering | ||
| Döljande av hemligheter med visningsknapp | ||
| Realtidsgenerering av TOTP-koder | ||
| Redigering på plats och automatisk sparning | ||
| Knappar för kopiering till urklipp |
Din data är alltid säker
Råläge påverkar bara presentationen, inte säkerheten. Din data är alltid AES-256-GCM-krypterad oavsett struktur. Du får bara inte de interaktiva UI-funktionerna om strukturen inte stämmer.
Validera din datastruktur
Använd vårt interaktiva valideringsverktyg för att kontrollera din datastruktur i realtid.
Prova valideringsverktyget