Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Inleiding

De OfferteService een cruciaal onderdeel van het http://Mijnaansluiting.nl platform, is ontworpen met een sterke nadruk op gebruiksvriendelijkheid. Deze service stelt gebruikers in staat om hun aanvragen snel en efficiënt in te dienen en te beheren.

Transformatie naar REST-gebaseerde Service

De overgang naar een REST-gebaseerde service heeft aanzienlijke verbeteringen met zich meegebracht:

  • Meer flexibiliteit en schaalbaarheid

  • Betere compatibiliteit met moderne architecturen, middleware en netwerken

Deze verbeteringen hebben een directe positieve impact op de gebruikerservaring, verkorten de doorlooptijd van aanvragen en verhogen de algehele efficiëntie van netwerkbeheer. Door deze transitie kunnen gebruikers nu profiteren van een robuustere en toekomstbestendige infrastructuur, wat resulteert in een meer gestroomlijnd en betrouwbaar offerteproces

Inhoudsopgave

Table of Contents
stylenone

Handleiding

Panel
panelIconIdatlassian-note
panelIcon:note:
bgColor#ABF5D1

1. POST /offerte

Met deze methode kunnen gebruikers een offerte item aanmaken. De waarden in de response kunnen worden gebruikt om het offertebestand te uploaden

Het /offerte endpoint met de POST -methode biedt de functionaliteit om een offerte item aan te maken Beschrijving: Dit endpoint wordt gebruikt om een nieuwe offerte aan te maken. De offerte bevat een PDF-bestand en bijbehorende metadata.

Doel: Creëer een nieuwe offerte item voor een aantal aansluitingen bij een een aanvraag.

Macro diagram
sourceTypeMacroBody
attachmentPageId
syntaxMermaid
attachmentId
url
sequenceDiagram
    participant client
    participant auth
    participant gateway
    participant offerte service
    participant blob storage
    participant event broker

    client->>auth: authenticatie
    auth->>client: token

    client->>offerte service: payload + (token)
    offerte service ->> client: OK + response

Bij het aanmaken van een offerteitem met de POST /offerte methode, hoeven geen queryparameters worden meegegeven.

Panel
bgColor#FFFFFF

codevoorbeeld (curl)

Code Block
curl -X 'POST' \
  'https://[environment].mijnaansluiting.nl/services/offerte/offerte' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' 
Panel
panelIconIdatlassian-note
panelIcon:note:
bgColor#B3D4FF

2. GET / offerte/{offerteId}

Deze methode stelt gebruikers in staat om een specifieke offerte bij te werken. Het offerte-ID moet in de URL worden gespecificeerd, en de wijzigingen worden doorgegeven in de body van het verzoek.

Het /offerte endpoint met {offerteId} met de GET-methode biedt de functionaliteit om een offerte op te halen.

Macro diagramsourceTypeMacroBodyattachmentPageIdsyntaxMermaidattachmentIdurl
sequenceDiagram
    participant client
    participant auth
    participant gateway
    participant aanvraag service
    participant event broker

    client->>auth: authenticatie
    auth->>client: token

    client->>aanvraag service: request + aanvraagid +  (token)
    aanvraag service ->> client: aanvraag

Bij het opvragen van een lijst van aanvragen met de GET /offerte/{offerteid} methode, kunnen de volgende urlparameters worden gebruikt om de resultaten te filteren en te pagineren:

  1. offerteId (string): De Id van de op te halen offerte.

codevoorbeeld (curl):

Code Block
curl -X PATCH\ 
-H "Authorization: Bearer [[accessToken]]"\ 
-H "Accept: application/json"\ 
-H "Content-Type: application/json"\ 
"//offerte/{offerteId}"

Panel
panelIconIdatlassian-note
panelIcon:note:
bgColor#ABF5D1

3. PATCH /offerte/{offerteId}

Deze methode stelt gebruikers in staat om de statussen van een aansluiting in een specifieke offerte bij te werken. Het offerte-ID moet in de URL worden gespecificeerd, en de wijzigingen worden doorgegeven in de body van het verzoek.

Note

