Gekoppeld document
Wijs heyGRC naar de DPA of het beleid dat je al beheert. Dit document autoriseert het gebruik van korte citaten eruit in pull request-opmerkingen, inclusief openbare repositories.
heyGRC is nooit de primaire locatie waar je een DPA of beleid bewaart. Je bewaart dat document op de plek waar je het al beheert. Een gekoppeld document is een momentopname die heyGRC leest vanaf die bron, zodat een pull request die in strijd is met het document je eigen woorden kan citeren in plaats van te vragen of een DPA bestaat.
Een gekoppeld document is optioneel. Een organisatie zonder gekoppeld document krijgt precies de review van vandaag.
De kaart staat op de Bedrijfspagina op app.heygrc.com, naast implementatieverplichtingen.
In de console
Open Bedrijf en gebruik de kaart Gekoppeld document.
- Plak een HTTPS-URL, of upload een bestand (tekst, Markdown, HTML of PDF, maximaal 8 MiB). PDF via URL wordt afgewezen; upload de PDF in plaats daarvan.
- Lees de waarschuwing: dit document wordt gebruikt in alle gekoppelde repositories van de organisatie, en korte citaten kunnen verschijnen in pull request-opmerkingen, inclusief openbare repositories.
- Klik op Gebruik dit document. Het plakken van een URL of het selecteren van een bestand doet niets totdat je hierop klikt.
Die klik autoriseert heyGRC om de bron te lezen en, als de momentopname geldig is, deze in gebruik te nemen. Er is geen clausulelijst, geen vinkvakjes en geen bevestigingsstap.
Vervolgens is de kaart een van de volgende:
- Document gelezen, interpretatie vastgehouden De compiler heeft hiaten in de interpretatie gemarkeerd, waardoor nooit een onvolledige momentopname in gebruik wordt genomen. De kaart toont de redenen van de compiler. Als het gelinkte document een samenvatting is, link of upload dan het volledige document.
- In gebruik. Bron (URL of bestandsnaam) en datum van laatste lezing. Vernieuwen gebeurt handmatig: heyGRC bewaakt de URL niet op de achtergrond.
- Kon niet lezen. Openbare veilige reden en Opnieuw proberen. Reviews blijven zoals ze waren (alleen framework of de vorige momentopname in gebruik als dit een vernieuwing was).
- Kon geen bruikbare momentopname produceren. De compiler kon geen complete interpretatie extraheren. Een onvolledige momentopname wordt nooit in gebruik genomen.
Vernieuwen mislukt: de vorige momentopname blijft actief. De kaart geeft dit aan, met de datum van laatste lezing.
Verwijderen zorgt ervoor dat nieuwe reviews het document niet meer gebruiken. Opmerkingen die al op GitHub staan, inclusief citaten, blijven precies zoals ze zijn.
Versie 1.1 verbindt niet met Google Drive, SharePoint of Vanta. Er is geen geplande automatische vernieuwing.
Hoe een review het gebruikt
Frameworks blijven draaien. Het gekoppelde document komt alleen aan bod als de diff iets raakt waar het document over gaat (een genoemde verwerker, een bewaartermijnregel, een regio, een doel).
- Een PR met alleen CSS- of testwijzigingen: de overlay is inactief. Die review is de review van vandaag.
- Een PR die in strijd is met het document: de bevinding citeert een korte letterlijke passage uit je bron (maximaal 120 tekens), geen paraphrase en niet de volledige contracttekst.
- Een PR die alleen "Ik zie geen DPA voor deze leverancier" triggerde, terwijl het gekoppelde document die leverancier dekt: de melding kan stoppen.
- Een leverancier die het document nooit noemt, is onbekend, niet verboden. Gewone framework-bevindingen kunnen nog steeds worden geactiveerd.
Korte citaten uit jouw document in jouw pull request zijn juist de bedoeling, inclusief in openbare repositories. Plaats geen geheimen in een DPA die je koppelt.
Als code (elke agent of harness)
Uploaden is alleen via de console. Agents voegen een live HTTPS-URL toe. Schrijfacties vereisen een sleutel met config:write. Leesacties vereisen config:read.
GET /v1/review-packs retourneert pack-metadata plus draft- en bevestigde momentopnames. Het retourneert nooit geëxtraheerde brontekst.
Verstuur. use is standaard true: dezelfde autorisatie als Gebruik dit document. Als de compileeractie geldig is, activeert de worker de momentopname. Er is geen bevestigingsendpoint.
curl -X POST https://api.heygrc.com/v1/review-packs \
-H "Authorization: Bearer $HEYGRC_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"label": "Vendor DPA 2026",
"source": { "type": "url", "url": "https://example.com/dpa.md" },
"use": true
}'source.type moet url zijn. HTTP-URL's, referenties in de URL en private of lokale hosts worden afgewezen. Stel "use": false alleen in als je een draft wilt die niet in gebruik wordt genomen (de console doet dit nooit).
Poll GET /v1/review-packs tot confirmed aanwezig is, of tot de draft compiler_status failed of needs_review is. needs_review activeert nooit.
DELETE /v1/review-packs verwijdert het gekoppelde document. Eerdere reviews behouden de citaten die ze al hebben gepost; nieuwe reviews stoppen met het gebruik ervan.
Een natuurlijke agent-prompt: "Onze DPA staat op deze HTTPS-URL. POST deze naar heyGRC /v1/review-packs met een korte label en use true. Poll GET tot confirmed is ingesteld, of tot de draft is mislukt. Roep /confirm niet aan. Upload geen bestand. Plaats de contracttekst niet op GitHub.""
Limieten
- Één gekoppeld document per organisatie.
- Compileerlimiet: 10 leesacties per organisatie per UTC-dag (
429compile_cap_exceeded). - Label: 1 tot 80 tekens, geen besturingstekens.
- Alleen HTTPS-URL, 12 tot 2048 tekens, geen referenties.
- Upload (console): tekst, Markdown, HTML of PDF, tot maximaal 8 MiB.
- Citaten op GitHub: letterlijke bronpassages, maximaal 120 tekens, maximaal 3 citaten of 360 tekens per review.