{"openapi":"3.1.0","info":{"title":"domeneschluse","version":"0.1.0"},"paths":{"/healthz":{"get":{"summary":"Healthz","description":"Prosessens helse pluss hvilken commit som kjører (#96: smoke venter på\nat det er den som nettopp ble merget, ikke forrige deploy).","operationId":"healthz_healthz_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/.well-known/oauth-protected-resource":{"get":{"summary":"Prm","operationId":"prm__well_known_oauth_protected_resource_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/koble-til":{"get":{"summary":"Koble Til Side","operationId":"koble_til_side_koble_til_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/samtykke":{"get":{"summary":"Samtykke Side","description":"Vår egen OAuth-samtykkeside (#44, PDR-020).\n\nClerk sender hit med authorize-parametrene (Dashboard → Paths → OAuth\nconsent). Siden viser oppsettet for en tom konto eller en oppsummering for\nen kjent, og monterer Clerks samtykke på SAMME URL, så parametrene følger med.","operationId":"samtykke_side_samtykke_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/app":{"get":{"summary":"App Dashboard","operationId":"app_dashboard_app_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/app/historikk":{"get":{"summary":"App Historikk","operationId":"app_historikk_app_historikk_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/app/tilkobling":{"get":{"summary":"App Tilkobling","operationId":"app_tilkobling_app_tilkobling_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/app/tilkobling/data":{"get":{"summary":"Tilkobling Data","operationId":"tilkobling_data_app_tilkobling_data_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/app/tilkobling/api-noekkel":{"post":{"summary":"Tilkobling Api Noekkel","description":"Lagrer Domeneshop-API-nøkkelen, kryptert som e-postpassordet (PDR-015).\n\nVerifiserer mot Domeneshop FØR lagring: en nøkkel som ikke virker er verre\nenn ingen, fordi kunden tror DNS-verktøyene er koblet på og får feil senere,\ni en samtale, uten å vite hvorfor.","operationId":"tilkobling_api_noekkel_app_tilkobling_api_noekkel_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiNoekkel"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/app/tilkobling/api-noekkel/fjern":{"post":{"summary":"Tilkobling Api Noekkel Fjern","description":"Fjerner API-nøkkelen uten å røre e-posttilkoblingen.","operationId":"tilkobling_api_noekkel_fjern_app_tilkobling_api_noekkel_fjern_post","requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiNoekkelId"},{"type":"null"}],"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/app/tilkobling/koble-fra":{"post":{"summary":"Tilkobling Koble Fra","operationId":"tilkobling_koble_fra_app_tilkobling_koble_fra_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/app/tall":{"get":{"summary":"App Tall","operationId":"app_tall_app_tall_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/app/tall/data":{"get":{"summary":"App Tall Data","description":"Aggregerte tall. Ingen kundedata - se app/tall.py.\n\nBak innlogging med vilje: de er ikke hemmelige, men de skal ikke være\noffentlige før vi har bestemt at de skal det.","operationId":"app_tall_data_app_tall_data_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/app/konto":{"get":{"summary":"App Konto","operationId":"app_konto_app_konto_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/historikk/trace/{trace_id}":{"get":{"summary":"Trace Detalj","operationId":"trace_detalj_historikk_trace__trace_id__get","parameters":[{"name":"trace_id","in":"path","required":true,"schema":{"type":"string","title":"Trace Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/historikk":{"get":{"summary":"Historikk Redirect","operationId":"historikk_redirect_historikk_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/historikk/data":{"get":{"summary":"Historikk Data","operationId":"historikk_data_historikk_data_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/koble-til/sjekk":{"post":{"summary":"Koble Til Sjekk","operationId":"koble_til_sjekk_koble_til_sjekk_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SjekkInn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/koble-til/verifiser":{"post":{"summary":"Koble Til Verifiser","operationId":"koble_til_verifiser_koble_til_verifiser_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifiserInn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/mcp":{"get":{"summary":"Mcp","operationId":"mcp_mcp_delete","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"summary":"Mcp","operationId":"mcp_mcp_delete","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"delete":{"summary":"Mcp","operationId":"mcp_mcp_delete","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}}},"components":{"schemas":{"ApiNoekkel":{"properties":{"token":{"type":"string","title":"Token"},"secret":{"type":"string","title":"Secret"},"etikett":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Etikett"}},"type":"object","required":["token","secret"],"title":"ApiNoekkel"},"ApiNoekkelId":{"properties":{"id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Id"}},"type":"object","title":"ApiNoekkelId"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"SjekkInn":{"properties":{"epost":{"type":"string","title":"Epost"}},"type":"object","required":["epost"],"title":"SjekkInn"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"VerifiserInn":{"properties":{"epost":{"type":"string","title":"Epost"},"passord":{"type":"string","title":"Passord"}},"type":"object","required":["epost","passord"],"title":"VerifiserInn"}}}}