olirice@read_once
read_once
A Supabase application for sending messages that can only be read once
Features:
- messages can only be read one time
- messages are not logged in PostgreSQL write-ahead-log (WAL)
Installation
pg_cron
is a dependency of read_once
.
Dependency resolution is currently under development.
In the near future it will not be necessary to manually create dependencies.
To expose the send_message
and read_message
functions over HTTP, install the extension in a schema that is on the search_path.
For example:
select dbdev.install('olirice@read_once');
create extension if not exists pg_cron;
create extension "olirice@read_once"
schema public
version '0.3.1';
HTTP API
Create a Message
curl -X POST https://<PROJECT_REF>.supabase.co/rest/v1/rpc/send_message \
-H 'apiKey: <API_KEY>' \
-H 'Content-Type: application/json'
--data-raw '{"contents": "hello, dbdev!"}
# Returns: "2989156b-2356-4543-9d1b-19dfb8ec3268"
Read a Message
curl -X https://<PROJECT_REF>.supabase.co/rest/v1/rpc/read_message
-H 'apiKey: <API_KEY>' \
-H 'Content-Type: application/json' \
--data-raw '{"id": "2989156b-2356-4543-9d1b-19dfb8ec3268"}
# Returns: "hello, dbdev!"
SQL API
Create a Message
-- Creates a new messages and returns its unique id
create or replace function send_message(
contents text
)
returns uuid
Read a Message
-- Read a message by its id
create or replace function read_message(
id uuid
)
returns text
Install
- Install the
dbdev
package manager - Install the package:
select dbdev.install('olirice@read_once');
create extension "olirice@read_once"
version '0.3.2';
Downloads
- 2 all time downloads
- 0 downloads in the last 30 days
- 0 downloads in the last 90 days
- 0 downloads in the last 180 days