Hoe bewerkte PDF-inzendingen opslaan in Supabase

Profile picture of Benjamin André-Micolon

U heeft SimplePDF toegevoegd aan uw app of uw AI Agent en u wilt de PDF-inzendingen opslaan in uw Supabase Storage.

U zou bijvoorbeeld:

  • De verwerking van inzendingen verder automatiseren: bijvoorbeeld de gegevens uit de formulieren extraheren om ze te verwerken
  • De PDF opslaan in een vector store om semantisch zoeken te bieden of automatisch duplicaten of overeenkomsten in de ingediende PDF te detecteren

Voor deze tutorial gebruiken we twee PRO-functies van SimplePDF:

  1. De webhooks-integratie - samen met Supabase Edge Functions

De code voor de Supabase Edge-functie is hier te vinden

  1. De S3-integratie - samen met Supabase Storage

Supabase Storage configureren voor de PDF-inzendingen

In deze sectie begeleiden we u bij het instellen van Supabase Storage als opslag voor de bewerkte PDF-inzendingen (en documenten) in plaats van de standaardopslag van SimplePDF.

  1. Ga naar Storage in uw Supabase-project en klik op New bucket

  2. Geef uw bucket een naam, houd deze privé (schakel Public bucket niet in) en klik op Save

Een bucket aanmaken in Supabase storage

  1. Maak in de Storage-instellingen een nieuwe S3 Access Keys aan

Een S3 Access Key aanmaken in Supabase

  1. Ga naar uw SimplePDF-account en configureer de S3-opslag als volgt:

Een stap-voor-stap handleiding vindt u hier

Endpoint: <KOPIEER het endpoint uit de S3 Connection in Supabase Storage-instellingen>
Path-style: <SCHAKEL IN>
Region: <SELECTEER de regio zichtbaar in de S3 Connection in Supabase Storage-instellingen>
Bucket: <VOER de naam van de bucket in: in ons voorbeeld gebruikten we "pdf">
Access Key ID: <PLAK de waarde die u in stap 3 hierboven heeft gekregen>
Secret Access Key: <PLAK de waarde die u in stap 3 hierboven heeft gekregen>

S3 configureren in SimplePDF

  1. Klik op Update en ga naar uw Supabase storage en merk op dat er automatisch een nieuw bestand is toegevoegd: dit bevestigt dat de configuratie gereed is!

U kunt dit bestand verwijderen: u heeft het niet meer nodig

S3-configuratie voltooid in Supabase

Een nieuwe Supabase-tabel configureren om de metadata van PDF-inzendingen op te slaan

In deze sectie maken we een nieuwe tabel aan om de metadata op te slaan die we van SimplePDF ontvangen voor elke nieuwe inzending. We gebruiken Supabase Edge Functions om de gegevens in de tabel in te voegen.

Als u vooruit wilt springen en de tutorial wilt overslaan, kunt u de volledige broncode, tabeldefinitie en vereisten hier bekijken

  1. Ga naar Database > Tables en maak een nieuwe tabel aan - we noemen deze simplepdf_submissions

  2. Definieer het volgende schema: U kunt het schema in SQL bekijken op Github hier

  • id: int8 - Primary
  • document_name: text
  • document_id: text
  • submission_id: text
  • submission_bucket_path: text
  • context: jsonb

Aangemaakte tabel in Supabase

  1. Deploy de kant-en-klare Edge Function die we voor u hebben gemaakt: broncode op Github
npm i
npm run deploy
  1. Maak een nieuw RLS-beleid aan om deze Edge Function toe te staan rijen in te voegen in de simplepdf_submissions-tabel:

Voor productiegebruik raden we een strenger RLS-beleid aan of het authenticeren van de webhookaanroepen door een autorisatieheader mee te sturen vanuit SimplePDF

alter policy "Allow edge function to insert into simplepdf_submissions"
  on "public"."simplepdf_submissions"
  to anon
  with check (true);

Aangemaakt RLS-beleid

  1. Kopieer de URL van de simplepdf-webhooks Edge Function in de Edge Functions-sectie in Supabase

Edge Function URL kopiëren

  1. Ga naar SimplePDF en configureer de webhooks om te verwijzen naar uw gedeployde simplepdf-webhooks-functie

Een stap-voor-stap handleiding vindt u hier

Geconfigureerde webhooks in SimplePDF

Dat is het! De integratie is gereed! Bewerkte PDF's opslaan in Supabase Storage en gebeurtenissen (en metadata) opslaan met Supabase Edge Functions over bewerkte PDF-inzendingen in een tabel!

Eerste bewerkte PDF-inzending in Supabase

Als u vragen heeft, neem dan gerust contact op via support@simplepdf.com