SPB Git forge

spb/fetcha

Public
11commits 1branches 0releases
1.5 MBsize
maindefault branch
16 days agolast push
TypeScript 97.5% SQL 1.4% Python 0.8%
90.5 KB · 3,572 lines json
Raw Blame History
1{2  "id": "d9d93da3-7999-4c5e-b296-16790579a722",3  "prevId": "faa23eec-a36e-40bd-b9e5-570b18c400ec",4  "version": "7",5  "dialect": "postgresql",6  "tables": {7    "public.abuse_events": {8      "name": "abuse_events",9      "schema": "",10      "columns": {11        "id": {12          "name": "id",13          "type": "text",14          "primaryKey": true,15          "notNull": true16        },17        "organization_id": {18          "name": "organization_id",19          "type": "text",20          "primaryKey": false,21          "notNull": false22        },23        "project_id": {24          "name": "project_id",25          "type": "text",26          "primaryKey": false,27          "notNull": false28        },29        "request_id": {30          "name": "request_id",31          "type": "text",32          "primaryKey": false,33          "notNull": false34        },35        "kind": {36          "name": "kind",37          "type": "text",38          "primaryKey": false,39          "notNull": true40        },41        "severity": {42          "name": "severity",43          "type": "text",44          "primaryKey": false,45          "notNull": true,46          "default": "'low'"47        },48        "detail": {49          "name": "detail",50          "type": "text",51          "primaryKey": false,52          "notNull": false53        },54        "resolved": {55          "name": "resolved",56          "type": "boolean",57          "primaryKey": false,58          "notNull": true,59          "default": false60        },61        "created_at": {62          "name": "created_at",63          "type": "timestamp with time zone",64          "primaryKey": false,65          "notNull": true,66          "default": "now()"67        }68      },69      "indexes": {70        "abuse_events_org_idx": {71          "name": "abuse_events_org_idx",72          "columns": [73            {74              "expression": "organization_id",75              "isExpression": false,76              "asc": true,77              "nulls": "last"78            }79          ],80          "isUnique": false,81          "concurrently": false,82          "method": "btree",83          "with": {}84        }85      },86      "foreignKeys": {87        "abuse_events_organization_id_organizations_id_fk": {88          "name": "abuse_events_organization_id_organizations_id_fk",89          "tableFrom": "abuse_events",90          "tableTo": "organizations",91          "columnsFrom": [92            "organization_id"93          ],94          "columnsTo": [95            "id"96          ],97          "onDelete": "cascade",98          "onUpdate": "no action"99        }100      },101      "compositePrimaryKeys": {},102      "uniqueConstraints": {},103      "policies": {},104      "checkConstraints": {},105      "isRLSEnabled": false106    },107    "public.accounts": {108      "name": "accounts",109      "schema": "",110      "columns": {111        "id": {112          "name": "id",113          "type": "text",114          "primaryKey": true,115          "notNull": true116        },117        "account_id": {118          "name": "account_id",119          "type": "text",120          "primaryKey": false,121          "notNull": true122        },123        "provider_id": {124          "name": "provider_id",125          "type": "text",126          "primaryKey": false,127          "notNull": true128        },129        "user_id": {130          "name": "user_id",131          "type": "text",132          "primaryKey": false,133          "notNull": true134        },135        "access_token": {136          "name": "access_token",137          "type": "text",138          "primaryKey": false,139          "notNull": false140        },141        "refresh_token": {142          "name": "refresh_token",143          "type": "text",144          "primaryKey": false,145          "notNull": false146        },147        "id_token": {148          "name": "id_token",149          "type": "text",150          "primaryKey": false,151          "notNull": false152        },153        "access_token_expires_at": {154          "name": "access_token_expires_at",155          "type": "timestamp with time zone",156          "primaryKey": false,157          "notNull": false158        },159        "refresh_token_expires_at": {160          "name": "refresh_token_expires_at",161          "type": "timestamp with time zone",162          "primaryKey": false,163          "notNull": false164        },165        "scope": {166          "name": "scope",167          "type": "text",168          "primaryKey": false,169          "notNull": false170        },171        "password": {172          "name": "password",173          "type": "text",174          "primaryKey": false,175          "notNull": false176        },177        "created_at": {178          "name": "created_at",179          "type": "timestamp with time zone",180          "primaryKey": false,181          "notNull": true,182          "default": "now()"183        },184        "updated_at": {185          "name": "updated_at",186          "type": "timestamp with time zone",187          "primaryKey": false,188          "notNull": true,189          "default": "now()"190        }191      },192      "indexes": {193        "accounts_user_idx": {194          "name": "accounts_user_idx",195          "columns": [196            {197              "expression": "user_id",198              "isExpression": false,199              "asc": true,200              "nulls": "last"201            }202          ],203          "isUnique": false,204          "concurrently": false,205          "method": "btree",206          "with": {}207        }208      },209      "foreignKeys": {210        "accounts_user_id_users_id_fk": {211          "name": "accounts_user_id_users_id_fk",212          "tableFrom": "accounts",213          "tableTo": "users",214          "columnsFrom": [215            "user_id"216          ],217          "columnsTo": [218            "id"219          ],220          "onDelete": "cascade",221          "onUpdate": "no action"222        }223      },224      "compositePrimaryKeys": {},225      "uniqueConstraints": {},226      "policies": {},227      "checkConstraints": {},228      "isRLSEnabled": false229    },230    "public.api_keys": {231      "name": "api_keys",232      "schema": "",233      "columns": {234        "id": {235          "name": "id",236          "type": "text",237          "primaryKey": true,238          "notNull": true239        },240        "organization_id": {241          "name": "organization_id",242          "type": "text",243          "primaryKey": false,244          "notNull": true245        },246        "project_id": {247          "name": "project_id",248          "type": "text",249          "primaryKey": false,250          "notNull": true251        },252        "created_by_user_id": {253          "name": "created_by_user_id",254          "type": "text",255          "primaryKey": false,256          "notNull": false257        },258        "name": {259          "name": "name",260          "type": "text",261          "primaryKey": false,262          "notNull": true263        },264        "key_hash": {265          "name": "key_hash",266          "type": "text",267          "primaryKey": false,268          "notNull": true269        },270        "key_prefix": {271          "name": "key_prefix",272          "type": "text",273          "primaryKey": false,274          "notNull": true275        },276        "last4": {277          "name": "last4",278          "type": "text",279          "primaryKey": false,280          "notNull": true281        },282        "mode": {283          "name": "mode",284          "type": "text",285          "primaryKey": false,286          "notNull": true,287          "default": "'live'"288        },289        "scopes": {290          "name": "scopes",291          "type": "jsonb",292          "primaryKey": false,293          "notNull": true,294          "default": "'[\"fetch:execute\",\"sessions:write\",\"usage:read\"]'::jsonb"295        },296        "expires_at": {297          "name": "expires_at",298          "type": "timestamp with time zone",299          "primaryKey": false,300          "notNull": false301        },302        "last_used_at": {303          "name": "last_used_at",304          "type": "timestamp with time zone",305          "primaryKey": false,306          "notNull": false307        },308        "revoked_at": {309          "name": "revoked_at",310          "type": "timestamp with time zone",311          "primaryKey": false,312          "notNull": false313        },314        "rotated_from_id": {315          "name": "rotated_from_id",316          "type": "text",317          "primaryKey": false,318          "notNull": false319        },320        "created_at": {321          "name": "created_at",322          "type": "timestamp with time zone",323          "primaryKey": false,324          "notNull": true,325          "default": "now()"326        }327      },328      "indexes": {329        "api_keys_hash_uq": {330          "name": "api_keys_hash_uq",331          "columns": [332            {333              "expression": "key_hash",334              "isExpression": false,335              "asc": true,336              "nulls": "last"337            }338          ],339          "isUnique": true,340          "concurrently": false,341          "method": "btree",342          "with": {}343        },344        "api_keys_project_idx": {345          "name": "api_keys_project_idx",346          "columns": [347            {348              "expression": "project_id",349              "isExpression": false,350              "asc": true,351              "nulls": "last"352            }353          ],354          "isUnique": false,355          "concurrently": false,356          "method": "btree",357          "with": {}358        },359        "api_keys_org_idx": {360          "name": "api_keys_org_idx",361          "columns": [362            {363              "expression": "organization_id",364              "isExpression": false,365              "asc": true,366              "nulls": "last"367            }368          ],369          "isUnique": false,370          "concurrently": false,371          "method": "btree",372          "with": {}373        }374      },375      "foreignKeys": {376        "api_keys_organization_id_organizations_id_fk": {377          "name": "api_keys_organization_id_organizations_id_fk",378          "tableFrom": "api_keys",379          "tableTo": "organizations",380          "columnsFrom": [381            "organization_id"382          ],383          "columnsTo": [384            "id"385          ],386          "onDelete": "cascade",387          "onUpdate": "no action"388        },389        "api_keys_project_id_projects_id_fk": {390          "name": "api_keys_project_id_projects_id_fk",391          "tableFrom": "api_keys",392          "tableTo": "projects",393          "columnsFrom": [394            "project_id"395          ],396          "columnsTo": [397            "id"398          ],399          "onDelete": "cascade",400          "onUpdate": "no action"401        },402        "api_keys_created_by_user_id_users_id_fk": {403          "name": "api_keys_created_by_user_id_users_id_fk",404          "tableFrom": "api_keys",405          "tableTo": "users",406          "columnsFrom": [407            "created_by_user_id"408          ],409          "columnsTo": [410            "id"411          ],412          "onDelete": "set null",413          "onUpdate": "no action"414        }415      },416      "compositePrimaryKeys": {},417      "uniqueConstraints": {},418      "policies": {},419      "checkConstraints": {},420      "isRLSEnabled": false421    },422    "public.audit_logs": {423      "name": "audit_logs",424      "schema": "",425      "columns": {426        "id": {427          "name": "id",428          "type": "text",429          "primaryKey": true,430          "notNull": true431        },432        "organization_id": {433          "name": "organization_id",434          "type": "text",435          "primaryKey": false,436          "notNull": false437        },438        "user_id": {439          "name": "user_id",440          "type": "text",441          "primaryKey": false,442          "notNull": false443        },444        "action": {445          "name": "action",446          "type": "text",447          "primaryKey": false,448          "notNull": true449        },450        "target": {451          "name": "target",452          "type": "text",453          "primaryKey": false,454          "notNull": false455        },456        "metadata": {457          "name": "metadata",458          "type": "jsonb",459          "primaryKey": false,460          "notNull": false461        },462        "ip_address": {463          "name": "ip_address",464          "type": "text",465          "primaryKey": false,466          "notNull": false467        },468        "user_agent": {469          "name": "user_agent",470          "type": "text",471          "primaryKey": false,472          "notNull": false473        },474        "created_at": {475          "name": "created_at",476          "type": "timestamp with time zone",477          "primaryKey": false,478          "notNull": true,479          "default": "now()"480        }481      },482      "indexes": {483        "audit_logs_org_created_idx": {484          "name": "audit_logs_org_created_idx",485          "columns": [486            {487              "expression": "organization_id",488              "isExpression": false,489              "asc": true,490              "nulls": "last"491            },492            {493              "expression": "created_at",494              "isExpression": false,495              "asc": true,496              "nulls": "last"497            }498          ],499          "isUnique": false,500          "concurrently": false,501          "method": "btree",502          "with": {}503        },504        "audit_logs_user_idx": {505          "name": "audit_logs_user_idx",506          "columns": [507            {508              "expression": "user_id",509              "isExpression": false,510              "asc": true,511              "nulls": "last"512            }513          ],514          "isUnique": false,515          "concurrently": false,516          "method": "btree",517          "with": {}518        }519      },520      "foreignKeys": {521        "audit_logs_organization_id_organizations_id_fk": {522          "name": "audit_logs_organization_id_organizations_id_fk",523          "tableFrom": "audit_logs",524          "tableTo": "organizations",525          "columnsFrom": [526            "organization_id"527          ],528          "columnsTo": [529            "id"530          ],531          "onDelete": "cascade",532          "onUpdate": "no action"533        },534        "audit_logs_user_id_users_id_fk": {535          "name": "audit_logs_user_id_users_id_fk",536          "tableFrom": "audit_logs",537          "tableTo": "users",538          "columnsFrom": [539            "user_id"540          ],541          "columnsTo": [542            "id"543          ],544          "onDelete": "set null",545          "onUpdate": "no action"546        }547      },548      "compositePrimaryKeys": {},549      "uniqueConstraints": {},550      "policies": {},551      "checkConstraints": {},552      "isRLSEnabled": false553    },554    "public.billing_events": {555      "name": "billing_events",556      "schema": "",557      "columns": {558        "id": {559          "name": "id",560          "type": "text",561          "primaryKey": true,562          "notNull": true563        },564        "organization_id": {565          "name": "organization_id",566          "type": "text",567          "primaryKey": false,568          "notNull": false569        },570        "type": {571          "name": "type",572          "type": "text",573          "primaryKey": false,574          "notNull": true575        },576        "stripe_event_id": {577          "name": "stripe_event_id",578          "type": "text",579          "primaryKey": false,580          "notNull": false581        },582        "payload": {583          "name": "payload",584          "type": "jsonb",585          "primaryKey": false,586          "notNull": false587        },588        "created_at": {589          "name": "created_at",590          "type": "timestamp with time zone",591          "primaryKey": false,592          "notNull": true,593          "default": "now()"594        }595      },596      "indexes": {597        "billing_events_org_idx": {598          "name": "billing_events_org_idx",599          "columns": [600            {601              "expression": "organization_id",602              "isExpression": false,603              "asc": true,604              "nulls": "last"605            }606          ],607          "isUnique": false,608          "concurrently": false,609          "method": "btree",610          "with": {}611        }612      },613      "foreignKeys": {614        "billing_events_organization_id_organizations_id_fk": {615          "name": "billing_events_organization_id_organizations_id_fk",616          "tableFrom": "billing_events",617          "tableTo": "organizations",618          "columnsFrom": [619            "organization_id"620          ],621          "columnsTo": [622            "id"623          ],624          "onDelete": "set null",625          "onUpdate": "no action"626        }627      },628      "compositePrimaryKeys": {},629      "uniqueConstraints": {},630      "policies": {},631      "checkConstraints": {},632      "isRLSEnabled": false633    },634    "public.crawl_jobs": {635      "name": "crawl_jobs",636      "schema": "",637      "columns": {638        "id": {639          "name": "id",640          "type": "text",641          "primaryKey": true,642          "notNull": true643        },644        "organization_id": {645          "name": "organization_id",646          "type": "text",647          "primaryKey": false,648          "notNull": true649        },650        "project_id": {651          "name": "project_id",652          "type": "text",653          "primaryKey": false,654          "notNull": true655        },656        "api_key_id": {657          "name": "api_key_id",658          "type": "text",659          "primaryKey": false,660          "notNull": false661        },662        "source": {663          "name": "source",664          "type": "text",665          "primaryKey": false,666          "notNull": true,667          "default": "'api'"668        },669        "label": {670          "name": "label",671          "type": "text",672          "primaryKey": false,673          "notNull": false674        },675        "seed_url": {676          "name": "seed_url",677          "type": "text",678          "primaryKey": false,679          "notNull": true680        },681        "domain": {682          "name": "domain",683          "type": "text",684          "primaryKey": false,685          "notNull": true686        },687        "options": {688          "name": "options",689          "type": "jsonb",690          "primaryKey": false,691          "notNull": true692        },693        "status": {694          "name": "status",695          "type": "text",696          "primaryKey": false,697          "notNull": true,698          "default": "'queued'"699        },700        "worker_id": {701          "name": "worker_id",702          "type": "text",703          "primaryKey": false,704          "notNull": false705        },706        "pages_discovered": {707          "name": "pages_discovered",708          "type": "integer",709          "primaryKey": false,710          "notNull": true,711          "default": 0712        },713        "pages_fetched": {714          "name": "pages_fetched",715          "type": "integer",716          "primaryKey": false,717          "notNull": true,718          "default": 0719        },720        "pages_ok": {721          "name": "pages_ok",722          "type": "integer",723          "primaryKey": false,724          "notNull": true,725          "default": 0726        },727        "pages_blocked": {728          "name": "pages_blocked",729          "type": "integer",730          "primaryKey": false,731          "notNull": true,732          "default": 0733        },734        "pages_failed": {735          "name": "pages_failed",736          "type": "integer",737          "primaryKey": false,738          "notNull": true,739          "default": 0740        },741        "bytes": {742          "name": "bytes",743          "type": "bigint",744          "primaryKey": false,745          "notNull": true,746          "default": 0747        },748        "cost_usd": {749          "name": "cost_usd",750          "type": "double precision",751          "primaryKey": false,752          "notNull": true,753          "default": 0754        },755        "error_code": {756          "name": "error_code",757          "type": "text",758          "primaryKey": false,759          "notNull": false760        },761        "error_message": {762          "name": "error_message",763          "type": "text",764          "primaryKey": false,765          "notNull": false766        },767        "webhook_status": {768          "name": "webhook_status",769          "type": "text",770          "primaryKey": false,771          "notNull": false772        },773        "created_at": {774          "name": "created_at",775          "type": "timestamp with time zone",776          "primaryKey": false,777          "notNull": true,778          "default": "now()"779        },780        "started_at": {781          "name": "started_at",782          "type": "timestamp with time zone",783          "primaryKey": false,784          "notNull": false785        },786        "heartbeat_at": {787          "name": "heartbeat_at",788          "type": "timestamp with time zone",789          "primaryKey": false,790          "notNull": false791        },792        "completed_at": {793          "name": "completed_at",794          "type": "timestamp with time zone",795          "primaryKey": false,796          "notNull": false797        }798      },799      "indexes": {800        "crawl_jobs_project_created_idx": {801          "name": "crawl_jobs_project_created_idx",802          "columns": [803            {804              "expression": "project_id",805              "isExpression": false,806              "asc": true,807              "nulls": "last"808            },809            {810              "expression": "created_at",811              "isExpression": false,812              "asc": true,813              "nulls": "last"814            }815          ],816          "isUnique": false,817          "concurrently": false,818          "method": "btree",819          "with": {}820        },821        "crawl_jobs_status_idx": {822          "name": "crawl_jobs_status_idx",823          "columns": [824            {825              "expression": "status",826              "isExpression": false,827              "asc": true,828              "nulls": "last"829            }830          ],831          "isUnique": false,832          "concurrently": false,833          "method": "btree",834          "with": {}835        }836      },837      "foreignKeys": {838        "crawl_jobs_organization_id_organizations_id_fk": {839          "name": "crawl_jobs_organization_id_organizations_id_fk",840          "tableFrom": "crawl_jobs",841          "tableTo": "organizations",842          "columnsFrom": [843            "organization_id"844          ],845          "columnsTo": [846            "id"847          ],848          "onDelete": "cascade",849          "onUpdate": "no action"850        },851        "crawl_jobs_project_id_projects_id_fk": {852          "name": "crawl_jobs_project_id_projects_id_fk",853          "tableFrom": "crawl_jobs",854          "tableTo": "projects",855          "columnsFrom": [856            "project_id"857          ],858          "columnsTo": [859            "id"860          ],861          "onDelete": "cascade",862          "onUpdate": "no action"863        },864        "crawl_jobs_api_key_id_api_keys_id_fk": {865          "name": "crawl_jobs_api_key_id_api_keys_id_fk",866          "tableFrom": "crawl_jobs",867          "tableTo": "api_keys",868          "columnsFrom": [869            "api_key_id"870          ],871          "columnsTo": [872            "id"873          ],874          "onDelete": "set null",875          "onUpdate": "no action"876        }877      },878      "compositePrimaryKeys": {},879      "uniqueConstraints": {},880      "policies": {},881      "checkConstraints": {},882      "isRLSEnabled": false883    },884    "public.crawl_pages": {885      "name": "crawl_pages",886      "schema": "",887      "columns": {888        "id": {889          "name": "id",890          "type": "text",891          "primaryKey": true,892          "notNull": true893        },894        "job_id": {895          "name": "job_id",896          "type": "text",897          "primaryKey": false,898          "notNull": true899        },900        "url": {901          "name": "url",902          "type": "text",903          "primaryKey": false,904          "notNull": true905        },906        "final_url": {907          "name": "final_url",908          "type": "text",909          "primaryKey": false,910          "notNull": false911        },912        "depth": {913          "name": "depth",914          "type": "integer",915          "primaryKey": false,916          "notNull": true,917          "default": 0918        },919        "parent_url": {920          "name": "parent_url",921          "type": "text",922          "primaryKey": false,923          "notNull": false924        },925        "status": {926          "name": "status",927          "type": "text",928          "primaryKey": false,929          "notNull": true,930          "default": "'pending'"931        },932        "http_status": {933          "name": "http_status",934          "type": "integer",935          "primaryKey": false,936          "notNull": false937        },938        "error_code": {939          "name": "error_code",940          "type": "text",941          "primaryKey": false,942          "notNull": false943        },944        "request_id": {945          "name": "request_id",946          "type": "text",947          "primaryKey": false,948          "notNull": false949        },950        "title": {951          "name": "title",952          "type": "text",953          "primaryKey": false,954          "notNull": false955        },956        "description": {957          "name": "description",958          "type": "text",959          "primaryKey": false,960          "notNull": false961        },962        "content_type": {963          "name": "content_type",964          "type": "text",965          "primaryKey": false,966          "notNull": false967        },968        "content": {969          "name": "content",970          "type": "text",971          "primaryKey": false,972          "notNull": false973        },974        "links_count": {975          "name": "links_count",976          "type": "integer",977          "primaryKey": false,978          "notNull": true,979          "default": 0980        },981        "bytes": {982          "name": "bytes",983          "type": "bigint",984          "primaryKey": false,985          "notNull": true,986          "default": 0987        },988        "duration_ms": {989          "name": "duration_ms",990          "type": "integer",991          "primaryKey": false,992          "notNull": false993        },994        "mode": {995          "name": "mode",996          "type": "text",997          "primaryKey": false,998          "notNull": false999        },1000        "created_at": {1001          "name": "created_at",1002          "type": "timestamp with time zone",1003          "primaryKey": false,1004          "notNull": true,1005          "default": "now()"1006        },1007        "fetched_at": {1008          "name": "fetched_at",1009          "type": "timestamp with time zone",1010          "primaryKey": false,1011          "notNull": false1012        }1013      },1014      "indexes": {1015        "crawl_pages_job_idx": {1016          "name": "crawl_pages_job_idx",1017          "columns": [1018            {1019              "expression": "job_id",1020              "isExpression": false,1021              "asc": true,1022              "nulls": "last"1023            },1024            {1025              "expression": "created_at",1026              "isExpression": false,1027              "asc": true,1028              "nulls": "last"1029            }1030          ],1031          "isUnique": false,1032          "concurrently": false,1033          "method": "btree",1034          "with": {}1035        },1036        "crawl_pages_job_url_uq": {1037          "name": "crawl_pages_job_url_uq",1038          "columns": [1039            {1040              "expression": "job_id",1041              "isExpression": false,1042              "asc": true,1043              "nulls": "last"1044            },1045            {1046              "expression": "url",1047              "isExpression": false,1048              "asc": true,1049              "nulls": "last"1050            }1051          ],1052          "isUnique": true,1053          "concurrently": false,1054          "method": "btree",1055          "with": {}1056        }1057      },1058      "foreignKeys": {1059        "crawl_pages_job_id_crawl_jobs_id_fk": {1060          "name": "crawl_pages_job_id_crawl_jobs_id_fk",1061          "tableFrom": "crawl_pages",1062          "tableTo": "crawl_jobs",1063          "columnsFrom": [1064            "job_id"1065          ],1066          "columnsTo": [1067            "id"1068          ],1069          "onDelete": "cascade",1070          "onUpdate": "no action"1071        }1072      },1073      "compositePrimaryKeys": {},1074      "uniqueConstraints": {},1075      "policies": {},1076      "checkConstraints": {},1077      "isRLSEnabled": false1078    },1079    "public.domain_profiles": {1080      "name": "domain_profiles",1081      "schema": "",1082      "columns": {1083        "domain": {1084          "name": "domain",1085          "type": "text",1086          "primaryKey": true,1087          "notNull": true1088        },1089        "preferred_network": {1090          "name": "preferred_network",1091          "type": "text",1092          "primaryKey": false,1093          "notNull": false1094        },1095        "preferred_provider": {1096          "name": "preferred_provider",1097          "type": "text",1098          "primaryKey": false,1099          "notNull": false1100        },1101        "requests": {1102          "name": "requests",1103          "type": "integer",1104          "primaryKey": false,1105          "notNull": true,1106          "default": 01107        },1108        "successes": {1109          "name": "successes",1110          "type": "integer",1111          "primaryKey": false,1112          "notNull": true,1113          "default": 01114        },1115        "blocks": {1116          "name": "blocks",1117          "type": "integer",1118          "primaryKey": false,1119          "notNull": true,1120          "default": 01121        },1122        "captchas": {1123          "name": "captchas",1124          "type": "integer",1125          "primaryKey": false,1126          "notNull": true,1127          "default": 01128        },1129        "browser_required": {1130          "name": "browser_required",1131          "type": "integer",1132          "primaryKey": false,1133          "notNull": true,1134          "default": 01135        },1136        "avg_latency_ms": {1137          "name": "avg_latency_ms",1138          "type": "double precision",1139          "primaryKey": false,1140          "notNull": true,1141          "default": 01142        },1143        "route_stats": {1144          "name": "route_stats",1145          "type": "jsonb",1146          "primaryKey": false,1147          "notNull": true,1148          "default": "'{}'::jsonb"1149        },1150        "policy": {1151          "name": "policy",1152          "type": "jsonb",1153          "primaryKey": false,1154          "notNull": false1155        },1156        "last_seen_at": {1157          "name": "last_seen_at",1158          "type": "timestamp with time zone",1159          "primaryKey": false,1160          "notNull": true,1161          "default": "now()"1162        },1163        "updated_at": {1164          "name": "updated_at",1165          "type": "timestamp with time zone",1166          "primaryKey": false,1167          "notNull": true,1168          "default": "now()"1169        }1170      },1171      "indexes": {},1172      "foreignKeys": {},1173      "compositePrimaryKeys": {},1174      "uniqueConstraints": {},1175      "policies": {},1176      "checkConstraints": {},1177      "isRLSEnabled": false1178    },1179    "public.feature_flags": {1180      "name": "feature_flags",1181      "schema": "",1182      "columns": {1183        "key": {1184          "name": "key",1185          "type": "text",1186          "primaryKey": true,1187          "notNull": true1188        },1189        "enabled": {1190          "name": "enabled",1191          "type": "boolean",1192          "primaryKey": false,1193          "notNull": true,1194          "default": false1195        },1196        "description": {1197          "name": "description",1198          "type": "text",1199          "primaryKey": false,1200          "notNull": false1201        },1202        "plans": {1203          "name": "plans",1204          "type": "jsonb",1205          "primaryKey": false,1206          "notNull": false1207        },1208        "organization_ids": {1209          "name": "organization_ids",1210          "type": "jsonb",1211          "primaryKey": false,1212          "notNull": false1213        },1214        "updated_at": {1215          "name": "updated_at",1216          "type": "timestamp with time zone",1217          "primaryKey": false,1218          "notNull": true,1219          "default": "now()"1220        }1221      },1222      "indexes": {},1223      "foreignKeys": {},1224      "compositePrimaryKeys": {},1225      "uniqueConstraints": {},1226      "policies": {},1227      "checkConstraints": {},1228      "isRLSEnabled": false1229    },1230    "public.fetch_requests": {1231      "name": "fetch_requests",1232      "schema": "",1233      "columns": {1234        "id": {1235          "name": "id",1236          "type": "text",1237          "primaryKey": true,1238          "notNull": true1239        },1240        "organization_id": {1241          "name": "organization_id",1242          "type": "text",1243          "primaryKey": false,1244          "notNull": true1245        },1246        "project_id": {1247          "name": "project_id",1248          "type": "text",1249          "primaryKey": false,1250          "notNull": true1251        },1252        "api_key_id": {1253          "name": "api_key_id",1254          "type": "text",1255          "primaryKey": false,1256          "notNull": false1257        },1258        "source": {1259          "name": "source",1260          "type": "text",1261          "primaryKey": false,1262          "notNull": true,1263          "default": "'api'"1264        },1265        "url": {1266          "name": "url",1267          "type": "text",1268          "primaryKey": false,1269          "notNull": true1270        },1271        "final_url": {1272          "name": "final_url",1273          "type": "text",1274          "primaryKey": false,1275          "notNull": false1276        },1277        "domain": {1278          "name": "domain",1279          "type": "text",1280          "primaryKey": false,1281          "notNull": true1282        },1283        "method": {1284          "name": "method",1285          "type": "text",1286          "primaryKey": false,1287          "notNull": true,1288          "default": "'GET'"1289        },1290        "requested_network": {1291          "name": "requested_network",1292          "type": "text",1293          "primaryKey": false,1294          "notNull": true,1295          "default": "'auto'"1296        },1297        "network": {1298          "name": "network",1299          "type": "text",1300          "primaryKey": false,1301          "notNull": false1302        },1303        "country": {1304          "name": "country",1305          "type": "text",1306          "primaryKey": false,1307          "notNull": false1308        },1309        "region": {1310          "name": "region",1311          "type": "text",1312          "primaryKey": false,1313          "notNull": false1314        },1315        "city": {1316          "name": "city",1317          "type": "text",1318          "primaryKey": false,1319          "notNull": false1320        },1321        "session_id": {1322          "name": "session_id",1323          "type": "text",1324          "primaryKey": false,1325          "notNull": false1326        },1327        "browser": {1328          "name": "browser",1329          "type": "boolean",1330          "primaryKey": false,1331          "notNull": true,1332          "default": false1333        },1334        "mode": {1335          "name": "mode",1336          "type": "text",1337          "primaryKey": false,1338          "notNull": false1339        },1340        "format": {1341          "name": "format",1342          "type": "text",1343          "primaryKey": false,1344          "notNull": true,1345          "default": "'html'"1346        },1347        "status": {1348          "name": "status",1349          "type": "text",1350          "primaryKey": false,1351          "notNull": true,1352          "default": "'pending'"1353        },1354        "http_status": {1355          "name": "http_status",1356          "type": "integer",1357          "primaryKey": false,1358          "notNull": false1359        },1360        "error_code": {1361          "name": "error_code",1362          "type": "text",1363          "primaryKey": false,1364          "notNull": false1365        },1366        "error_message": {1367          "name": "error_message",1368          "type": "text",1369          "primaryKey": false,1370          "notNull": false1371        },1372        "attempts": {1373          "name": "attempts",1374          "type": "integer",1375          "primaryKey": false,1376          "notNull": true,1377          "default": 01378        },1379        "latency_ms": {1380          "name": "latency_ms",1381          "type": "integer",1382          "primaryKey": false,1383          "notNull": false1384        },1385        "bytes_in": {1386          "name": "bytes_in",1387          "type": "bigint",1388          "primaryKey": false,1389          "notNull": true,1390          "default": 01391        },1392        "bytes_out": {1393          "name": "bytes_out",1394          "type": "bigint",1395          "primaryKey": false,1396          "notNull": true,1397          "default": 01398        },1399        "cost_usd": {1400          "name": "cost_usd",1401          "type": "double precision",1402          "primaryKey": false,1403          "notNull": true,1404          "default": 01405        },1406        "price_usd": {1407          "name": "price_usd",1408          "type": "double precision",1409          "primaryKey": false,1410          "notNull": true,1411          "default": 01412        },1413        "cached": {1414          "name": "cached",1415          "type": "boolean",1416          "primaryKey": false,1417          "notNull": true,1418          "default": false1419        },1420        "request_headers": {1421          "name": "request_headers",1422          "type": "jsonb",1423          "primaryKey": false,1424          "notNull": false1425        },1426        "response_headers": {1427          "name": "response_headers",1428          "type": "jsonb",1429          "primaryKey": false,1430          "notNull": false1431        },1432        "timing": {1433          "name": "timing",1434          "type": "jsonb",1435          "primaryKey": false,1436          "notNull": false1437        },1438        "client_ip": {1439          "name": "client_ip",1440          "type": "text",1441          "primaryKey": false,1442          "notNull": false1443        },1444        "user_agent": {1445          "name": "user_agent",1446          "type": "text",1447          "primaryKey": false,1448          "notNull": false1449        },1450        "created_at": {1451          "name": "created_at",1452          "type": "timestamp with time zone",1453          "primaryKey": false,1454          "notNull": true,1455          "default": "now()"1456        },1457        "completed_at": {1458          "name": "completed_at",1459          "type": "timestamp with time zone",1460          "primaryKey": false,1461          "notNull": false1462        }1463      },1464      "indexes": {1465        "fetch_requests_project_created_idx": {1466          "name": "fetch_requests_project_created_idx",1467          "columns": [1468            {1469              "expression": "project_id",1470              "isExpression": false,1471              "asc": true,1472              "nulls": "last"1473            },1474            {1475              "expression": "created_at",1476              "isExpression": false,1477              "asc": true,1478              "nulls": "last"1479            }1480          ],1481          "isUnique": false,1482          "concurrently": false,1483          "method": "btree",1484          "with": {}1485        },1486        "fetch_requests_org_created_idx": {1487          "name": "fetch_requests_org_created_idx",1488          "columns": [1489            {1490              "expression": "organization_id",1491              "isExpression": false,1492              "asc": true,1493              "nulls": "last"1494            },1495            {1496              "expression": "created_at",1497              "isExpression": false,1498              "asc": true,1499              "nulls": "last"1500            }1501          ],1502          "isUnique": false,1503          "concurrently": false,1504          "method": "btree",1505          "with": {}1506        },1507        "fetch_requests_domain_idx": {1508          "name": "fetch_requests_domain_idx",1509          "columns": [1510            {1511              "expression": "domain",1512              "isExpression": false,1513              "asc": true,1514              "nulls": "last"1515            }1516          ],1517          "isUnique": false,1518          "concurrently": false,1519          "method": "btree",1520          "with": {}1521        },1522        "fetch_requests_created_idx": {1523          "name": "fetch_requests_created_idx",1524          "columns": [1525            {1526              "expression": "created_at",1527              "isExpression": false,1528              "asc": true,1529              "nulls": "last"1530            }1531          ],1532          "isUnique": false,1533          "concurrently": false,1534          "method": "btree",1535          "with": {}1536        }1537      },1538      "foreignKeys": {1539        "fetch_requests_organization_id_organizations_id_fk": {1540          "name": "fetch_requests_organization_id_organizations_id_fk",1541          "tableFrom": "fetch_requests",1542          "tableTo": "organizations",1543          "columnsFrom": [1544            "organization_id"1545          ],1546          "columnsTo": [1547            "id"1548          ],1549          "onDelete": "cascade",1550          "onUpdate": "no action"1551        },1552        "fetch_requests_project_id_projects_id_fk": {1553          "name": "fetch_requests_project_id_projects_id_fk",1554          "tableFrom": "fetch_requests",1555          "tableTo": "projects",1556          "columnsFrom": [1557            "project_id"1558          ],1559          "columnsTo": [1560            "id"1561          ],1562          "onDelete": "cascade",1563          "onUpdate": "no action"1564        },1565        "fetch_requests_api_key_id_api_keys_id_fk": {1566          "name": "fetch_requests_api_key_id_api_keys_id_fk",1567          "tableFrom": "fetch_requests",1568          "tableTo": "api_keys",1569          "columnsFrom": [1570            "api_key_id"1571          ],1572          "columnsTo": [1573            "id"1574          ],1575          "onDelete": "set null",1576          "onUpdate": "no action"1577        }1578      },1579      "compositePrimaryKeys": {},1580      "uniqueConstraints": {},1581      "policies": {},1582      "checkConstraints": {},1583      "isRLSEnabled": false1584    },1585    "public.legal_acceptances": {1586      "name": "legal_acceptances",1587      "schema": "",1588      "columns": {1589        "id": {1590          "name": "id",1591          "type": "text",1592          "primaryKey": true,1593          "notNull": true1594        },1595        "user_id": {1596          "name": "user_id",1597          "type": "text",1598          "primaryKey": false,1599          "notNull": true1600        },1601        "document": {1602          "name": "document",1603          "type": "text",1604          "primaryKey": false,1605          "notNull": true1606        },1607        "version": {1608          "name": "version",1609          "type": "text",1610          "primaryKey": false,1611          "notNull": true1612        },1613        "ip_address": {1614          "name": "ip_address",1615          "type": "text",1616          "primaryKey": false,1617          "notNull": false1618        },1619        "accepted_at": {1620          "name": "accepted_at",1621          "type": "timestamp with time zone",1622          "primaryKey": false,1623          "notNull": true,1624          "default": "now()"1625        }1626      },1627      "indexes": {1628        "legal_acceptances_user_idx": {1629          "name": "legal_acceptances_user_idx",1630          "columns": [1631            {1632              "expression": "user_id",1633              "isExpression": false,1634              "asc": true,1635              "nulls": "last"1636            }1637          ],1638          "isUnique": false,1639          "concurrently": false,1640          "method": "btree",1641          "with": {}1642        }1643      },1644      "foreignKeys": {1645        "legal_acceptances_user_id_users_id_fk": {1646          "name": "legal_acceptances_user_id_users_id_fk",1647          "tableFrom": "legal_acceptances",1648          "tableTo": "users",1649          "columnsFrom": [1650            "user_id"1651          ],1652          "columnsTo": [1653            "id"1654          ],1655          "onDelete": "cascade",1656          "onUpdate": "no action"1657        }1658      },1659      "compositePrimaryKeys": {},1660      "uniqueConstraints": {},1661      "policies": {},1662      "checkConstraints": {},1663      "isRLSEnabled": false1664    },1665    "public.organization_members": {1666      "name": "organization_members",1667      "schema": "",1668      "columns": {1669        "organization_id": {1670          "name": "organization_id",1671          "type": "text",1672          "primaryKey": false,1673          "notNull": true1674        },1675        "user_id": {1676          "name": "user_id",1677          "type": "text",1678          "primaryKey": false,1679          "notNull": true1680        },1681        "role": {1682          "name": "role",1683          "type": "text",1684          "primaryKey": false,1685          "notNull": true,1686          "default": "'owner'"1687        },1688        "created_at": {1689          "name": "created_at",1690          "type": "timestamp with time zone",1691          "primaryKey": false,1692          "notNull": true,1693          "default": "now()"1694        }1695      },1696      "indexes": {1697        "org_members_user_idx": {1698          "name": "org_members_user_idx",1699          "columns": [1700            {1701              "expression": "user_id",1702              "isExpression": false,1703              "asc": true,1704              "nulls": "last"1705            }1706          ],1707          "isUnique": false,1708          "concurrently": false,1709          "method": "btree",1710          "with": {}1711        }1712      },1713      "foreignKeys": {1714        "organization_members_organization_id_organizations_id_fk": {1715          "name": "organization_members_organization_id_organizations_id_fk",1716          "tableFrom": "organization_members",1717          "tableTo": "organizations",1718          "columnsFrom": [1719            "organization_id"1720          ],1721          "columnsTo": [1722            "id"1723          ],1724          "onDelete": "cascade",1725          "onUpdate": "no action"1726        },1727        "organization_members_user_id_users_id_fk": {1728          "name": "organization_members_user_id_users_id_fk",1729          "tableFrom": "organization_members",1730          "tableTo": "users",1731          "columnsFrom": [1732            "user_id"1733          ],1734          "columnsTo": [1735            "id"1736          ],1737          "onDelete": "cascade",1738          "onUpdate": "no action"1739        }1740      },1741      "compositePrimaryKeys": {1742        "organization_members_organization_id_user_id_pk": {1743          "name": "organization_members_organization_id_user_id_pk",1744          "columns": [1745            "organization_id",1746            "user_id"1747          ]1748        }1749      },1750      "uniqueConstraints": {},1751      "policies": {},1752      "checkConstraints": {},1753      "isRLSEnabled": false1754    },1755    "public.organizations": {1756      "name": "organizations",1757      "schema": "",1758      "columns": {1759        "id": {1760          "name": "id",1761          "type": "text",1762          "primaryKey": true,1763          "notNull": true1764        },1765        "name": {1766          "name": "name",1767          "type": "text",1768          "primaryKey": false,1769          "notNull": true1770        },1771        "slug": {1772          "name": "slug",1773          "type": "text",1774          "primaryKey": false,1775          "notNull": true1776        },1777        "plan": {1778          "name": "plan",1779          "type": "text",1780          "primaryKey": false,1781          "notNull": true,1782          "default": "'unlimited'"1783        },1784        "owner_user_id": {1785          "name": "owner_user_id",1786          "type": "text",1787          "primaryKey": false,1788          "notNull": true1789        },1790        "provider_visibility": {1791          "name": "provider_visibility",1792          "type": "boolean",1793          "primaryKey": false,1794          "notNull": true,1795          "default": false1796        },1797        "soft_limit_usd": {1798          "name": "soft_limit_usd",1799          "type": "double precision",1800          "primaryKey": false,1801          "notNull": false1802        },1803        "hard_limit_usd": {1804          "name": "hard_limit_usd",1805          "type": "double precision",1806          "primaryKey": false,1807          "notNull": false1808        },1809        "stripe_customer_id": {1810          "name": "stripe_customer_id",1811          "type": "text",1812          "primaryKey": false,1813          "notNull": false1814        },1815        "suspended": {1816          "name": "suspended",1817          "type": "boolean",1818          "primaryKey": false,1819          "notNull": true,1820          "default": false1821        },1822        "created_at": {1823          "name": "created_at",1824          "type": "timestamp with time zone",1825          "primaryKey": false,1826          "notNull": true,1827          "default": "now()"1828        },1829        "updated_at": {1830          "name": "updated_at",1831          "type": "timestamp with time zone",1832          "primaryKey": false,1833          "notNull": true,1834          "default": "now()"1835        }1836      },1837      "indexes": {1838        "organizations_slug_uq": {1839          "name": "organizations_slug_uq",1840          "columns": [1841            {1842              "expression": "slug",1843              "isExpression": false,1844              "asc": true,1845              "nulls": "last"1846            }1847          ],1848          "isUnique": true,1849          "concurrently": false,1850          "method": "btree",1851          "with": {}1852        },1853        "organizations_owner_idx": {1854          "name": "organizations_owner_idx",1855          "columns": [1856            {1857              "expression": "owner_user_id",1858              "isExpression": false,1859              "asc": true,1860              "nulls": "last"1861            }1862          ],1863          "isUnique": false,1864          "concurrently": false,1865          "method": "btree",1866          "with": {}1867        }1868      },1869      "foreignKeys": {1870        "organizations_owner_user_id_users_id_fk": {1871          "name": "organizations_owner_user_id_users_id_fk",1872          "tableFrom": "organizations",1873          "tableTo": "users",1874          "columnsFrom": [1875            "owner_user_id"1876          ],1877          "columnsTo": [1878            "id"1879          ],1880          "onDelete": "restrict",1881          "onUpdate": "no action"1882        }1883      },1884      "compositePrimaryKeys": {},1885      "uniqueConstraints": {},1886      "policies": {},1887      "checkConstraints": {},1888      "isRLSEnabled": false1889    },1890    "public.projects": {1891      "name": "projects",1892      "schema": "",1893      "columns": {1894        "id": {1895          "name": "id",1896          "type": "text",1897          "primaryKey": true,1898          "notNull": true1899        },1900        "organization_id": {1901          "name": "organization_id",1902          "type": "text",1903          "primaryKey": false,1904          "notNull": true1905        },1906        "name": {1907          "name": "name",1908          "type": "text",1909          "primaryKey": false,1910          "notNull": true1911        },1912        "slug": {1913          "name": "slug",1914          "type": "text",1915          "primaryKey": false,1916          "notNull": true1917        },1918        "description": {1919          "name": "description",1920          "type": "text",1921          "primaryKey": false,1922          "notNull": false1923        },1924        "environment": {1925          "name": "environment",1926          "type": "text",1927          "primaryKey": false,1928          "notNull": true,1929          "default": "'production'"1930        },1931        "default_country": {1932          "name": "default_country",1933          "type": "text",1934          "primaryKey": false,1935          "notNull": false1936        },1937        "default_network": {1938          "name": "default_network",1939          "type": "text",1940          "primaryKey": false,1941          "notNull": true,1942          "default": "'auto'"1943        },1944        "log_level": {1945          "name": "log_level",1946          "type": "text",1947          "primaryKey": false,1948          "notNull": true,1949          "default": "'metadata'"1950        },1951        "soft_limit_usd": {1952          "name": "soft_limit_usd",1953          "type": "double precision",1954          "primaryKey": false,1955          "notNull": false1956        },1957        "hard_limit_usd": {1958          "name": "hard_limit_usd",1959          "type": "double precision",1960          "primaryKey": false,1961          "notNull": false1962        },1963        "monthly_request_limit": {1964          "name": "monthly_request_limit",1965          "type": "integer",1966          "primaryKey": false,1967          "notNull": false1968        },1969        "archived_at": {1970          "name": "archived_at",1971          "type": "timestamp with time zone",1972          "primaryKey": false,1973          "notNull": false1974        },1975        "created_at": {1976          "name": "created_at",1977          "type": "timestamp with time zone",1978          "primaryKey": false,1979          "notNull": true,1980          "default": "now()"1981        },1982        "updated_at": {1983          "name": "updated_at",1984          "type": "timestamp with time zone",1985          "primaryKey": false,1986          "notNull": true,1987          "default": "now()"1988        }1989      },1990      "indexes": {1991        "projects_org_slug_uq": {1992          "name": "projects_org_slug_uq",1993          "columns": [1994            {1995              "expression": "organization_id",1996              "isExpression": false,1997              "asc": true,1998              "nulls": "last"1999            },2000            {2001              "expression": "slug",2002              "isExpression": false,2003              "asc": true,2004              "nulls": "last"2005            }2006          ],2007          "isUnique": true,2008          "concurrently": false,2009          "method": "btree",2010          "with": {}2011        },2012        "projects_org_idx": {2013          "name": "projects_org_idx",2014          "columns": [2015            {2016              "expression": "organization_id",2017              "isExpression": false,2018              "asc": true,2019              "nulls": "last"2020            }2021          ],2022          "isUnique": false,2023          "concurrently": false,2024          "method": "btree",2025          "with": {}2026        }2027      },2028      "foreignKeys": {2029        "projects_organization_id_organizations_id_fk": {2030          "name": "projects_organization_id_organizations_id_fk",2031          "tableFrom": "projects",2032          "tableTo": "organizations",2033          "columnsFrom": [2034            "organization_id"2035          ],2036          "columnsTo": [2037            "id"2038          ],2039          "onDelete": "cascade",2040          "onUpdate": "no action"2041        }2042      },2043      "compositePrimaryKeys": {},2044      "uniqueConstraints": {},2045      "policies": {},2046      "checkConstraints": {},2047      "isRLSEnabled": false2048    },2049    "public.provider_configs": {2050      "name": "provider_configs",2051      "schema": "",2052      "columns": {2053        "id": {2054          "name": "id",2055          "type": "text",2056          "primaryKey": true,2057          "notNull": true2058        },2059        "label": {2060          "name": "label",2061          "type": "text",2062          "primaryKey": false,2063          "notNull": true2064        },2065        "enabled": {2066          "name": "enabled",2067          "type": "boolean",2068          "primaryKey": false,2069          "notNull": true,2070          "default": true2071        },2072        "networks": {2073          "name": "networks",2074          "type": "jsonb",2075          "primaryKey": false,2076          "notNull": true,2077          "default": "'[\"residential\"]'::jsonb"2078        },2079        "price_per_gb_usd": {2080          "name": "price_per_gb_usd",2081          "type": "jsonb",2082          "primaryKey": false,2083          "notNull": true,2084          "default": "'{}'::jsonb"2085        },2086        "weight": {2087          "name": "weight",2088          "type": "double precision",2089          "primaryKey": false,2090          "notNull": true,2091          "default": 12092        },2093        "max_concurrency": {2094          "name": "max_concurrency",2095          "type": "integer",2096          "primaryKey": false,2097          "notNull": true,2098          "default": 2002099        },2100        "notes": {2101          "name": "notes",2102          "type": "text",2103          "primaryKey": false,2104          "notNull": false2105        },2106        "updated_at": {2107          "name": "updated_at",2108          "type": "timestamp with time zone",2109          "primaryKey": false,2110          "notNull": true,2111          "default": "now()"2112        }2113      },2114      "indexes": {},2115      "foreignKeys": {},2116      "compositePrimaryKeys": {},2117      "uniqueConstraints": {},2118      "policies": {},2119      "checkConstraints": {},2120      "isRLSEnabled": false2121    },2122    "public.provider_health": {2123      "name": "provider_health",2124      "schema": "",2125      "columns": {2126        "id": {2127          "name": "id",2128          "type": "text",2129          "primaryKey": true,2130          "notNull": true2131        },2132        "provider": {2133          "name": "provider",2134          "type": "text",2135          "primaryKey": false,2136          "notNull": true2137        },2138        "network": {2139          "name": "network",2140          "type": "text",2141          "primaryKey": false,2142          "notNull": true2143        },2144        "status": {2145          "name": "status",2146          "type": "text",2147          "primaryKey": false,2148          "notNull": true2149        },2150        "latency_ms": {2151          "name": "latency_ms",2152          "type": "integer",2153          "primaryKey": false,2154          "notNull": false2155        },2156        "success_rate": {2157          "name": "success_rate",2158          "type": "double precision",2159          "primaryKey": false,2160          "notNull": false2161        },2162        "detail": {2163          "name": "detail",2164          "type": "text",2165          "primaryKey": false,2166          "notNull": false2167        },2168        "checked_at": {2169          "name": "checked_at",2170          "type": "timestamp with time zone",2171          "primaryKey": false,2172          "notNull": true,2173          "default": "now()"2174        }2175      },2176      "indexes": {2177        "provider_health_provider_checked_idx": {2178          "name": "provider_health_provider_checked_idx",2179          "columns": [2180            {2181              "expression": "provider",2182              "isExpression": false,2183              "asc": true,2184              "nulls": "last"2185            },2186            {2187              "expression": "checked_at",2188              "isExpression": false,2189              "asc": true,2190              "nulls": "last"2191            }2192          ],2193          "isUnique": false,2194          "concurrently": false,2195          "method": "btree",2196          "with": {}2197        }2198      },2199      "foreignKeys": {},2200      "compositePrimaryKeys": {},2201      "uniqueConstraints": {},2202      "policies": {},2203      "checkConstraints": {},2204      "isRLSEnabled": false2205    },2206    "public.proxy_sessions": {2207      "name": "proxy_sessions",2208      "schema": "",2209      "columns": {2210        "id": {2211          "name": "id",2212          "type": "text",2213          "primaryKey": true,2214          "notNull": true2215        },2216        "organization_id": {2217          "name": "organization_id",2218          "type": "text",2219          "primaryKey": false,2220          "notNull": true2221        },2222        "project_id": {2223          "name": "project_id",2224          "type": "text",2225          "primaryKey": false,2226          "notNull": true2227        },2228        "label": {2229          "name": "label",2230          "type": "text",2231          "primaryKey": false,2232          "notNull": false2233        },2234        "provider": {2235          "name": "provider",2236          "type": "text",2237          "primaryKey": false,2238          "notNull": true2239        },2240        "network": {2241          "name": "network",2242          "type": "text",2243          "primaryKey": false,2244          "notNull": true2245        },2246        "country": {2247          "name": "country",2248          "type": "text",2249          "primaryKey": false,2250          "notNull": false2251        },2252        "region": {2253          "name": "region",2254          "type": "text",2255          "primaryKey": false,2256          "notNull": false2257        },2258        "city": {2259          "name": "city",2260          "type": "text",2261          "primaryKey": false,2262          "notNull": false2263        },2264        "sticky_key": {2265          "name": "sticky_key",2266          "type": "text",2267          "primaryKey": false,2268          "notNull": true2269        },2270        "cookies": {2271          "name": "cookies",2272          "type": "jsonb",2273          "primaryKey": false,2274          "notNull": true,2275          "default": "'[]'::jsonb"2276        },2277        "status": {2278          "name": "status",2279          "type": "text",2280          "primaryKey": false,2281          "notNull": true,2282          "default": "'active'"2283        },2284        "request_count": {2285          "name": "request_count",2286          "type": "integer",2287          "primaryKey": false,2288          "notNull": true,2289          "default": 02290        },2291        "last_used_at": {2292          "name": "last_used_at",2293          "type": "timestamp with time zone",2294          "primaryKey": false,2295          "notNull": false2296        },2297        "expires_at": {2298          "name": "expires_at",2299          "type": "timestamp with time zone",2300          "primaryKey": false,2301          "notNull": true2302        },2303        "created_at": {2304          "name": "created_at",2305          "type": "timestamp with time zone",2306          "primaryKey": false,2307          "notNull": true,2308          "default": "now()"2309        }2310      },2311      "indexes": {2312        "proxy_sessions_project_idx": {2313          "name": "proxy_sessions_project_idx",2314          "columns": [2315            {2316              "expression": "project_id",2317              "isExpression": false,2318              "asc": true,2319              "nulls": "last"2320            }2321          ],2322          "isUnique": false,2323          "concurrently": false,2324          "method": "btree",2325          "with": {}2326        },2327        "proxy_sessions_expires_idx": {2328          "name": "proxy_sessions_expires_idx",2329          "columns": [2330            {2331              "expression": "expires_at",2332              "isExpression": false,2333              "asc": true,2334              "nulls": "last"2335            }2336          ],2337          "isUnique": false,2338          "concurrently": false,2339          "method": "btree",2340          "with": {}2341        }2342      },2343      "foreignKeys": {2344        "proxy_sessions_organization_id_organizations_id_fk": {2345          "name": "proxy_sessions_organization_id_organizations_id_fk",2346          "tableFrom": "proxy_sessions",2347          "tableTo": "organizations",2348          "columnsFrom": [2349            "organization_id"2350          ],2351          "columnsTo": [2352            "id"2353          ],2354          "onDelete": "cascade",2355          "onUpdate": "no action"2356        },2357        "proxy_sessions_project_id_projects_id_fk": {2358          "name": "proxy_sessions_project_id_projects_id_fk",2359          "tableFrom": "proxy_sessions",2360          "tableTo": "projects",2361          "columnsFrom": [2362            "project_id"2363          ],2364          "columnsTo": [2365            "id"2366          ],2367          "onDelete": "cascade",2368          "onUpdate": "no action"2369        }2370      },2371      "compositePrimaryKeys": {},2372      "uniqueConstraints": {},2373      "policies": {},2374      "checkConstraints": {},2375      "isRLSEnabled": false2376    },2377    "public.request_attempts": {2378      "name": "request_attempts",2379      "schema": "",2380      "columns": {2381        "id": {2382          "name": "id",2383          "type": "text",2384          "primaryKey": true,2385          "notNull": true2386        },2387        "request_id": {2388          "name": "request_id",2389          "type": "text",2390          "primaryKey": false,2391          "notNull": true2392        },2393        "attempt_no": {2394          "name": "attempt_no",2395          "type": "integer",2396          "primaryKey": false,2397          "notNull": true2398        },2399        "provider": {2400          "name": "provider",2401          "type": "text",2402          "primaryKey": false,2403          "notNull": true2404        },2405        "network": {2406          "name": "network",2407          "type": "text",2408          "primaryKey": false,2409          "notNull": true2410        },2411        "mode": {2412          "name": "mode",2413          "type": "text",2414          "primaryKey": false,2415          "notNull": true,2416          "default": "'http'"2417        },2418        "country": {2419          "name": "country",2420          "type": "text",2421          "primaryKey": false,2422          "notNull": false2423        },2424        "session_key": {2425          "name": "session_key",2426          "type": "text",2427          "primaryKey": false,2428          "notNull": false2429        },2430        "outcome": {2431          "name": "outcome",2432          "type": "text",2433          "primaryKey": false,2434          "notNull": true2435        },2436        "http_status": {2437          "name": "http_status",2438          "type": "integer",2439          "primaryKey": false,2440          "notNull": false2441        },2442        "error_code": {2443          "name": "error_code",2444          "type": "text",2445          "primaryKey": false,2446          "notNull": false2447        },2448        "error_detail": {2449          "name": "error_detail",2450          "type": "text",2451          "primaryKey": false,2452          "notNull": false2453        },2454        "block_reason": {2455          "name": "block_reason",2456          "type": "text",2457          "primaryKey": false,2458          "notNull": false2459        },2460        "duration_ms": {2461          "name": "duration_ms",2462          "type": "integer",2463          "primaryKey": false,2464          "notNull": true,2465          "default": 02466        },2467        "bytes_in": {2468          "name": "bytes_in",2469          "type": "bigint",2470          "primaryKey": false,2471          "notNull": true,2472          "default": 02473        },2474        "bytes_out": {2475          "name": "bytes_out",2476          "type": "bigint",2477          "primaryKey": false,2478          "notNull": true,2479          "default": 02480        },2481        "unit_price_per_gb": {2482          "name": "unit_price_per_gb",2483          "type": "double precision",2484          "primaryKey": false,2485          "notNull": true,2486          "default": 02487        },2488        "cost_usd": {2489          "name": "cost_usd",2490          "type": "double precision",2491          "primaryKey": false,2492          "notNull": true,2493          "default": 02494        },2495        "routing_score": {2496          "name": "routing_score",2497          "type": "double precision",2498          "primaryKey": false,2499          "notNull": false2500        },2501        "timing": {2502          "name": "timing",2503          "type": "jsonb",2504          "primaryKey": false,2505          "notNull": false2506        },2507        "created_at": {2508          "name": "created_at",2509          "type": "timestamp with time zone",2510          "primaryKey": false,2511          "notNull": true,2512          "default": "now()"2513        }2514      },2515      "indexes": {2516        "request_attempts_request_idx": {2517          "name": "request_attempts_request_idx",2518          "columns": [2519            {2520              "expression": "request_id",2521              "isExpression": false,2522              "asc": true,2523              "nulls": "last"2524            }2525          ],2526          "isUnique": false,2527          "concurrently": false,2528          "method": "btree",2529          "with": {}2530        },2531        "request_attempts_provider_created_idx": {2532          "name": "request_attempts_provider_created_idx",2533          "columns": [2534            {2535              "expression": "provider",2536              "isExpression": false,2537              "asc": true,2538              "nulls": "last"2539            },2540            {2541              "expression": "created_at",2542              "isExpression": false,2543              "asc": true,2544              "nulls": "last"2545            }2546          ],2547          "isUnique": false,2548          "concurrently": false,2549          "method": "btree",2550          "with": {}2551        }2552      },2553      "foreignKeys": {2554        "request_attempts_request_id_fetch_requests_id_fk": {2555          "name": "request_attempts_request_id_fetch_requests_id_fk",2556          "tableFrom": "request_attempts",2557          "tableTo": "fetch_requests",2558          "columnsFrom": [2559            "request_id"2560          ],2561          "columnsTo": [2562            "id"2563          ],2564          "onDelete": "cascade",2565          "onUpdate": "no action"2566        }2567      },2568      "compositePrimaryKeys": {},2569      "uniqueConstraints": {},2570      "policies": {},2571      "checkConstraints": {},2572      "isRLSEnabled": false2573    },2574    "public.routing_metrics": {2575      "name": "routing_metrics",2576      "schema": "",2577      "columns": {2578        "id": {2579          "name": "id",2580          "type": "text",2581          "primaryKey": true,2582          "notNull": true2583        },2584        "bucket": {2585          "name": "bucket",2586          "type": "timestamp with time zone",2587          "primaryKey": false,2588          "notNull": true2589        },2590        "provider": {2591          "name": "provider",2592          "type": "text",2593          "primaryKey": false,2594          "notNull": true2595        },2596        "network": {2597          "name": "network",2598          "type": "text",2599          "primaryKey": false,2600          "notNull": true2601        },2602        "country": {2603          "name": "country",2604          "type": "text",2605          "primaryKey": false,2606          "notNull": false2607        },2608        "requests": {2609          "name": "requests",2610          "type": "integer",2611          "primaryKey": false,2612          "notNull": true,2613          "default": 02614        },2615        "successes": {2616          "name": "successes",2617          "type": "integer",2618          "primaryKey": false,2619          "notNull": true,2620          "default": 02621        },2622        "blocked": {2623          "name": "blocked",2624          "type": "integer",2625          "primaryKey": false,2626          "notNull": true,2627          "default": 02628        },2629        "errors": {2630          "name": "errors",2631          "type": "integer",2632          "primaryKey": false,2633          "notNull": true,2634          "default": 02635        },2636        "latency_sum_ms": {2637          "name": "latency_sum_ms",2638          "type": "bigint",2639          "primaryKey": false,2640          "notNull": true,2641          "default": 02642        },2643        "bytes": {2644          "name": "bytes",2645          "type": "bigint",2646          "primaryKey": false,2647          "notNull": true,2648          "default": 02649        },2650        "cost_usd": {2651          "name": "cost_usd",2652          "type": "double precision",2653          "primaryKey": false,2654          "notNull": true,2655          "default": 02656        }2657      },2658      "indexes": {2659        "routing_metrics_bucket_uq": {2660          "name": "routing_metrics_bucket_uq",2661          "columns": [2662            {2663              "expression": "bucket",2664              "isExpression": false,2665              "asc": true,2666              "nulls": "last"2667            },2668            {2669              "expression": "provider",2670              "isExpression": false,2671              "asc": true,2672              "nulls": "last"2673            },2674            {2675              "expression": "network",2676              "isExpression": false,2677              "asc": true,2678              "nulls": "last"2679            },2680            {2681              "expression": "country",2682              "isExpression": false,2683              "asc": true,2684              "nulls": "last"2685            }2686          ],2687          "isUnique": true,2688          "concurrently": false,2689          "method": "btree",2690          "with": {}2691        }2692      },2693      "foreignKeys": {},2694      "compositePrimaryKeys": {},2695      "uniqueConstraints": {},2696      "policies": {},2697      "checkConstraints": {},2698      "isRLSEnabled": false2699    },2700    "public.sessions": {2701      "name": "sessions",2702      "schema": "",2703      "columns": {2704        "id": {2705          "name": "id",2706          "type": "text",2707          "primaryKey": true,2708          "notNull": true2709        },2710        "expires_at": {2711          "name": "expires_at",2712          "type": "timestamp with time zone",2713          "primaryKey": false,2714          "notNull": true2715        },2716        "token": {2717          "name": "token",2718          "type": "text",2719          "primaryKey": false,2720          "notNull": true2721        },2722        "created_at": {2723          "name": "created_at",2724          "type": "timestamp with time zone",2725          "primaryKey": false,2726          "notNull": true,2727          "default": "now()"2728        },2729        "updated_at": {2730          "name": "updated_at",2731          "type": "timestamp with time zone",2732          "primaryKey": false,2733          "notNull": true,2734          "default": "now()"2735        },2736        "ip_address": {2737          "name": "ip_address",2738          "type": "text",2739          "primaryKey": false,2740          "notNull": false2741        },2742        "user_agent": {2743          "name": "user_agent",2744          "type": "text",2745          "primaryKey": false,2746          "notNull": false2747        },2748        "user_id": {2749          "name": "user_id",2750          "type": "text",2751          "primaryKey": false,2752          "notNull": true2753        }2754      },2755      "indexes": {2756        "sessions_token_uq": {2757          "name": "sessions_token_uq",2758          "columns": [2759            {2760              "expression": "token",2761              "isExpression": false,2762              "asc": true,2763              "nulls": "last"2764            }2765          ],2766          "isUnique": true,2767          "concurrently": false,2768          "method": "btree",2769          "with": {}2770        },2771        "sessions_user_idx": {2772          "name": "sessions_user_idx",2773          "columns": [2774            {2775              "expression": "user_id",2776              "isExpression": false,2777              "asc": true,2778              "nulls": "last"2779            }2780          ],2781          "isUnique": false,2782          "concurrently": false,2783          "method": "btree",2784          "with": {}2785        }2786      },2787      "foreignKeys": {2788        "sessions_user_id_users_id_fk": {2789          "name": "sessions_user_id_users_id_fk",2790          "tableFrom": "sessions",2791          "tableTo": "users",2792          "columnsFrom": [2793            "user_id"2794          ],2795          "columnsTo": [2796            "id"2797          ],2798          "onDelete": "cascade",2799          "onUpdate": "no action"2800        }2801      },2802      "compositePrimaryKeys": {},2803      "uniqueConstraints": {},2804      "policies": {},2805      "checkConstraints": {},2806      "isRLSEnabled": false2807    },2808    "public.signup_allowlist": {2809      "name": "signup_allowlist",2810      "schema": "",2811      "columns": {2812        "email": {2813          "name": "email",2814          "type": "text",2815          "primaryKey": true,2816          "notNull": true2817        },2818        "note": {2819          "name": "note",2820          "type": "text",2821          "primaryKey": false,2822          "notNull": false2823        },2824        "invited_by_user_id": {2825          "name": "invited_by_user_id",2826          "type": "text",2827          "primaryKey": false,2828          "notNull": false2829        },2830        "invited_at": {2831          "name": "invited_at",2832          "type": "timestamp with time zone",2833          "primaryKey": false,2834          "notNull": false2835        },2836        "used_at": {2837          "name": "used_at",2838          "type": "timestamp with time zone",2839          "primaryKey": false,2840          "notNull": false2841        },2842        "user_id": {2843          "name": "user_id",2844          "type": "text",2845          "primaryKey": false,2846          "notNull": false2847        },2848        "created_at": {2849          "name": "created_at",2850          "type": "timestamp with time zone",2851          "primaryKey": false,2852          "notNull": true,2853          "default": "now()"2854        }2855      },2856      "indexes": {2857        "signup_allowlist_user_idx": {2858          "name": "signup_allowlist_user_idx",2859          "columns": [2860            {2861              "expression": "user_id",2862              "isExpression": false,2863              "asc": true,2864              "nulls": "last"2865            }2866          ],2867          "isUnique": false,2868          "concurrently": false,2869          "method": "btree",2870          "with": {}2871        }2872      },2873      "foreignKeys": {2874        "signup_allowlist_invited_by_user_id_users_id_fk": {2875          "name": "signup_allowlist_invited_by_user_id_users_id_fk",2876          "tableFrom": "signup_allowlist",2877          "tableTo": "users",2878          "columnsFrom": [2879            "invited_by_user_id"2880          ],2881          "columnsTo": [2882            "id"2883          ],2884          "onDelete": "set null",2885          "onUpdate": "no action"2886        },2887        "signup_allowlist_user_id_users_id_fk": {2888          "name": "signup_allowlist_user_id_users_id_fk",2889          "tableFrom": "signup_allowlist",2890          "tableTo": "users",2891          "columnsFrom": [2892            "user_id"2893          ],2894          "columnsTo": [2895            "id"2896          ],2897          "onDelete": "set null",2898          "onUpdate": "no action"2899        }2900      },2901      "compositePrimaryKeys": {},2902      "uniqueConstraints": {},2903      "policies": {},2904      "checkConstraints": {},2905      "isRLSEnabled": false2906    },2907    "public.status_incidents": {2908      "name": "status_incidents",2909      "schema": "",2910      "columns": {2911        "id": {2912          "name": "id",2913          "type": "text",2914          "primaryKey": true,2915          "notNull": true2916        },2917        "component": {2918          "name": "component",2919          "type": "text",2920          "primaryKey": false,2921          "notNull": true2922        },2923        "title": {2924          "name": "title",2925          "type": "text",2926          "primaryKey": false,2927          "notNull": true2928        },2929        "body": {2930          "name": "body",2931          "type": "text",2932          "primaryKey": false,2933          "notNull": false2934        },2935        "severity": {2936          "name": "severity",2937          "type": "text",2938          "primaryKey": false,2939          "notNull": true,2940          "default": "'minor'"2941        },2942        "started_at": {2943          "name": "started_at",2944          "type": "timestamp with time zone",2945          "primaryKey": false,2946          "notNull": true,2947          "default": "now()"2948        },2949        "resolved_at": {2950          "name": "resolved_at",2951          "type": "timestamp with time zone",2952          "primaryKey": false,2953          "notNull": false2954        }2955      },2956      "indexes": {},2957      "foreignKeys": {},2958      "compositePrimaryKeys": {},2959      "uniqueConstraints": {},2960      "policies": {},2961      "checkConstraints": {},2962      "isRLSEnabled": false2963    },2964    "public.subscriptions": {2965      "name": "subscriptions",2966      "schema": "",2967      "columns": {2968        "id": {2969          "name": "id",2970          "type": "text",2971          "primaryKey": true,2972          "notNull": true2973        },2974        "organization_id": {2975          "name": "organization_id",2976          "type": "text",2977          "primaryKey": false,2978          "notNull": true2979        },2980        "plan": {2981          "name": "plan",2982          "type": "text",2983          "primaryKey": false,2984          "notNull": true2985        },2986        "status": {2987          "name": "status",2988          "type": "text",2989          "primaryKey": false,2990          "notNull": true,2991          "default": "'active'"2992        },2993        "stripe_subscription_id": {2994          "name": "stripe_subscription_id",2995          "type": "text",2996          "primaryKey": false,2997          "notNull": false2998        },2999        "current_period_start": {3000          "name": "current_period_start",3001          "type": "timestamp with time zone",3002          "primaryKey": false,3003          "notNull": false3004        },3005        "current_period_end": {3006          "name": "current_period_end",3007          "type": "timestamp with time zone",3008          "primaryKey": false,3009          "notNull": false3010        },3011        "cancel_at_period_end": {3012          "name": "cancel_at_period_end",3013          "type": "boolean",3014          "primaryKey": false,3015          "notNull": true,3016          "default": false3017        },3018        "created_at": {3019          "name": "created_at",3020          "type": "timestamp with time zone",3021          "primaryKey": false,3022          "notNull": true,3023          "default": "now()"3024        },3025        "updated_at": {3026          "name": "updated_at",3027          "type": "timestamp with time zone",3028          "primaryKey": false,3029          "notNull": true,3030          "default": "now()"3031        }3032      },3033      "indexes": {},3034      "foreignKeys": {3035        "subscriptions_organization_id_organizations_id_fk": {3036          "name": "subscriptions_organization_id_organizations_id_fk",3037          "tableFrom": "subscriptions",3038          "tableTo": "organizations",3039          "columnsFrom": [3040            "organization_id"3041          ],3042          "columnsTo": [3043            "id"3044          ],3045          "onDelete": "cascade",3046          "onUpdate": "no action"3047        }3048      },3049      "compositePrimaryKeys": {},3050      "uniqueConstraints": {},3051      "policies": {},3052      "checkConstraints": {},3053      "isRLSEnabled": false3054    },3055    "public.usage_events": {3056      "name": "usage_events",3057      "schema": "",3058      "columns": {3059        "id": {3060          "name": "id",3061          "type": "text",3062          "primaryKey": true,3063          "notNull": true3064        },3065        "organization_id": {3066          "name": "organization_id",3067          "type": "text",3068          "primaryKey": false,3069          "notNull": true3070        },3071        "project_id": {3072          "name": "project_id",3073          "type": "text",3074          "primaryKey": false,3075          "notNull": false3076        },3077        "request_id": {3078          "name": "request_id",3079          "type": "text",3080          "primaryKey": false,3081          "notNull": false3082        },3083        "metric": {3084          "name": "metric",3085          "type": "text",3086          "primaryKey": false,3087          "notNull": true3088        },3089        "quantity": {3090          "name": "quantity",3091          "type": "double precision",3092          "primaryKey": false,3093          "notNull": true3094        },3095        "unit": {3096          "name": "unit",3097          "type": "text",3098          "primaryKey": false,3099          "notNull": true3100        },3101        "cost_usd": {3102          "name": "cost_usd",3103          "type": "double precision",3104          "primaryKey": false,3105          "notNull": true,3106          "default": 03107        },3108        "upstream_cost_usd": {3109          "name": "upstream_cost_usd",3110          "type": "double precision",3111          "primaryKey": false,3112          "notNull": true,3113          "default": 03114        },3115        "created_at": {3116          "name": "created_at",3117          "type": "timestamp with time zone",3118          "primaryKey": false,3119          "notNull": true,3120          "default": "now()"3121        }3122      },3123      "indexes": {3124        "usage_events_org_created_idx": {3125          "name": "usage_events_org_created_idx",3126          "columns": [3127            {3128              "expression": "organization_id",3129              "isExpression": false,3130              "asc": true,3131              "nulls": "last"3132            },3133            {3134              "expression": "created_at",3135              "isExpression": false,3136              "asc": true,3137              "nulls": "last"3138            }3139          ],3140          "isUnique": false,3141          "concurrently": false,3142          "method": "btree",3143          "with": {}3144        },3145        "usage_events_project_created_idx": {3146          "name": "usage_events_project_created_idx",3147          "columns": [3148            {3149              "expression": "project_id",3150              "isExpression": false,3151              "asc": true,3152              "nulls": "last"3153            },3154            {3155              "expression": "created_at",3156              "isExpression": false,3157              "asc": true,3158              "nulls": "last"3159            }3160          ],3161          "isUnique": false,3162          "concurrently": false,3163          "method": "btree",3164          "with": {}3165        }3166      },3167      "foreignKeys": {3168        "usage_events_organization_id_organizations_id_fk": {3169          "name": "usage_events_organization_id_organizations_id_fk",3170          "tableFrom": "usage_events",3171          "tableTo": "organizations",3172          "columnsFrom": [3173            "organization_id"3174          ],3175          "columnsTo": [3176            "id"3177          ],3178          "onDelete": "cascade",3179          "onUpdate": "no action"3180        },3181        "usage_events_project_id_projects_id_fk": {3182          "name": "usage_events_project_id_projects_id_fk",3183          "tableFrom": "usage_events",3184          "tableTo": "projects",3185          "columnsFrom": [3186            "project_id"3187          ],3188          "columnsTo": [3189            "id"3190          ],3191          "onDelete": "set null",3192          "onUpdate": "no action"3193        }3194      },3195      "compositePrimaryKeys": {},3196      "uniqueConstraints": {},3197      "policies": {},3198      "checkConstraints": {},3199      "isRLSEnabled": false3200    },3201    "public.users": {3202      "name": "users",3203      "schema": "",3204      "columns": {3205        "id": {3206          "name": "id",3207          "type": "text",3208          "primaryKey": true,3209          "notNull": true3210        },3211        "name": {3212          "name": "name",3213          "type": "text",3214          "primaryKey": false,3215          "notNull": true,3216          "default": "''"3217        },3218        "email": {3219          "name": "email",3220          "type": "text",3221          "primaryKey": false,3222          "notNull": true3223        },3224        "email_verified": {3225          "name": "email_verified",3226          "type": "boolean",3227          "primaryKey": false,3228          "notNull": true,3229          "default": false3230        },3231        "image": {3232          "name": "image",3233          "type": "text",3234          "primaryKey": false,3235          "notNull": false3236        },3237        "role": {3238          "name": "role",3239          "type": "text",3240          "primaryKey": false,3241          "notNull": true,3242          "default": "'user'"3243        },3244        "banned": {3245          "name": "banned",3246          "type": "boolean",3247          "primaryKey": false,3248          "notNull": true,3249          "default": false3250        },3251        "ban_reason": {3252          "name": "ban_reason",3253          "type": "text",3254          "primaryKey": false,3255          "notNull": false3256        },3257        "onboarding_completed_at": {3258          "name": "onboarding_completed_at",3259          "type": "timestamp with time zone",3260          "primaryKey": false,3261          "notNull": false3262        },3263        "created_at": {3264          "name": "created_at",3265          "type": "timestamp with time zone",3266          "primaryKey": false,3267          "notNull": true,3268          "default": "now()"3269        },3270        "updated_at": {3271          "name": "updated_at",3272          "type": "timestamp with time zone",3273          "primaryKey": false,3274          "notNull": true,3275          "default": "now()"3276        }3277      },3278      "indexes": {3279        "users_email_uq": {3280          "name": "users_email_uq",3281          "columns": [3282            {3283              "expression": "email",3284              "isExpression": false,3285              "asc": true,3286              "nulls": "last"3287            }3288          ],3289          "isUnique": true,3290          "concurrently": false,3291          "method": "btree",3292          "with": {}3293        }3294      },3295      "foreignKeys": {},3296      "compositePrimaryKeys": {},3297      "uniqueConstraints": {},3298      "policies": {},3299      "checkConstraints": {},3300      "isRLSEnabled": false3301    },3302    "public.verifications": {3303      "name": "verifications",3304      "schema": "",3305      "columns": {3306        "id": {3307          "name": "id",3308          "type": "text",3309          "primaryKey": true,3310          "notNull": true3311        },3312        "identifier": {3313          "name": "identifier",3314          "type": "text",3315          "primaryKey": false,3316          "notNull": true3317        },3318        "value": {3319          "name": "value",3320          "type": "text",3321          "primaryKey": false,3322          "notNull": true3323        },3324        "expires_at": {3325          "name": "expires_at",3326          "type": "timestamp with time zone",3327          "primaryKey": false,3328          "notNull": true3329        },3330        "created_at": {3331          "name": "created_at",3332          "type": "timestamp with time zone",3333          "primaryKey": false,3334          "notNull": true,3335          "default": "now()"3336        },3337        "updated_at": {3338          "name": "updated_at",3339          "type": "timestamp with time zone",3340          "primaryKey": false,3341          "notNull": true,3342          "default": "now()"3343        }3344      },3345      "indexes": {3346        "verifications_identifier_idx": {3347          "name": "verifications_identifier_idx",3348          "columns": [3349            {3350              "expression": "identifier",3351              "isExpression": false,3352              "asc": true,3353              "nulls": "last"3354            }3355          ],3356          "isUnique": false,3357          "concurrently": false,3358          "method": "btree",3359          "with": {}3360        }3361      },3362      "foreignKeys": {},3363      "compositePrimaryKeys": {},3364      "uniqueConstraints": {},3365      "policies": {},3366      "checkConstraints": {},3367      "isRLSEnabled": false3368    },3369    "public.webhook_deliveries": {3370      "name": "webhook_deliveries",3371      "schema": "",3372      "columns": {3373        "id": {3374          "name": "id",3375          "type": "text",3376          "primaryKey": true,3377          "notNull": true3378        },3379        "webhook_id": {3380          "name": "webhook_id",3381          "type": "text",3382          "primaryKey": false,3383          "notNull": true3384        },3385        "event": {3386          "name": "event",3387          "type": "text",3388          "primaryKey": false,3389          "notNull": true3390        },3391        "payload": {3392          "name": "payload",3393          "type": "jsonb",3394          "primaryKey": false,3395          "notNull": true3396        },3397        "status": {3398          "name": "status",3399          "type": "text",3400          "primaryKey": false,3401          "notNull": true,3402          "default": "'pending'"3403        },3404        "response_status": {3405          "name": "response_status",3406          "type": "integer",3407          "primaryKey": false,3408          "notNull": false3409        },3410        "attempts": {3411          "name": "attempts",3412          "type": "integer",3413          "primaryKey": false,3414          "notNull": true,3415          "default": 03416        },3417        "next_attempt_at": {3418          "name": "next_attempt_at",3419          "type": "timestamp with time zone",3420          "primaryKey": false,3421          "notNull": false3422        },3423        "created_at": {3424          "name": "created_at",3425          "type": "timestamp with time zone",3426          "primaryKey": false,3427          "notNull": true,3428          "default": "now()"3429        }3430      },3431      "indexes": {3432        "webhook_deliveries_webhook_idx": {3433          "name": "webhook_deliveries_webhook_idx",3434          "columns": [3435            {3436              "expression": "webhook_id",3437              "isExpression": false,3438              "asc": true,3439              "nulls": "last"3440            }3441          ],3442          "isUnique": false,3443          "concurrently": false,3444          "method": "btree",3445          "with": {}3446        }3447      },3448      "foreignKeys": {3449        "webhook_deliveries_webhook_id_webhooks_id_fk": {3450          "name": "webhook_deliveries_webhook_id_webhooks_id_fk",3451          "tableFrom": "webhook_deliveries",3452          "tableTo": "webhooks",3453          "columnsFrom": [3454            "webhook_id"3455          ],3456          "columnsTo": [3457            "id"3458          ],3459          "onDelete": "cascade",3460          "onUpdate": "no action"3461        }3462      },3463      "compositePrimaryKeys": {},3464      "uniqueConstraints": {},3465      "policies": {},3466      "checkConstraints": {},3467      "isRLSEnabled": false3468    },3469    "public.webhooks": {3470      "name": "webhooks",3471      "schema": "",3472      "columns": {3473        "id": {3474          "name": "id",3475          "type": "text",3476          "primaryKey": true,3477          "notNull": true3478        },3479        "organization_id": {3480          "name": "organization_id",3481          "type": "text",3482          "primaryKey": false,3483          "notNull": true3484        },3485        "project_id": {3486          "name": "project_id",3487          "type": "text",3488          "primaryKey": false,3489          "notNull": false3490        },3491        "url": {3492          "name": "url",3493          "type": "text",3494          "primaryKey": false,3495          "notNull": true3496        },3497        "secret": {3498          "name": "secret",3499          "type": "text",3500          "primaryKey": false,3501          "notNull": true3502        },3503        "events": {3504          "name": "events",3505          "type": "jsonb",3506          "primaryKey": false,3507          "notNull": true,3508          "default": "'[]'::jsonb"3509        },3510        "enabled": {3511          "name": "enabled",3512          "type": "boolean",3513          "primaryKey": false,3514          "notNull": true,3515          "default": true3516        },3517        "created_at": {3518          "name": "created_at",3519          "type": "timestamp with time zone",3520          "primaryKey": false,3521          "notNull": true,3522          "default": "now()"3523        }3524      },3525      "indexes": {},3526      "foreignKeys": {3527        "webhooks_organization_id_organizations_id_fk": {3528          "name": "webhooks_organization_id_organizations_id_fk",3529          "tableFrom": "webhooks",3530          "tableTo": "organizations",3531          "columnsFrom": [3532            "organization_id"3533          ],3534          "columnsTo": [3535            "id"3536          ],3537          "onDelete": "cascade",3538          "onUpdate": "no action"3539        },3540        "webhooks_project_id_projects_id_fk": {3541          "name": "webhooks_project_id_projects_id_fk",3542          "tableFrom": "webhooks",3543          "tableTo": "projects",3544          "columnsFrom": [3545            "project_id"3546          ],3547          "columnsTo": [3548            "id"3549          ],3550          "onDelete": "cascade",3551          "onUpdate": "no action"3552        }3553      },3554      "compositePrimaryKeys": {},3555      "uniqueConstraints": {},3556      "policies": {},3557      "checkConstraints": {},3558      "isRLSEnabled": false3559    }3560  },3561  "enums": {},3562  "schemas": {},3563  "sequences": {},3564  "roles": {},3565  "policies": {},3566  "views": {},3567  "_meta": {3568    "columns": {},3569    "schemas": {},3570    "tables": {}3571  }3572}