deze functionaliteit wordt uitgefaseerd. gebruikt u a.u.b PATCH /offerte/{offerteId}/bulk

Het /offerte endpoint met {offerteId} met de PATCH-methode biedt de functionaliteit om de status van een aansluiting in een een offerte te wijzigen.

Macro diagramsourceTypeMacroBodyattachmentPageIdsyntaxMermaidattachmentIdurl
sequenceDiagram
    participant client
    participant auth
    participant gateway
    participant aanvraag service
    participant event broker

    client->>auth: authenticatie
    auth->>client: token

    client->>aanvraag service: patch + aanvraagid + jsonbody + (token)
    aanvraag service ->> client: ok

Bij het aanpassen van een offerte met de PATCH /offerte/{offerteid} methode, kunnen de volgende url-parameters worden gebruikt om de resultaten te filteren en te pagineren:

  1. offerteId (string): De Id van de offerte.

codevoorbeeld (curl):

Code Blockcurl -X PATCH\ -H "Authorization: Bearer [[accessToken]]"\ -H "Accept: application/json"\ -H "Content-Type: application/json"\ "//offerte/{offerteId}/bulk

Headers

Header Name

Verplicht

Type

Beschrijving

Authorization

Ja

String

JWT Bearer token voor authenticatie

Content-Type

Ja

String

application/json

Request Body

Parameter

Verplicht

Type

Beschrijving

aanvraagId

Ja

Integer

De unieke ID van de aanvraag.

offerteReferentie

Nee

String

Een referentie voor de offerte. Max lengte: 100 karakters.

organisatieCode

Nee

String

Code van de organisatie. Max lengte: 10 karakters.

disciplineIDs

Nee

Array

Een lijst van discipline IDs gerelateerd aan de offerte.

omschrijving

Nee

String

Een omschrijving van de offerte.

automatischAanvraagAfronden

Nee

Boolean

Of de aanvraag automatisch moet worden afgerond na de offerte.

vervalDatum

Nee

DateTime

De datum waarop de offerte vervalt.

bestandsnaam

Nee

String

De naam van het offertebestand inclusief extensie. Max lengte: 35 karakters.

mimeType

Nee

String

Het MIME-type van het bestand. Standaardwaarde: application/pdf. Max lengte: 100 karakters.

codevoorbeeld (curl)

Code Block
curl -X POST https://services-acc.mijnaansluiting.nl/services/offerte \
-H "Authorization: Bearer {JWT_Token}" \
-H "Content-Type: application/json" \
-d '{
  "aanvraagId": {aanvraagId},
  "offerteReferentie": "{offerteReferentie}",
  "organisatieCode": "{organisatieCode}",
  "disciplineIDs": [{disciplineID1}, {disciplineID2}],
  "omschrijving": "{omschrijving}",
  "automatischAanvraagAfronden": {true/false},
  "vervalDatum": "{vervalDatum}",
  "bestandsnaam": "{bestandsnaam}",
  "mimeType": "{mimeType}"
}'

Panel
panelIconIdatlassian-note
panelIcon:note:
bgColor#B3D4FF

2. GET / offerte

Korte beschrijving: Dit endpoint wordt gebruikt om een lijst van offertes op te halen die voldoen aan de opgegeven zoekcriteria.

Doel: Het zoeken en filteren van offertes op basis van verschillende parameters, zoals aanvraag-ID, referentie, processtatus en datum.

Macro diagram
sourceTypeMacroBody
attachmentPageId
syntaxMermaid
attachmentId
url
sequenceDiagram
    participant client
    participant auth
    participant gateway
    participant offerte service
    participant blob storage
    participant event broker

    client->>auth: authenticatie
    auth->>client: token

    client->>offerte service: payload + (token)
    offerte service ->> client: OK + response

Query Parameters

Parameter

Verplicht

Type

Beschrijving

offerteReferentie

Nee

String

De referentie van de offerte die gezocht wordt.

aanvraagId

Nee

Integer

De unieke ID van de aanvraag.

procesStatus

Nee

String

De huidige status van de offerte.

beginAanmaakDatum

Nee

String

Begin van het aanmaakdatum van de offerte in YYYY-MM-DD formaat.

