Files
inventory-plus-plus/diagrams/database_schema_public.uml
2026-08-20 00:35:05 -06:00

172 lines
4.1 KiB
Plaintext

@startuml
hide circle
skinparam linetype ortho
set separator none
entity "**accounts**" {
+ ""account_id"": //serial [PK]//
--
*""email"": //text //
*""verified"": //boolean //
*""user_id"": //text [FK]//
}
entity "**accounts_page_platform_order_indexes**" {
+ ""account_id"": //integer [PK]//
+ ""platform"": //platform [PK]//
--
*""account_id"": //integer //
*""order_index"": //smallint //
}
entity "**etsy_access_tokens**" {
+ ""user_id"": //integer [PK][FK]//
--
*""access_token"": //text //
*""refresh_token"": //text //
*""access_token_expiration"": //timestamp with time zone //
*""refresh_token_expiration"": //timestamp with time zone //
}
entity "**etsy_oauth_requests**" {
+ ""state"": //bytea [PK]//
--
*""code_verifier"": //bytea //
*""expiration"": //timestamp with time zone //
*""account_id"": //integer [FK]//
}
entity "**etsy_store_events**" {
+ ""store_id"": //text [PK]//
+ ""event_timestamp"": //timestamp with time zone [PK][FK]//
+ ""event_id"": //text [PK]//
--
*""platform"": //text //
}
entity "**etsy_users**" {
+ ""user_id"": //integer [PK]//
--
*""account_id"": //integer [FK]//
*""shop_id"": //integer //
}
entity "**mock_mode**" {
+ ""account_id"": //integer [PK][FK]//
--
*""mock_mode"": //boolean //
}
entity "**oauth_login_states**" {
+ ""state"": //bytea [PK]//
--
*""expiration"": //timestamp with time zone //
*""target_uri"": //text //
}
entity "**oauth_tokens**" {
+ ""access_token"": //text [PK]//
--
*""token_type"": //text //
*""refresh_token"": //text //
*""expiry"": //timestamp with time zone //
*""id_token_issuer"": //text //
*""id_token_audience"": //text[] //
*""id_token_subject"": //text [FK]//
*""id_token_expiry"": //timestamp with time zone //
*""id_token_issued_at"": //timestamp with time zone //
*""id_token_nonce"": //text //
*""id_token_access_token_hash"": //text //
*""id_token_custom_claims_name"": //text //
*""id_token_custom_claims_picture"": //text //
*""id_token_custom_claims_nickname"": //text //
*""id_token_custom_claims_given_name"": //text //
*""id_token_custom_claims_family_name"": //text //
*""id_token_custom_claims_updated_at"": //timestamp with time zone //
}
entity "**oauth_users**" {
+ ""user_id"": //text [PK]//
--
}
entity "**raw_store_events**" {
+ ""platform"": //text [PK]//
+ ""store_id"": //text [PK]//
+ ""event_timestamp"": //timestamp with time zone [PK]//
+ ""event_id"": //text [PK]//
--
*""raw_payload"": //jsonb //
}
entity "**schema_migrations**" {
+ ""version"": //bigint [PK]//
--
*""dirty"": //boolean //
}
entity "**sync_group_listing_drafts**" {
+ ""account_id"": //integer [PK][FK]//
+ ""order_index"": //integer [PK]//
--
""platform"": //platform //
""shop_id"": //text //
""listing_id"": //text //
}
entity "**sync_group_listings**" {
+ ""sync_group_id"": //integer [PK][FK]//
+ ""order_index"": //integer [PK]//
--
*""platform"": //platform //
*""shop_id"": //text //
*""listing_id"": //text //
}
entity "**sync_groups**" {
+ ""sync_group_id"": //serial [PK]//
--
*""account_id"": //integer [FK]//
}
entity "**tiktok_store_events**" {
+ ""store_id"": //text [PK]//
+ ""event_timestamp"": //timestamp with time zone [PK][FK]//
+ ""event_id"": //text [PK]//
--
*""platform"": //text //
}
entity "**wix_store_events**" {
+ ""store_id"": //text [PK]//
+ ""event_timestamp"": //timestamp with time zone [PK][FK]//
+ ""event_id"": //text [PK]//
--
*""platform"": //text //
}
"**accounts**" }-- "**oauth_users**"
"**etsy_access_tokens**" ||-|| "**etsy_users**"
"**etsy_oauth_requests**" }-- "**accounts**"
"**etsy_store_events**" ||-|| "**raw_store_events**"
"**etsy_users**" }-- "**accounts**"
"**mock_mode**" ||-|| "**accounts**"
"**oauth_tokens**" }-- "**oauth_users**"
"**sync_group_listing_drafts**" }-- "**accounts**"
"**sync_group_listings**" }-- "**sync_groups**"
"**sync_groups**" }-- "**accounts**"
"**tiktok_store_events**" ||-|| "**raw_store_events**"
"**wix_store_events**" ||-|| "**raw_store_events**"
@enduml