Zum Inhalt springen
Anwendungsfälle

Wissen, was sich im Portal geändert hat, bevor jemand fragt

Große Kunden schieben Aufträge, Reklamationen und Dokumente durch ihre eigenen Lieferantenportale und erwarten, dass du nachsiehst. Ein geplanter Workflow sieht für dich nach, extrahiert den Inhalt und schickt ihn an deine Systeme.

Wofür das passt, und wofür nicht

Portal-Überwachung passt für Konten, die du besitzt, und Seiten ohne API. Für Seiten, die automatisierten Zugriff verbieten, ist es das falsche Werkzeug.

Auftrags- und Reklamationseingänge
Das Lieferantenportal eines Händlers listet neue Bestellungen und Qualitätsreklamationen mit Fristen. Diese Liste stündlich zu lesen und ans Ticketsystem zu geben ersetzt die Person, deren Aufgabe das Aktualisieren der Seite war.
Dokumentzustellungen
Verträge, Lieferscheine und Auditanfragen erscheinen als Zeilen im Portal, oft mit Fälligkeitsdatum. Die Extraktion macht aus der Zeile Felder; Dein System entscheidet, wer zuständig ist.
Status eigener Einreichungen
Ausschreibungen, Anträge und Garantiefälle durchlaufen Zustände im Portal von jemand anderem. Ein Workflow kann den Zustand und den Zeitstempel daneben lesen, und nur das.
Nicht für öffentliche Seiten, die widersprechen
Browserberg ist authenticated-first und liefert keine Tarnung. Wenn die Nutzungsbedingungen einer Seite automatisierten Zugriff verbieten, ist das nicht das Produkt, das sie umgeht.

Was die geplante Prüfung verlässlich macht

Eine Auslösung, egal wie lange du down warst


Ein Zeitplan-Trigger berechnet seinen nächsten Termin von jetzt aus. Vier Stunden Ausfall ergeben einen Lauf, nicht vier, und dein Endpunkt bekommt nie einen Schwall alter Kopien.

Extraktion gegen ein Schema


Du definierst die Felder. Der Extraktions-Block liefert JSON, das zu ihnen passt, und sagt, was er nicht gefunden hat, statt Lücken mit plausiblem Text zu füllen.

Der Login steht nicht im Workflow


Der Portal-Zugang liegt im Tresor und wird per Id referenziert. Die Ausgabe eines Laufs, seine Logs und seine Audit-Einträge enthalten das Passwort nie.

Jede Auslösung hat einen Eintrag


Wenn nichts ankam, sagt das Auslösungsprotokoll, ob der Trigger übersprungen hat, ein laufender Workflow im Weg war oder ein Block gescheitert ist, mit Namen.

Stündliche Prüfung, Ergebnis an deinen Endpunkt

import { Browserberg } from '@browserberg/sdk';

const bb = new Browserberg({
  apiKey: process.env.BROWSERBERG_API_KEY,
  baseUrl: 'https://browserberg.com',
});

const wf = await bb.workflows.publish({
  title: 'Händlerportal: offene Bestellungen',
  blocks: [
    { blockType: 'login', label: 'Anmelden', credentialId: 'cred_haendlerportal' },
    { blockType: 'navigation', label: 'Bestellungen_oeffnen', url: 'https://lieferant.haendler.example/bestellungen?status=offen' },
    { blockType: 'extraction', label: 'Bestellungen_lesen',
      instruction: 'alle offenen Bestellungen: Bestellnummer, Anzahl Artikel, gewünschtes Lieferdatum',
      schema: { type: 'object', properties: { bestellungen: { type: 'array', items: { type: 'object',
        properties: { nummer: { type: 'string' }, artikel: { type: 'integer' },
                      lieferdatum: { type: 'string' } } } } } } },
    { blockType: 'http_request', label: 'Melden', method: 'POST',
      url: 'https://auftraege.intern.example/eingang', body: '{{ Bestellungen_lesen_output }}' },
  ],
});

await bb.triggers.create(wf.workflowId, {
  kind: 'schedule', name: 'Stündlich zu Bürozeiten',
  cron: '0 7-19 * * 1-5', timezone: 'Europe/Berlin', overlap: 'skip',
});

Fragen aus dem Betrieb

Wie bekomme ich nur die neuen Zeilen?

Schick die ganze extrahierte Liste und lass deinen Endpunkt mit der letzten vergleichen. Im Browser zu deduplizieren hieße, dass der Workflow Zustand hält, und ein Workflow mit Zustand ist schwerer zu verstehen, wenn sich ein Portal ändert.

Was, wenn die Portal-Session mitten im Lauf abläuft?

Der nächste Block scheitert mit einer Meldung, die ihn benennt, der Lauf endet als gescheitert, und die nächste Auslösung meldet sich über den Login-Block neu an. Persistente Profile können die Anmeldung zwischen Läufen halten, wo das Portal das zulässt.

Kann jemand dem Lauf zusehen?

Ja. Das Dashboard zeigt eine Live-Ansicht der Session, und ein Owner kann kurz die Maus übernehmen, etwa für eine unerwartete Sicherheitsfrage, und sie wieder abgeben.

Gibt es statt Zeitplan auch einen Webhook?

Ja. Ein Webhook-Trigger startet den Workflow, wenn dein eigenes System ihn aufruft, signiert mit einem Secret, das du selbst rotierst. Beide Arten können auf denselben Workflow zeigen.

Diese Woche auf ein Portal richten

Fünf Browserstunden, keine Karte. Fang mit dem Portal an, das heute jemand von Hand aktualisiert.