OptiPeopleOptipeople

Dokumentation

Kobl en agent på

En agent eller jeres egen kode kan komme til produktionsdata i OptiPeople Data Platform på to måder: MCP-serveren, hvor en AI-assistent kalder værktøjerne for jer, og REST-API'et til udviklere og BI-værktøjer. De bygger på de samme data. Opti Assist er en tredje måde at spørge på, lavet til dem, der står ved maskinen.

MCP-server
https://mcp.optipeople.dk/
REST-API
https://dataexport.optipeople.dk/api
API-login
Authorization: Opti <ADGANGSKODE>
API-reference
Swagger
API-reference
PDF

Det skal være på plads

  1. En konto på portal.optipeople.dk
  2. Mindst én maskine med en enhed koblet på
  3. Data, der kommer ind fra enheden
  4. Til REST-API'et: kontoens adgangskode. Til MCP-serveren: en portalbruger at logge ind med.

Har I ikke en konto endnu, er der ingen data at koble på. Book en demo på kontaktsiden.

API eller MCP?

REST-APIMCP-server
Hvem bruger detUdviklere og BI-værktøjerAlle, der kan stille et spørgsmål
HvordanREST-kald med en adgangskodeEn AI-assistent kalder værktøjerne for jer
LoginKontoens adgangskodeOAuth med jeres egen portalbruger
Bedst tilPower BI, ERP-integrationer, faste rapporterSpørgsmål der dukker op, analyser, hurtige svar

Mange bruger begge: API'et fodrer de faste rapporter, og MCP svarer på det, der dukker op ind imellem.

MCP-server

Serverens adresse er:

https://mcp.optipeople.dk/

Alle klienter, der understøtter MCP-servere over HTTP med OAuth, kan koble på med den URL. I Claude Code:

claude mcp add --transport http optipeople https://mcp.optipeople.dk/

Kør derefter /mcp i Claude Code og log ind.

Opsætning i Claude, login, alle 13 værktøjer, datakilderne og grænserne: MCP-serveren (Markdown).

REST-API

Adresse og adgangskode

Alle kald går til https://dataexport.optipeople.dk/api. Der er 54 endpoints, og de kører alle over HTTPS og svarer i JSON.

Adgangskoden finder I i portalen under Accounts > External API. Den hører til jeres konto, så pas på den som på et password. Den foretrukne måde at sende den på er en header:

Authorization: Opti <ADGANGSKODE>

Den anden er parameteren access_code i URL'en. Den er nem, når I bare vil teste i en browser:

https://dataexport.optipeople.dk/api/Machine/GetAll?access_code=<ADGANGSKODE>

Får I en JSON-liste med jeres maskiner tilbage, virker forbindelsen.

De første kald

1. Find jeres maskiner. Kald GET /Machine/GetAll og skriv id ned for hver maskine. Næsten alle andre endpoints skal have et machineId.

curl -H "Authorization: Opti <ADGANGSKODE>" \
  https://dataexport.optipeople.dk/api/Machine/GetAll

2. Hent produktionsdata for en periode. Kald GET /DataExport/GetDataExport med en maskine og en periode:

curl -H "Authorization: Opti <ADGANGSKODE>" \
  "https://dataexport.optipeople.dk/api/DataExport/GetDataExport?machineId=<MASKINE_ID>&from=2026-10-01&to=2026-10-25"

3. Vil I have OEE regnet ud, så kald GET /DataExport/GetOEE. Den giver OEE, tilgængelighed, ydelse og kvalitet pr. maskine. Sæt includePerShiftData=true på for tallene pr. skift.

Parametre, der går igen

  • machineId: maskinen, I vil se data for. På GetDataExport, GetEventExport og GetOEE kan I gentage den og få flere maskiner i ét kald.
  • factoryId: kun én fabrik.
  • from og to: perioden som yyyy-MM-dd. De fleste udtræk tager dagen i dag, hvis I udelader dem, og ét kald kan højst dække et år.

Alle svar er bygget ens op: data er resultatet, errors er det, der gik galt, og meta er ekstra oplysninger.

