-- ============================================================================= -- AgenciaPsi — Tables — Infraestrutura (realtime, storage, supabase_functions) -- ============================================================================= CREATE TABLE _realtime.extensions ( id uuid NOT NULL, type text, settings jsonb, tenant_external_id text, inserted_at timestamp(0) without time zone NOT NULL, updated_at timestamp(0) without time zone NOT NULL ); ALTER TABLE _realtime.extensions OWNER TO supabase_admin; -- -- Name: schema_migrations; Type: TABLE; Schema: _realtime; Owner: supabase_admin -- CREATE TABLE _realtime.schema_migrations ( version bigint NOT NULL, inserted_at timestamp(0) without time zone ); ALTER TABLE _realtime.schema_migrations OWNER TO supabase_admin; -- -- Name: tenants; Type: TABLE; Schema: _realtime; Owner: supabase_admin -- CREATE TABLE _realtime.tenants ( id uuid NOT NULL, name text, external_id text, jwt_secret text, max_concurrent_users integer DEFAULT 200 NOT NULL, inserted_at timestamp(0) without time zone NOT NULL, updated_at timestamp(0) without time zone NOT NULL, max_events_per_second integer DEFAULT 100 NOT NULL, postgres_cdc_default text DEFAULT 'postgres_cdc_rls'::text, max_bytes_per_second integer DEFAULT 100000 NOT NULL, max_channels_per_client integer DEFAULT 100 NOT NULL, max_joins_per_second integer DEFAULT 500 NOT NULL, suspend boolean DEFAULT false, jwt_jwks jsonb, notify_private_alpha boolean DEFAULT false, private_only boolean DEFAULT false NOT NULL, migrations_ran integer DEFAULT 0, broadcast_adapter character varying(255) DEFAULT 'gen_rpc'::character varying, max_presence_events_per_second integer DEFAULT 1000, max_payload_size_in_kb integer DEFAULT 3000, CONSTRAINT jwt_secret_or_jwt_jwks_required CHECK (((jwt_secret IS NOT NULL) OR (jwt_jwks IS NOT NULL))) ); ALTER TABLE _realtime.tenants OWNER TO supabase_admin; -- -- Name: audit_log_entries; Type: TABLE; Schema: auth; Owner: supabase_auth_admin -- CREATE TABLE realtime.messages ( topic text NOT NULL, extension text NOT NULL, payload jsonb, event text, private boolean DEFAULT false, updated_at timestamp without time zone DEFAULT now() NOT NULL, inserted_at timestamp without time zone DEFAULT now() NOT NULL, id uuid DEFAULT gen_random_uuid() NOT NULL ) PARTITION BY RANGE (inserted_at); ALTER TABLE realtime.messages OWNER TO supabase_realtime_admin; -- -- Name: messages_2026_03_20; Type: TABLE; Schema: realtime; Owner: supabase_admin -- CREATE TABLE realtime.messages_2026_03_20 ( topic text NOT NULL, extension text NOT NULL, payload jsonb, event text, private boolean DEFAULT false, updated_at timestamp without time zone DEFAULT now() NOT NULL, inserted_at timestamp without time zone DEFAULT now() NOT NULL, id uuid DEFAULT gen_random_uuid() NOT NULL ); ALTER TABLE realtime.messages_2026_03_20 OWNER TO supabase_admin; -- -- Name: messages_2026_03_21; Type: TABLE; Schema: realtime; Owner: supabase_admin -- CREATE TABLE realtime.messages_2026_03_21 ( topic text NOT NULL, extension text NOT NULL, payload jsonb, event text, private boolean DEFAULT false, updated_at timestamp without time zone DEFAULT now() NOT NULL, inserted_at timestamp without time zone DEFAULT now() NOT NULL, id uuid DEFAULT gen_random_uuid() NOT NULL ); ALTER TABLE realtime.messages_2026_03_21 OWNER TO supabase_admin; -- -- Name: messages_2026_03_22; Type: TABLE; Schema: realtime; Owner: supabase_admin -- CREATE TABLE realtime.messages_2026_03_22 ( topic text NOT NULL, extension text NOT NULL, payload jsonb, event text, private boolean DEFAULT false, updated_at timestamp without time zone DEFAULT now() NOT NULL, inserted_at timestamp without time zone DEFAULT now() NOT NULL, id uuid DEFAULT gen_random_uuid() NOT NULL ); ALTER TABLE realtime.messages_2026_03_22 OWNER TO supabase_admin; -- -- Name: messages_2026_03_23; Type: TABLE; Schema: realtime; Owner: supabase_admin -- CREATE TABLE realtime.messages_2026_03_23 ( topic text NOT NULL, extension text NOT NULL, payload jsonb, event text, private boolean DEFAULT false, updated_at timestamp without time zone DEFAULT now() NOT NULL, inserted_at timestamp without time zone DEFAULT now() NOT NULL, id uuid DEFAULT gen_random_uuid() NOT NULL ); ALTER TABLE realtime.messages_2026_03_23 OWNER TO supabase_admin; -- -- Name: messages_2026_03_24; Type: TABLE; Schema: realtime; Owner: supabase_admin -- CREATE TABLE realtime.messages_2026_03_24 ( topic text NOT NULL, extension text NOT NULL, payload jsonb, event text, private boolean DEFAULT false, updated_at timestamp without time zone DEFAULT now() NOT NULL, inserted_at timestamp without time zone DEFAULT now() NOT NULL, id uuid DEFAULT gen_random_uuid() NOT NULL ); ALTER TABLE realtime.messages_2026_03_24 OWNER TO supabase_admin; -- -- Name: messages_2026_03_25; Type: TABLE; Schema: realtime; Owner: supabase_admin -- CREATE TABLE realtime.messages_2026_03_25 ( topic text NOT NULL, extension text NOT NULL, payload jsonb, event text, private boolean DEFAULT false, updated_at timestamp without time zone DEFAULT now() NOT NULL, inserted_at timestamp without time zone DEFAULT now() NOT NULL, id uuid DEFAULT gen_random_uuid() NOT NULL ); ALTER TABLE realtime.messages_2026_03_25 OWNER TO supabase_admin; -- -- Name: messages_2026_03_26; Type: TABLE; Schema: realtime; Owner: supabase_admin -- CREATE TABLE realtime.messages_2026_03_26 ( topic text NOT NULL, extension text NOT NULL, payload jsonb, event text, private boolean DEFAULT false, updated_at timestamp without time zone DEFAULT now() NOT NULL, inserted_at timestamp without time zone DEFAULT now() NOT NULL, id uuid DEFAULT gen_random_uuid() NOT NULL ); ALTER TABLE realtime.messages_2026_03_26 OWNER TO supabase_admin; -- -- Name: schema_migrations; Type: TABLE; Schema: realtime; Owner: supabase_admin -- CREATE TABLE realtime.schema_migrations ( version bigint NOT NULL, inserted_at timestamp(0) without time zone ); ALTER TABLE realtime.schema_migrations OWNER TO supabase_admin; -- -- Name: subscription; Type: TABLE; Schema: realtime; Owner: supabase_admin -- CREATE TABLE realtime.subscription ( id bigint NOT NULL, subscription_id uuid NOT NULL, entity regclass NOT NULL, filters realtime.user_defined_filter[] DEFAULT '{}'::realtime.user_defined_filter[] NOT NULL, claims jsonb NOT NULL, claims_role regrole GENERATED ALWAYS AS (realtime.to_regrole((claims ->> 'role'::text))) STORED NOT NULL, created_at timestamp without time zone DEFAULT timezone('utc'::text, now()) NOT NULL ); ALTER TABLE realtime.subscription OWNER TO supabase_admin; -- -- Name: subscription_id_seq; Type: SEQUENCE; Schema: realtime; Owner: supabase_admin -- ALTER TABLE realtime.subscription ALTER COLUMN id ADD GENERATED ALWAYS AS IDENTITY ( SEQUENCE NAME realtime.subscription_id_seq START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE CACHE 1 ); -- -- Name: buckets; Type: TABLE; Schema: storage; Owner: supabase_storage_admin -- CREATE TABLE storage.buckets ( id text NOT NULL, name text NOT NULL, owner uuid, created_at timestamp with time zone DEFAULT now(), updated_at timestamp with time zone DEFAULT now(), public boolean DEFAULT false, avif_autodetection boolean DEFAULT false, file_size_limit bigint, allowed_mime_types text[], owner_id text, type storage.buckettype DEFAULT 'STANDARD'::storage.buckettype NOT NULL ); ALTER TABLE storage.buckets OWNER TO supabase_storage_admin; -- -- Name: COLUMN buckets.owner; Type: COMMENT; Schema: storage; Owner: supabase_storage_admin -- COMMENT ON COLUMN storage.buckets.owner IS 'Field is deprecated, use owner_id instead'; -- -- Name: buckets_analytics; Type: TABLE; Schema: storage; Owner: supabase_storage_admin -- CREATE TABLE storage.buckets_analytics ( name text NOT NULL, type storage.buckettype DEFAULT 'ANALYTICS'::storage.buckettype NOT NULL, format text DEFAULT 'ICEBERG'::text NOT NULL, created_at timestamp with time zone DEFAULT now() NOT NULL, updated_at timestamp with time zone DEFAULT now() NOT NULL, id uuid DEFAULT gen_random_uuid() NOT NULL, deleted_at timestamp with time zone ); ALTER TABLE storage.buckets_analytics OWNER TO supabase_storage_admin; -- -- Name: buckets_vectors; Type: TABLE; Schema: storage; Owner: supabase_storage_admin -- CREATE TABLE storage.buckets_vectors ( id text NOT NULL, type storage.buckettype DEFAULT 'VECTOR'::storage.buckettype NOT NULL, created_at timestamp with time zone DEFAULT now() NOT NULL, updated_at timestamp with time zone DEFAULT now() NOT NULL ); ALTER TABLE storage.buckets_vectors OWNER TO supabase_storage_admin; -- -- Name: iceberg_namespaces; Type: TABLE; Schema: storage; Owner: supabase_storage_admin -- CREATE TABLE storage.iceberg_namespaces ( id uuid DEFAULT gen_random_uuid() NOT NULL, bucket_name text NOT NULL, name text NOT NULL COLLATE pg_catalog."C", created_at timestamp with time zone DEFAULT now() NOT NULL, updated_at timestamp with time zone DEFAULT now() NOT NULL, metadata jsonb DEFAULT '{}'::jsonb NOT NULL, catalog_id uuid NOT NULL ); ALTER TABLE storage.iceberg_namespaces OWNER TO supabase_storage_admin; -- -- Name: iceberg_tables; Type: TABLE; Schema: storage; Owner: supabase_storage_admin -- CREATE TABLE storage.iceberg_tables ( id uuid DEFAULT gen_random_uuid() NOT NULL, namespace_id uuid NOT NULL, bucket_name text NOT NULL, name text NOT NULL COLLATE pg_catalog."C", location text NOT NULL, created_at timestamp with time zone DEFAULT now() NOT NULL, updated_at timestamp with time zone DEFAULT now() NOT NULL, remote_table_id text, shard_key text, shard_id text, catalog_id uuid NOT NULL ); ALTER TABLE storage.iceberg_tables OWNER TO supabase_storage_admin; -- -- Name: migrations; Type: TABLE; Schema: storage; Owner: supabase_storage_admin -- CREATE TABLE storage.migrations ( id integer NOT NULL, name character varying(100) NOT NULL, hash character varying(40) NOT NULL, executed_at timestamp without time zone DEFAULT CURRENT_TIMESTAMP ); ALTER TABLE storage.migrations OWNER TO supabase_storage_admin; -- -- Name: objects; Type: TABLE; Schema: storage; Owner: supabase_storage_admin -- CREATE TABLE storage.objects ( id uuid DEFAULT gen_random_uuid() NOT NULL, bucket_id text, name text, owner uuid, created_at timestamp with time zone DEFAULT now(), updated_at timestamp with time zone DEFAULT now(), last_accessed_at timestamp with time zone DEFAULT now(), metadata jsonb, path_tokens text[] GENERATED ALWAYS AS (string_to_array(name, '/'::text)) STORED, version text, owner_id text, user_metadata jsonb ); ALTER TABLE storage.objects OWNER TO supabase_storage_admin; -- -- Name: COLUMN objects.owner; Type: COMMENT; Schema: storage; Owner: supabase_storage_admin -- COMMENT ON COLUMN storage.objects.owner IS 'Field is deprecated, use owner_id instead'; -- -- Name: s3_multipart_uploads; Type: TABLE; Schema: storage; Owner: supabase_storage_admin -- CREATE TABLE storage.s3_multipart_uploads ( id text NOT NULL, in_progress_size bigint DEFAULT 0 NOT NULL, upload_signature text NOT NULL, bucket_id text NOT NULL, key text NOT NULL COLLATE pg_catalog."C", version text NOT NULL, owner_id text, created_at timestamp with time zone DEFAULT now() NOT NULL, user_metadata jsonb ); ALTER TABLE storage.s3_multipart_uploads OWNER TO supabase_storage_admin; -- -- Name: s3_multipart_uploads_parts; Type: TABLE; Schema: storage; Owner: supabase_storage_admin -- CREATE TABLE storage.s3_multipart_uploads_parts ( id uuid DEFAULT gen_random_uuid() NOT NULL, upload_id text NOT NULL, size bigint DEFAULT 0 NOT NULL, part_number integer NOT NULL, bucket_id text NOT NULL, key text NOT NULL COLLATE pg_catalog."C", etag text NOT NULL, owner_id text, version text NOT NULL, created_at timestamp with time zone DEFAULT now() NOT NULL ); ALTER TABLE storage.s3_multipart_uploads_parts OWNER TO supabase_storage_admin; -- -- Name: vector_indexes; Type: TABLE; Schema: storage; Owner: supabase_storage_admin -- CREATE TABLE storage.vector_indexes ( id text DEFAULT gen_random_uuid() NOT NULL, name text NOT NULL COLLATE pg_catalog."C", bucket_id text NOT NULL, data_type text NOT NULL, dimension integer NOT NULL, distance_metric text NOT NULL, metadata_configuration jsonb, created_at timestamp with time zone DEFAULT now() NOT NULL, updated_at timestamp with time zone DEFAULT now() NOT NULL ); CREATE TABLE supabase_functions.hooks ( id bigint NOT NULL, hook_table_id integer NOT NULL, hook_name text NOT NULL, created_at timestamp with time zone DEFAULT now() NOT NULL, request_id bigint ); ALTER TABLE supabase_functions.hooks OWNER TO supabase_functions_admin; -- -- Name: TABLE hooks; Type: COMMENT; Schema: supabase_functions; Owner: supabase_functions_admin -- COMMENT ON TABLE supabase_functions.hooks IS 'Supabase Functions Hooks: Audit trail for triggered hooks.'; -- -- Name: hooks_id_seq; Type: SEQUENCE; Schema: supabase_functions; Owner: supabase_functions_admin -- CREATE SEQUENCE supabase_functions.hooks_id_seq START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE CACHE 1; ALTER SEQUENCE supabase_functions.hooks_id_seq OWNER TO supabase_functions_admin; -- -- Name: hooks_id_seq; Type: SEQUENCE OWNED BY; Schema: supabase_functions; Owner: supabase_functions_admin -- ALTER SEQUENCE supabase_functions.hooks_id_seq OWNED BY supabase_functions.hooks.id; -- -- Name: migrations; Type: TABLE; Schema: supabase_functions; Owner: supabase_functions_admin -- CREATE TABLE supabase_functions.migrations ( version text NOT NULL, inserted_at timestamp with time zone DEFAULT now() NOT NULL ); ALTER TABLE supabase_functions.migrations OWNER TO supabase_functions_admin; -- -- Name: messages_2026_03_20; Type: TABLE ATTACH; Schema: realtime; Owner: supabase_admin --