eindAanmaakDatum

Nee

String

Eind van het aanmaakdatum van de offerte in YYYY-MM-DD formaat.

beginWijzigingsDatum

Nee

String

Begin van de wijzigingsdatum van de offerte in YYYY-MM-DD formaat.

eindWijzigingsDatum

Nee

String

Eind van de wijzigingsdatum van de offerte in YYYY-MM-DD formaat.

beginVervalDatum

Nee

String

Begin van de vervaldatum van de offerte in YYYY-MM-DD formaat.

eindVervalDatum

Nee

String

Eind van de vervaldatum van de offerte in YYYY-MM-DD formaat.

skip

Nee

Integer

Het aantal over te slaan resultaten (voor paginering).

take

Nee

Integer

Het aantal resultaten om terug te geven (voor paginering).

Headers

Header Name

Verplicht

Type

Beschrijving

Authorization

Ja

String

JWT Bearer token voor authenticatie

Content-Type

Nee

String

application/json

Response

Succes (200 OK)

Code Block
{
  "count": {aantal},
  "skip": {skip},
  "take": {take},
  "items": [
    {
      "offerteReferentie": "{offerteReferentie}",
      "organisatieCode": "{organisatieCode}",
      "aanvraagID": {aanvraagId},
      "disciplineIDs": [{disciplineID1}, {disciplineID2}],
      "url": "{url}",
      "omschrijving": "{omschrijving}",
      "inkoopNummer": "{inkoopNummer}",
      "automatischAanvraagAfronden": {true/false},
      "bestandsnaam": "{bestandsnaam}",
      "mimeType": "{mimeType}",
      "aanmaakDatum": "{aanmaakDatum}",
      "vervalDatum": "{vervalDatum}",
      "wijzigingsDatum": "{wijzigingsDatum}"
    }
  ]
}

codevoorbeeld (curl)

Code Block
curl -X GET https://services-acc.mijnaansluiting.nl/services/offerte \
-H "Authorization: Bearer {JWT_Token}" \
-G \
--data-urlencode "offerteReferentie={offerteReferentie}" \
--data-urlencode "aanvraagId={aanvraagId}" \
--data-urlencode "procesStatus={procesStatus}" \
--data-urlencode "beginAanmaakDatum={beginAanmaakDatum}" \
--data-urlencode "eindAanmaakDatum={eindAanmaakDatum}" \
--data-urlencode "beginWijzigingsDatum={beginWijzigingsDatum}" \
--data-urlencode "eindWijzigingsDatum={eindWijzigingsDatum}" \
--data-urlencode "beginVervalDatum={beginVervalDatum}" \
--data-urlencode "eindVervalDatum={eindVervalDatum}" \
--data-urlencode "skip={skip}" \
--data-urlencode "take={take}"

Panel
panelIconIdatlassian-note
panelIcon:note:
bgColor#ABF5D1
4

3.

PATCH

POST/offerte/{

offerteId

aanvraagId}/referentie/

bulk

{offerteReferentie}

Deze methode stelt gebruikers in staat om de statussen vaan aansluitingen een specifieke offerte bij te werken. Het offerte-ID moet in de URL worden gespecificeerd, en de wijzigingen worden doorgegeven in de body van het verzoek.

Het /offerte endpoint met {offerteId} met de PATCH-methode biedt de functionaliteit om de status van aansluitingen in een een offerte te wijzigen. Korte beschrijving Deze endpoint wordt gebruikt om een offertebestand te uploaden voor een specifieke aanvraag-ID en offertereferentie.

Doel Het uploaden van een offertebestand gekoppeld aan een bestaande aanvraag en referentie. Dit bestand kan bijvoorbeeld een PDF-document van de offerte zijn

Macro diagram
sourceTypeMacroBody
attachmentPageId
syntaxMermaid
attachmentId
url
sequenceDiagram
    participant client
    participant auth
    participant gateway
    participant aanvraagofferte service
    participant blob storage
    participant event broker

    client->>auth: authenticatie
    auth->>client: token

  

client->>aanvraag service: patch + aanvraagid + jsonbodyclient->>offerte service: payload + (token)
    aanvraagofferte service ->> client: ok