De vigtigste udtræk

  • GetDataExport: en periodes produktionsdata pr. skift, tæller, ordre og stop. Her starter de fleste Power BI-rapporter.
  • GetOEE: OEE, tilgængelighed, ydelse og kvalitet pr. maskine.
  • GetEventExport: hver eneste gang maskinen starter eller stopper.
  • GetOrderReportExport: produktion pr. ordre, med stoptiden fordelt ud på ordrerne.
  • GetLatestStop og GetHeartbeats: maskinens seneste stop, og om maskinerne melder sig.
  • GetTelemetryData, GetTelemetry (OData, op til 10.000 rækker pr. side) og GetHoursSpentBetweenTelemetryThresholds: telemetri som temperatur og vibration.
  • GetTPMAlertsExport: TPM-alarmer til at planlægge vedligehold ud fra.

Send data ind

  • Ordrer: POST /Machine/SetMachinePartInformation starter en ordre på en maskine, og POST /PartOrderNumber/ExternalSetPartOrder sætter ordren på fabriksniveau.
  • Operatører: opret, ret og slet operatører med /User-endpoints. CreateOrUpdateOperators finder operatøren ud fra medarbejdernummer.
  • Stop: POST /Waste/RegisterAllPendingWaste giver alle ventende stop samme årsag i ét hug.
  • Stamdata: læs, opret, ret, søg i og slet rækker i jeres stamdatatabeller med /MasterData-endpoints.

Alle grupper af endpoints

GruppeHvad den dækker
AccountKontoens indstillinger
API UsageHvor mange kald og hvor meget data I har brugt, pr. konto eller pr. integration
FactoryJeres fabrikker
DeviceEnheder og deres status
MachineMaskiner, manuelle operatørlog, stopkonfiguration, start af ordrer
Machine Shift og Shift IdentifierSkiftplaner og skiftnavne
Data ExportProduktion, OEE, hændelser, ordrer, stop, heartbeats, TPM-alarmer og telemetri
ReportOrdren, der kører nu, tællerrapporter pr. dag og pr. time, ordreoplysninger med egne felter
Part Order NumberOrdrer pr. fabrik og præcist antal emner mellem to tidspunkter
Master DataJeres egne datatabeller
Task Configuration og Task InstanceOpgaver, aktive og afsluttede opgaver med historik
UserOperatører
WasteRegistrering af ventende stop
Incomac AppIndstillinger for energioptimering, spotpriser og maskinbeskeder

Hold øje med forbruget

GET /APIUsage/GetUsageForAccount?startDate=2026-10-01 viser, hvor mange kald I har lavet, og hvor meget data de har givet, fordelt pr. endpoint. GetUsageForExternalApplication gør det samme for én integration.

Reference

Send data ind over MQTT

Platformen tager også imod data. Maskinstatus, emnetællere og målinger kan sendes ind over MQTT i et dokumenteret JSON-format, med UTC-tidsstempler og id på hver enhed. Forbindelsesoplysningerne står ikke på sitet, så spørg os.

Opti Assist

Opti Assist på ai.optipeople.dk er vores chat til produktionen. Det er en app til folk, ikke et API til agenter. Hver maskine får sin egen QR-kode. Operatøren scanner den med telefon eller tablet, uden app og uden login, spørger på dansk eller engelsk og får svaret fra jeres egne manualer og maskinens live data i OptiPeople Data Platform, med kilderne under. Er det en opgave for en tekniker, er det ét tryk, så får servicekontakten en SMS.

Læs mere om Opti Assist, eller se den i en kort demo: book en på kontaktsiden.

Godt at vide for agenter

  • Spørg aldrig efter portalens password. MCP-login kører over OAuth med PKCE, og passwordet går aldrig gennem AI-assistenten.
  • API-adgangskoden hører til hele kontoen. Pas på den som på et password.
  • Det, der bliver skrevet, er rigtigt. Data fra MCP-værktøjerne, der skriver, tæller med i OEE, præcis som data fra maskinen, og API'ets skrivende endpoints ændrer de samme data. En agent skal kun skrive, når den bliver bedt om det.
  • Ændringer via MCP bliver gemt med kilden McpTool, så de kan skelnes fra det, maskinerne selv har sendt.
  • Tider er i hver fabriks lokale tid. En periode, der stadig kører, er ikke endelig.
  • Hjælp til en installation: support@optipeople.dk.

Fra indsigt til handling

Vi hjælper med at få produceret dine ordrer.