supabase-js
supabase-js copied to clipboard
Table INSERT subscriptions fail with Error 401: Not Unauthorized
Describe the bug
I've subscribed to inserts on a table using the supabase api, when I add a row into that same table on the supabase web interface I receive notice that a change has occurred but not the content of the row that was inserted. I've ensured that the table has been added to the supabase-realtime channel just like the guide. I have tried to disable/enable RLS, giving all permissions to both anon and public roles, and also tried to use the api service key. None of these resolved the 401: unauthorized error.
To Reproduce
Steps to reproduce the behavior, please provide code snippets or a repository:
Code to subscribe to channel, which I copied from the API tab on the web interface.
const { createClient } = require('@supabase/supabase-js')
const supabase = createClient(process.env.SUPABASE_URL, process.env.SUPABASE_KEY)
const coachMessages = supabase.channel('custom-insert-channel')
.on(
'postgres_changes',
{ event: 'INSERT', schema: 'public', table: 'coach_messages' },
(payload: any) => {
console.log('Change received!', payload)
}
)
.subscribe()
console.log(coachMessages)
and the error:
Row insertion and database actions are done using the supabase web interface.
Expected behavior
A clear and concise description of what you expected to happen.
The payload to contain the row that was just inserted in the payload.new property.
System information
- OS: macOS
- Browser: Firefox
- Version of supabase-js: 2.33.1
- Version of Node.js: 18.16.0