Bij het aanpassen van een offerte met de PATCH /offerte/{offerteid} methode, kunnen de volgende url-parameters worden gebruikt om de resultaten te filteren en te pagineren:

  1. offerteId (string): De Id van de offerte.

Uitleg over het bijwerken van aanvragen met PATCH /offerte/{offerteId}

Bij het bijwerken van een offerte met de PATCH /offerte/{offerteId} methode, kunnen verschillende niveaus van specificatie worden gebruikt om te bepalen welke onderdelen van de offerte worden bijgewerkt. Hieronder volgt een gedetailleerde uitleg van de mogelijke scenario's:

  1. Specificeer disciplineId's in de body:

    • Als een of meerdere disciplineId's in de body van het verzoek worden gespecificeerd, worden alleen de betreffende disciplineId's bijgewerkt.

  2. Specificeer objectId's maar geen disciplineId's in de body:

    • Als een of meerdere objectId's worden gespecificeerd, maar niet de onderliggende disciplineId's, worden alle onderliggende disciplineId's van die objectId's bijgewerkt.

  3. Geen objectId's of disciplineId's gespecificeerd in de body:

    • Als er geen objectId's of disciplineId's in de body worden gespecificeerd, worden alle onderliggende disciplineId's van de gehele offerte bijgewerkt.

  4. Het betreft ALTIJD alleen de disciplineId’s van de betreffende netbeheerder.

  5. Combinaties van bovenstaande scenario's zijn mogelijk in 1 verzoek.

Deze flexibiliteit in specificatie maakt het mogelijk om gerichte updates uit te voeren op verschillende niveaus van de offerte, afhankelijk van de verstrekte parameters in de body van het verzoek.

codevoorbeeld (curl):
 OK + response

URL-Parameters

Parameter

Verplicht

Type

Beschrijving

aanvraagId

Ja

Integer

De unieke ID van de aanvraag.

offerteReferentie

Ja

String

De referentie van de offerte waarvoor het bestand wordt geüpload.

Headers

Header Name

Verplicht

Type

Beschrijving

Authorization

Ja

String

JWT Bearer token voor authenticatie

Content-Type

Ja

String

multipart/form-data

Request Parameters

Parameter

Verplicht

Type

Beschrijving

netbeheerderCode

Ja

String

Code van de netbeheerder

id

Ja

String

Unieke ID voor het document

collectionId

Ja

String

Unieke ID van de collectie waar het bestand bij hoort

Request Body

Parameter

Verplicht

Type

Beschrijving

file

Ja

Binary

Het offertebestand dat geüpload moet worden.

codevoorbeeld (curl)

Code Block
curl -X PATCH\ 
-H "Authorization: Bearer [[accessToken]]"\ 
POST https://services-acc.mijnaansluiting.nl/services/offerte/{aanvraagId}/referentie/{offerteReferentie} \
-H "AcceptAuthorization: application/json"\  Bearer {JWT_Token}" \
-H "Content-Type: applicationmultipart/jsonform-data" \
-F "//offerte/{offerteId}/bulk"

Panel
panelIconIdatlassian-note
panelIcon:note:
bgColor#B3D4FF

5. GET /offerte/{offerteId}/intake

Deze methode wordt gebruikt om de intakevragen voor een specifieke offerte op te halen. Het offerte-ID moet in de URL worden gespecificeerd. Met de IntakeService kunt u voorbereidende informatie aanvragen vóór het indienen van aanvragen die onder handen zijn bij eindgebruikers. De GET /offerte/{offerteId}/intake draagt zorg voor het ontvangen van deze aanvragen, het terugsturen van informatie naar LIP+ om de onderhande zijnde offerte aan te passen gaat via een andere service: De POST /offerte/{offerteId}/intake Vervolgens kunt u het gehele traject van voortgang, wijziging of afwijzing van deze offerte in uw bestaande proces integreren met andere, aanvullende, services
file=@{pad_naar_bestand}" \
--form "netbeheerderCode={netbeheerderCode}" \
--form "id={documentId}" \
--form "collectionId={collectionId}"

