{"openapi":"3.1.0","info":{"title":"Utsteder API","description":"API for utstedelse av credentials (Verifiable Credentials) via OpenID4VCI. Krever Basic Auth.","version":"v2"},"servers":[{"url":"https://lommebok.test.digipost.no/utsteder","description":"Generated server url"}],"tags":[{"name":"Utstedelse","description":"Opprett utstedelser, generer credential offers og følg status for utstedelse av credentials (v2)"}],"paths":{"/internal/credentials/credential-offer":{"post":{"tags":["credential-offer-controller"],"operationId":"createCredentialOffer","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCredentialOfferDTO"}}},"required":true},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"type":"object"}}}}}}},"/api/v2/issuance":{"post":{"tags":["Utstedelse"],"summary":"Opprett utstedelse","description":"Oppretter en ny utstedelse av et credential. Validerer bevisdata mot angitt credential-mal og varsler mottaker via valgt leveringsmetode.","operationId":"issueCredential","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateIssuance"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IssueCredentialResponse"}}}}}}},"/api/v2/issuance/{issuanceId}/credential-offer":{"post":{"tags":["Utstedelse"],"summary":"Opprett credential offer","description":"Genererer en credential offer URI for en eksisterende utstedelse. Denne URIen brukes av mottakers lommebok for å hente credential via OpenID4VCI.","operationId":"createCredentialOffer_1","parameters":[{"name":"issuanceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CredentialOfferResponse"}}}}}}},"/ping":{"get":{"tags":["Helsesjekk"],"summary":"Ping","description":"Svarer alltid med 200 gitt at applikasjonen er oppe og kjører.","operationId":"internalPing","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Ping"}}}}}}},"/api/v2/issuance/{issuanceId}":{"get":{"tags":["Utstedelse"],"summary":"Hent utstedelsestatus","description":"Henter status for en utstedelse. Poll dette endepunktet for å følge med på om mottaker har hentet sitt credential.","operationId":"getIssuanceStatus","parameters":[{"name":"issuanceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Success"}}}}}}},"/api/ping":{"get":{"tags":["Helsesjekk"],"summary":"Ping","description":"Svarer alltid med 200 gitt at applikasjonen er oppe og kjører.","operationId":"externalPing","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Ping"}}}}}}}},"components":{"schemas":{"CreateCredentialOfferDTO":{"type":"object","properties":{"issuanceId":{"type":"string","format":"uuid"},"digipostSenderId":{"type":"integer","format":"int64"}}},"CreateIssuance":{"type":"object","properties":{"issuanceId":{"type":"string","format":"uuid","example":"your-issuance-uuid"},"credentialTemplateId":{"type":"string","example":"credential-template","minLength":1},"delivery":{"$ref":"#/components/schemas/Delivery"},"claims":{"type":"object","additionalProperties":{},"example":{"name":"Kari Nordmann","age":42}}},"required":["credentialTemplateId","delivery","issuanceId"]},"Delivery":{"type":"object","properties":{"method":{"type":"string","enum":["digipost","direct"]},"recipientId":{"type":"string","example":"personnummer-eller-orgnummer"},"credentialNoticeTitle":{"type":"string","example":"Du har mottatt et digitalt bevis"},"credentialNoticeBody":{"type":"string","example":"For å ta i bruk beviset må du legge det til i din digitale lommebok"}},"required":["method"]},"IssueCredentialResponse":{"type":"object","properties":{"issuanceId":{"type":"string","format":"uuid","example":"your-issuance-uuid"}}},"CredentialOfferResponse":{"type":"object","properties":{"credentialOfferUri":{"type":"string","example":"openid-credential-offer://?credential_offer_uri=https..."}}},"Ping":{"type":"object","properties":{"ping":{"type":"string"}}},"Success":{"type":"object","properties":{"status":{"type":"string","enum":["PENDING","ACTIVE","ISSUED","FAILED"]}}}}}}