'use client'
import { ApiEndpoint, CodeBlock, InfoBox } from '@/components/DevPortalLayout'
export function AuditRagSdkSection() {
return (
<>
Audit Trail
Lueckenloser Audit-Trail aller Projektaenderungen fuer Compliance-Nachweise.
{`curl -X GET "https://api.breakpilot.io/sdk/v1/iace/projects/proj_a1b2c3d4/audit-trail" \\
-H "Authorization: Bearer YOUR_API_KEY"`}
Response (200 OK)
{`{
"success": true,
"data": [
{ "id": "aud_001", "action": "hazard_created", "entity_type": "hazard", "entity_id": "haz_5678", "user_id": "user_abc", "changes": { "title": "Quetschgefahr durch Linearantrieb", "severity": "high" }, "timestamp": "2026-03-16T10:15:00Z" },
{ "id": "aud_002", "action": "risk_assessed", "entity_type": "hazard", "entity_id": "haz_5678", "user_id": "user_abc", "changes": { "inherent_risk": 12, "risk_level": "high" }, "timestamp": "2026-03-16T10:20:00Z" },
{ "id": "aud_003", "action": "tech_file_section_approved", "entity_type": "tech_file", "entity_id": "risk_assessment", "user_id": "user_def", "changes": { "status": "approved", "approved_by": "Dr. Mueller" }, "timestamp": "2026-03-16T15:00:00Z" }
]
}`}
RAG Library Search
Semantische Suche in der Compliance-Bibliothek via RAG (Retrieval-Augmented Generation).
Ermoeglicht kontextbasierte Anreicherung von Tech-File-Abschnitten.
{`curl -X POST "https://api.breakpilot.io/sdk/v1/iace/library-search" \\
-H "Authorization: Bearer YOUR_API_KEY" \\
-H "Content-Type: application/json" \\
-d '{
"query": "Schutzeinrichtungen fuer Industrieroboter Maschinenverordnung",
"top_k": 5
}'`}
Response (200 OK)
{`{
"success": true,
"data": {
"query": "Schutzeinrichtungen fuer Industrieroboter Maschinenverordnung",
"results": [
{ "id": "mr-annex-iii-1.1.4", "title": "Maschinenverordnung Anhang III 1.1.4 — Schutzmassnahmen", "content": "Trennende Schutzeinrichtungen muessen fest angebracht oder verriegelt sein...", "source": "machinery_regulation", "score": 0.93 }
],
"total_results": 5,
"search_time_ms": 38
}
}`}
{`curl -X POST "https://api.breakpilot.io/sdk/v1/iace/projects/proj_a1b2c3d4/tech-file/safety_requirements/enrich" \\
-H "Authorization: Bearer YOUR_API_KEY"`}
Response (200 OK)
{`{
"success": true,
"data": {
"section": "safety_requirements",
"enriched_content": "... (aktualisierter Abschnitt mit Regulierungsreferenzen) ...",
"citations_added": 4,
"sources": [
{ "id": "mr-annex-iii-1.1.4", "title": "Maschinenverordnung Anhang III 1.1.4", "relevance_score": 0.93 }
]
}
}`}
SDK Integration
Beispiel fuer die Integration der IACE-API in eine Anwendung:
{`import { getSDKBackendClient } from '@breakpilot/compliance-sdk'
const client = getSDKBackendClient()
// 1. Projekt erstellen
const project = await client.post('/iace/projects', {
machine_name: 'RoboArm X500',
machine_type: 'Industrieroboter',
manufacturer: 'TechCorp GmbH'
})
// 2. Aus Firmenprofil initialisieren
await client.post(\`/iace/projects/\${project.id}/init-from-profile\`)
// 3. Komponenten hinzufuegen
await client.post(\`/iace/projects/\${project.id}/components\`, {
name: 'Servo-Antrieb Achse 1',
component_type: 'actuator',
is_safety_relevant: true
})
// 4. Regulierungen klassifizieren
const classifications = await client.post(\`/iace/projects/\${project.id}/classify\`)
// 5. Pattern-Matching ausfuehren
const patterns = await client.post(\`/iace/projects/\${project.id}/match-patterns\`)
console.log(\`\${patterns.matches} Gefahren erkannt von \${patterns.total_patterns_checked} Patterns\`)
// 6. Erkannte Patterns als Gefahren uebernehmen
await client.post(\`/iace/projects/\${project.id}/apply-patterns\`)
// 7. Risiken bewerten
for (const hazard of await client.get(\`/iace/projects/\${project.id}/hazards\`)) {
await client.post(\`/iace/projects/\${project.id}/hazards/\${hazard.id}/assess\`, {
severity: 3, exposure: 2, probability: 2, avoidance: 2
})
}
// 8. Tech File generieren
const techFile = await client.post(\`/iace/projects/\${project.id}/tech-file/generate\`)
console.log(\`\${techFile.sections_generated} Abschnitte generiert\`)
// 9. PDF exportieren
const pdf = await client.get(\`/iace/projects/\${project.id}/tech-file/export?format=pdf\`)
`}
LLM-basierte Endpoints (Tech-File-Generierung, Hazard-Suggest, RAG-Enrichment)
verbrauchen LLM-Tokens. Professional-Plan: 50 Generierungen/Tag.
Enterprise-Plan: unbegrenzt. Implementieren Sie Caching fuer wiederholte Anfragen.
Alle LLM-generierten Inhalte muessen vor der Freigabe manuell geprueft werden.
Die API erzwingt dies ueber den Approve-Workflow: generierte Abschnitte haben
den Status "generated" und muessen explizit auf "approved" gesetzt werden.
>
)
}