Panel
panelIconIdatlassian-note
panelIcon:note:
bgColor#B3D4FF

4. GET /offerte/{aanvraagId}/referentie/{offerteReferentie}

Korte beschrijving Deze endpoint wordt gebruikt om de details van een specifieke offerte op te halen op basis van de aanvraag-ID en offertereferentie.

Doel: Het verkrijgen van gedetailleerde informatie over een offerte die gekoppeld is aan een specifieke aanvraag-ID en referentie.

Macro diagram
sourceTypeMacroBody
attachmentPageId
syntaxMermaid
attachmentId
url
sequenceDiagram
    participant client
    participant auth
    participant gateway
    participant aanvraag service
    participant event broker

    client->>auth: authenticatie
    auth->>client: token

    client->>aanvraag service: get + aanvraagid + (token)
   
aanvraag
service ->> client: jsondocument

Bij het opvragen van een intake met de GET /offerte/{offerteid}/intake methode, kunnen de volgende url-parameters worden gebruikt om de resultaten te filteren en te pagineren:

  1. offerteId (string): De Id van de offerte.

codevoorbeeld (curl):

Code Block
curl -X GET\ 
-H "Authorization: Bearer [[accessToken]]"\ 
-H "Accept: application/json"\ 
-H "Content-Type: application/json"\ "//offerte/{offerteId}/intake"

Panel
panelIconIdatlassian-note
panelIcon:note:
bgColor#57D9A3

6. POST /offerte/{offerteId}/intake

Met deze methode kunnen netbeheerders antwoorden op intakevragen indienen voor een specifieke offerte. Het offerte-ID moet in de URL worden gespecificeerd, en de antwoorden worden in de body van het verzoek doorgegeven.

Macro diagramsourceTypeMacroBodyattachmentPageIdsyntaxMermaidattachmentIdurl
sequenceDiagram
    participant client
    participant auth
    participant gateway
    participant aanvraag service
    participant event broker

    client->>auth: authenticatie
    auth->>client: token

    client->>aanvraag service: POST + aanvraagid + jsondocument + (token)
    aanvraag service ->> client: ok

Bij het opvragen van een intake met de POST /offerte/{offerteid}/intake methode, kunnen de volgende url-parameters worden gebruikt om de resultaten te filteren en te pagineren:

  1. offerteId (string): De Id van de offerte.

codevoorbeeld (curl):

Code Block
curl -X POST\  client->>aanvraag service: patch + aanvraagid + jsonbody + (token)
    aanvraag service ->> client: ok

URL-Parameters

Parameter

Verplicht

Type

Beschrijving

aanvraagId

Ja

Integer

De unieke ID van de aanvraag.

offerteReferentie

Ja

String

De referentie van de offerte die moet worden opgehaald.

Headers

Header Name

Verplicht

Type

Beschrijving

Authorization

Ja

String

JWT Bearer token voor authenticatie

Content-Type

Nee

String

application/json

response:

Succes (200 OK):

Code Block
{
  "offerteReferentie": "{offerteReferentie}",
  "organisatieCode": "{organisatieCode}",
  "aanvraagID": {aanvraagId},
  "disciplineIDs": [{disciplineID1}, {disciplineID2}],
  "url": "{url}",
  "omschrijving": "{omschrijving}",
  "inkoopNummer": "{inkoopNummer}",
  "automatischAanvraagAfronden": {true/false},
  "bestandsnaam": "{bestandsnaam}",
  "mimeType": "{mimeType}",
  "aanmaakDatum": "{aanmaakDatum}",
  "vervalDatum": "{vervalDatum}",
  "wijzigingsDatum": "{wijzigingsDatum}"
}

codevoorbeeld (curl):

Code Block
curl -X GET https://services-acc.mijnaansluiting.nl/services/offerte/{aanvraagId}/referentie/{offerteReferentie} \
-H "Authorization: Bearer [[accessToken]]"\ 
-H "Accept: application/json"\ 
-H "Content-Type: application/json"\ "//offerte/{offerteId}/intake"

Panel
panelIconIdatlassian-note
panelIcon:note:
bgColor#B3D4FF

7. GET /offerte/{offerteId}/aansluit-gereed-datum

Deze methode stelt gebruikers in staat om de aansluit-gereed data voor een specifieke offerte op te halen. Het offerte-ID moet in de URL worden gespecificeerd om de juiste gegevens te retourneren.

Macro diagramsourceTypeMacroBodyattachmentPageIdsyntaxMermaidattachmentIdurl
sequenceDiagram
    participant client
    participant auth
    participant gateway
    participant aanvraag service
    participant event broker

    client->>auth: authenticatie
    auth->>client: token

    client->>aanvraag service: GET+ aanvraagid + (token)
    aanvraag service ->> client: jsondocument 

Bij het opvragen van een intake met de GET /offerte/{offerteId}/aansluit-gereed-datum methode, kunnen de volgende url-parameters worden gebruikt om de resultaten te filteren en te pagineren:

  1. offerteId (string): De Id van de offerte.

codevoorbeeld (curl):

Code Block
curl -X GET\ 
-H "Authorization: Bearer [[accessToken]]"\ 
-H "Accept: application/json"\ 
-H "Content-Type: application/json"\ "//offerte/{offerteId}/aansluit-gereed-datum{JWT_Token}"

Panel
panelIconIdatlassian-note
panelIcon:note:
bgColor#ABF5D1

5. PATCH offerte/{aanvraagId}

Korte beschrijving Deze endpoint wordt gebruikt om de details van een specifieke offerte op te halen op basis van de aanvraag-ID.

Doel Het verkrijgen van gedetailleerde informatie over een offerte die gekoppeld is aan een specifieke aanvraag-ID.

Parameters

URL-Parameters

Parameter

Verplicht

Type

Beschrijving

aanvraagId

Ja

Integer

De unieke ID van de aanvraag waarvan de offerte moet worden opgehaald.

Headers

Header Name

Verplicht

Type

Beschrijving

Authorization

Ja

String

JWT Bearer token voor authenticatie

Content-Type

Nee

String

application/json

Respons:

Code Block
{
  "offerteReferentie": "{offerteReferentie}",
  "organisatieCode": "{organisatieCode}",
  "aanvraagID": {aanvraagId},
  "disciplineIDs": [{disciplineID1}, {disciplineID2}],
  "url": "{url}",
  "omschrijving": "{omschrijving}",
  "inkoopNummer": "{inkoopNummer}",
  "automatischAanvraagAfronden": {true/false},
  "bestandsnaam": "{bestandsnaam}",
  "mimeType": "{mimeType}",
  "aanmaakDatum": "{aanmaakDatum}",
  "vervalDatum": "{vervalDatum}",
  "wijzigingsDatum": "{wijzigingsDatum}"
}

Voorbeeld cURL-aanvraag

Code Block
curl -X GET https://services-acc.mijnaansluiting.nl/services/offerte/{aanvraagId} \
-H "Authorization: Bearer {JWT_Token}"
Info

8. HTTP return status codes

Statuscode

Betekenis

Beschrijving

200

OK

Het verzoek is geslaagd.

201

Created

Het verzoek is geslaagd en er is een nieuwe resource aangemaakt.

204

No Content

Het verzoek is geslaagd, maar er is geen inhoud om terug te sturen.

400

Bad Request

De server kon het verzoek niet begrijpen vanwege een onjuiste syntax.

401

Unauthorized

Authenticatie is vereist en is mislukt of nog niet verstrekt.

403

Forbidden

De server begrijpt het verzoek, maar weigert het uit te voeren.

404

Not Found

De gevraagde resource kon niet worden gevonden op de server.

500

Internal Server Error

De server heeft een fout gemaakt en kon het verzoek niet voltooien.

502

Bad Gateway

De server ontving een ongeldige reactie van de upstream-server.

503

Service Unavailable

De server is momenteel niet beschikbaar (door overbelasting of onderhoud).

Swagger API specificatie

Macro openapi
sourceTypeURL
attachmentPageId
syntaxSwagger / OpenAPI
attachmentId
urlhttps://services-acc.mijnaansluiting.nl/services/offerte/swagger/v1/swagger.json