openapi: 3.1.0
components:
  schemas:
    Area:
      type: object
      properties:
        enclosingCircle:
          type: object
          properties:
            center:
              type: object
              properties:
                lat:
                  type: number
                lon:
                  type: number
            radius:
              type: number
        boundingBox:
          type: object
          properties:
            lowerCorner:
              type: object
              properties:
                lat:
                  type: number
                lon:
                  type: number
            upperCorner:
              type: object
              properties:
                lat:
                  type: number
                lon:
                  type: number
    Circle:
      type: object
      properties:
        center:
          type: object
          properties:
            lat:
              type: number
            lon:
              type: number
        radius:
          type: number
    CptCriteriaSet:
      type: object
      required:
        - area
      properties:
        deliveryAccountableParty:
          type: string
        qualityRegime:
          type: string
          enum:
            - IMBRO
            - IMBRO_A
        registrationPeriod:
          type: object
          properties:
            beginDate:
              type: string
            endDate:
              type: string
        correctionPeriod:
          type: object
          properties:
            beginDate:
              type: string
            endDate:
              type: string
        underReview:
          type: string
          enum:
            - JA
            - NEE
        area:
          type: object
          properties:
            enclosingCircle:
              type: object
              properties:
                center:
                  type: object
                  properties:
                    lat:
                      type: number
                    lon:
                      type: number
                radius:
                  type: number
            boundingBox:
              type: object
              properties:
                lowerCorner:
                  type: object
                  properties:
                    lat:
                      type: number
                    lon:
                      type: number
                upperCorner:
                  type: object
                  properties:
                    lat:
                      type: number
                    lon:
                      type: number
        researchReportPeriod:
          type: object
          properties:
            beginDate:
              type: string
            endDate:
              type: string
        fieldworkPeriod:
          type: object
          properties:
            beginDate:
              type: string
            endDate:
              type: string
        depthInterval:
          type: object
          properties:
            beginDepth:
              type: number
            endDepth:
              type: number
        cptStandard:
          type: string
        qualityClass:
          type: array
          items:
            type: string
        dissipationTestPerformed:
          type: string
          enum:
            - JA
            - NEE
        parameters:
          type: object
          properties:
            depth:
              type: string
              enum:
                - JA
                - NEE
            elapsedTime:
              type: string
              enum:
                - JA
                - NEE
            correctedConeResistance:
              type: string
              enum:
                - JA
                - NEE
            netConeResistance:
              type: string
              enum:
                - JA
                - NEE
            magneticFieldStrengthX:
              type: string
              enum:
                - JA
                - NEE
            magneticFieldStrengthY:
              type: string
              enum:
                - JA
                - NEE
            magneticFieldStrengthZ:
              type: string
              enum:
                - JA
                - NEE
            magneticFieldStrengthTotal:
              type: string
              enum:
                - JA
                - NEE
            electricalConductivity:
              type: string
              enum:
                - JA
                - NEE
            inclinationEW:
              type: string
              enum:
                - JA
                - NEE
            inclinationNS:
              type: string
              enum:
                - JA
                - NEE
            inclinationX:
              type: string
              enum:
                - JA
                - NEE
            inclinationY:
              type: string
              enum:
                - JA
                - NEE
            inclinationResultant:
              type: string
              enum:
                - JA
                - NEE
            magneticInclination:
              type: string
              enum:
                - JA
                - NEE
            magneticDeclination:
              type: string
              enum:
                - JA
                - NEE
            localFriction:
              type: string
              enum:
                - JA
                - NEE
            poreRatio:
              type: string
              enum:
                - JA
                - NEE
            temperature:
              type: string
              enum:
                - JA
                - NEE
            porePressureU1:
              type: string
              enum:
                - JA
                - NEE
            porePressureU2:
              type: string
              enum:
                - JA
                - NEE
            porePressureU3:
              type: string
              enum:
                - JA
                - NEE
            frictionRatio:
              type: string
              enum:
                - JA
                - NEE
        stopCriterion:
          type: string
    DatePeriod:
      type: object
      properties:
        beginDate:
          type: string
        endDate:
          type: string
    DepthInterval:
      type: object
      properties:
        beginDepth:
          type: number
        endDepth:
          type: number
    Envelope:
      type: object
      properties:
        lowerCorner:
          type: object
          properties:
            lat:
              type: number
            lon:
              type: number
        upperCorner:
          type: object
          properties:
            lat:
              type: number
            lon:
              type: number
    Parameters:
      type: object
      properties:
        depth:
          type: string
          enum:
            - JA
            - NEE
        elapsedTime:
          type: string
          enum:
            - JA
            - NEE
        correctedConeResistance:
          type: string
          enum:
            - JA
            - NEE
        netConeResistance:
          type: string
          enum:
            - JA
            - NEE
        magneticFieldStrengthX:
          type: string
          enum:
            - JA
            - NEE
        magneticFieldStrengthY:
          type: string
          enum:
            - JA
            - NEE
        magneticFieldStrengthZ:
          type: string
          enum:
            - JA
            - NEE
        magneticFieldStrengthTotal:
          type: string
          enum:
            - JA
            - NEE
        electricalConductivity:
          type: string
          enum:
            - JA
            - NEE
        inclinationEW:
          type: string
          enum:
            - JA
            - NEE
        inclinationNS:
          type: string
          enum:
            - JA
            - NEE
        inclinationX:
          type: string
          enum:
            - JA
            - NEE
        inclinationY:
          type: string
          enum:
            - JA
            - NEE
        inclinationResultant:
          type: string
          enum:
            - JA
            - NEE
        magneticInclination:
          type: string
          enum:
            - JA
            - NEE
        magneticDeclination:
          type: string
          enum:
            - JA
            - NEE
        localFriction:
          type: string
          enum:
            - JA
            - NEE
        poreRatio:
          type: string
          enum:
            - JA
            - NEE
        temperature:
          type: string
          enum:
            - JA
            - NEE
        porePressureU1:
          type: string
          enum:
            - JA
            - NEE
        porePressureU2:
          type: string
          enum:
            - JA
            - NEE
        porePressureU3:
          type: string
          enum:
            - JA
            - NEE
        frictionRatio:
          type: string
          enum:
            - JA
            - NEE
    Point:
      type: object
      properties:
        lat:
          type: number
        lon:
          type: number
    QualityRegime:
      type: string
      enum:
        - IMBRO
        - IMBRO_A
    ServiceError:
      type: object
      properties:
        title:
          type: string
        description:
          type: string
        errorCode:
          type: integer
          format: int32
    YesNoEnumeration:
      type: string
      enum:
        - JA
        - NEE
  examples:
    SIMPLE_CRITERIA:
      value: |-
        {
          "registrationPeriod": {
            "beginDate": "2017-04-01",
            "endDate": "2021-04-01"
          },
          "area": {
            "enclosingCircle": {
              "center": {
                "lat": 52.038297852,
                "lon": 5.31447958948
              },
              "radius": 0.5
            }
          }
        }
paths:
  /sr/cpt/v1/bro-ids:
    get:
      summary: Lijst van CPT BRO-IDs
      description: Haalt de lijst van CPT bro-ids op waarvoor [bronhouder](https://basisregistratieondergrond.nl/service-contact/formulieren/aangemeld-bro/) verantwoordelijk is.
      operationId: bro-ids
      parameters:
        - description: Het kvk (kamer van koophandel) nummer van een CPT bronhouder
          example: '12345678'
          name: bronhouder
          in: query
          schema:
            type: string
          required: true
        - description: Registered is een optionele parameter, bij afwezigheid geeft deze methode alle CPT BRO-IDs terug onafhankelijk of die wel/niet uit registratie zijn genomen. <BR>registered = ja geeft alleen BRO-IDs terug die in registratie zijn genomen. <BR>registered = nee geeft alleen BRO-IDs terug die uit registratie zijn genomen.
          name: registered
          in: query
          schema:
            type: string
      responses:
        '200':
          description: De Lijst van CPT BRO-IDs voor dit registratie object type waarvoor bronhouder verantwoordelijk is.
          headers:
            API-Version:
              description: Versie van deze CPT API
              schema:
                type: string
                examples:
                  - 3.2.1
          content:
            application/json: {}
        '400':
          description: Er bevinden zich andere fouten in het CPT verzoek.
          headers:
            API-Version:
              description: Versie van deze CPT API
              schema:
                type: string
                examples:
                  - 3.2.1
          content:
            application/json:
              schema:
                type: object
                properties:
                  title:
                    type: string
                  description:
                    type: string
                  errorCode:
                    type: integer
                    format: int32
  /sr/cpt/v1/characteristics/searches:
    post:
      summary: Haalt de karakteristieken op van een set van registratie objecten, gegeven een kenmerkenverzameling (kenset).
      description: De karakteristieken geven een samenvatting van een object zodat een verdere selectie gemaakt kan worden. Het past in een twee-traps-benadering, waarbij de eerste stap bestaat uit het ophalen van de karakteristieken en de 2e stap uit het ophalen van de gewenste registratie objecten. Het resultaat van deze operatie is gemaximaliseerd op 2000.Zie [hier](https://www.bro-productomgeving.nl/bpo/latest/bodem-en-grondonderzoek/geotechnisch-sondeeronderzoek-cpt/koppelvlakbeschrijving-uitgifteservice-cpt) en [hier](https://www.bro-productomgeving.nl/bpo/latest/bodem-en-grondonderzoek/geotechnisch-sondeeronderzoek-cpt/uitgiftehandboek-cpt) voor meer info.
      operationId: characteristics
      parameters:
        - description: Een optionele CPT referentie van de gebruiker. "-" wordt aangenomen bij afwezigheid.
          example: Mijn-aanvraag-000001
          name: requestReference
          in: query
          schema:
            type: string
      requestBody:
        description: 'De set van kenmerken. Zie voor meer informatie: https://www.bro-productomgeving.nl/bpo/latest/'
        content:
          application/json:
            examples:
              Simple Criteria:
                value: |-
                  {
                    "registrationPeriod": {
                      "beginDate": "2017-04-01",
                      "endDate": "2021-04-01"
                    },
                    "area": {
                      "enclosingCircle": {
                        "center": {
                          "lat": 52.038297852,
                          "lon": 5.31447958948
                        },
                        "radius": 0.5
                      }
                    }
                  }
            schema:
              type: object
              required:
                - area
              properties:
                deliveryAccountableParty:
                  type: string
                qualityRegime:
                  type: string
                  enum:
                    - IMBRO
                    - IMBRO_A
                registrationPeriod:
                  type: object
                  properties:
                    beginDate:
                      type: string
                    endDate:
                      type: string
                correctionPeriod:
                  type: object
                  properties:
                    beginDate:
                      type: string
                    endDate:
                      type: string
                underReview:
                  type: string
                  enum:
                    - JA
                    - NEE
                area:
                  type: object
                  properties:
                    enclosingCircle:
                      type: object
                      properties:
                        center:
                          type: object
                          properties:
                            lat:
                              type: number
                            lon:
                              type: number
                        radius:
                          type: number
                    boundingBox:
                      type: object
                      properties:
                        lowerCorner:
                          type: object
                          properties:
                            lat:
                              type: number
                            lon:
                              type: number
                        upperCorner:
                          type: object
                          properties:
                            lat:
                              type: number
                            lon:
                              type: number
                researchReportPeriod:
                  type: object
                  properties:
                    beginDate:
                      type: string
                    endDate:
                      type: string
                fieldworkPeriod:
                  type: object
                  properties:
                    beginDate:
                      type: string
                    endDate:
                      type: string
                depthInterval:
                  type: object
                  properties:
                    beginDepth:
                      type: number
                    endDepth:
                      type: number
                cptStandard:
                  type: string
                qualityClass:
                  type: array
                  items:
                    type: string
                dissipationTestPerformed:
                  type: string
                  enum:
                    - JA
                    - NEE
                parameters:
                  type: object
                  properties:
                    depth:
                      type: string
                      enum:
                        - JA
                        - NEE
                    elapsedTime:
                      type: string
                      enum:
                        - JA
                        - NEE
                    correctedConeResistance:
                      type: string
                      enum:
                        - JA
                        - NEE
                    netConeResistance:
                      type: string
                      enum:
                        - JA
                        - NEE
                    magneticFieldStrengthX:
                      type: string
                      enum:
                        - JA
                        - NEE
                    magneticFieldStrengthY:
                      type: string
                      enum:
                        - JA
                        - NEE
                    magneticFieldStrengthZ:
                      type: string
                      enum:
                        - JA
                        - NEE
                    magneticFieldStrengthTotal:
                      type: string
                      enum:
                        - JA
                        - NEE
                    electricalConductivity:
                      type: string
                      enum:
                        - JA
                        - NEE
                    inclinationEW:
                      type: string
                      enum:
                        - JA
                        - NEE
                    inclinationNS:
                      type: string
                      enum:
                        - JA
                        - NEE
                    inclinationX:
                      type: string
                      enum:
                        - JA
                        - NEE
                    inclinationY:
                      type: string
                      enum:
                        - JA
                        - NEE
                    inclinationResultant:
                      type: string
                      enum:
                        - JA
                        - NEE
                    magneticInclination:
                      type: string
                      enum:
                        - JA
                        - NEE
                    magneticDeclination:
                      type: string
                      enum:
                        - JA
                        - NEE
                    localFriction:
                      type: string
                      enum:
                        - JA
                        - NEE
                    poreRatio:
                      type: string
                      enum:
                        - JA
                        - NEE
                    temperature:
                      type: string
                      enum:
                        - JA
                        - NEE
                    porePressureU1:
                      type: string
                      enum:
                        - JA
                        - NEE
                    porePressureU2:
                      type: string
                      enum:
                        - JA
                        - NEE
                    porePressureU3:
                      type: string
                      enum:
                        - JA
                        - NEE
                    frictionRatio:
                      type: string
                      enum:
                        - JA
                        - NEE
                stopCriterion:
                  type: string
        required: true
      responses:
        '200':
          description: De set van CPT karakteristieken die matched met de criteria dan wel een afwijzing.
          headers:
            API-Version:
              description: Versie van deze CPT API
              schema:
                type: string
                examples:
                  - 3.2.1
          content:
            application/xml: {}
        '400':
          description: Er bevinden zich andere fouten in het CPT verzoek.
          headers:
            API-Version:
              description: Versie van deze CPT API
              schema:
                type: string
                examples:
                  - 3.2.1
          content:
            application/json:
              schema:
                type: object
                properties:
                  title:
                    type: string
                  description:
                    type: string
                  errorCode:
                    type: integer
                    format: int32
  /sr/cpt/v1/objects/{broId}:
    get:
      summary: Haalt een geotechnisch sondeeronderzoek (geotechnical survey, CPT) op op basis van een BRO-ID
      description: Haal een sondeeronderzoek op op basis van een BRO-ID. De operatie retourneert een object op basis van het BRO-ID als een 'O' (actuele situatie), of 'DO' (uit registratie) als IMBRO XML. De andere variant 'O-DP' is niet ondersteund omdat hier authenticatie / autorisatie voor nodig is (er worden bronhouder gevoelige gegevens terug gegeven). Gebruik hiervoor de 'DigiKoppeling' webservice.Zie [hier](https://www.bro-productomgeving.nl/bpo/latest/bodem-en-grondonderzoek/geotechnisch-sondeeronderzoek-cpt/koppelvlakbeschrijving-uitgifteservice-cpt) en [hier](https://www.bro-productomgeving.nl/bpo/latest/bodem-en-grondonderzoek/geotechnisch-sondeeronderzoek-cpt/uitgiftehandboek-cpt) voor meer info.
      operationId: objects
      parameters:
        - content:
            text/plain:
              schema:
                type: string
          description: Het BRO-ID van het CPT object.
          name: broId
          in: path
          required: true
        - description: Een optionele CPT referentie van de gebruiker. "-" wordt aangenomen bij afwezigheid.
          example: Mijn-CPT-object-aanvraag-000001
          name: requestReference
          in: query
          schema:
            type: string
      responses:
        '200':
          description: Het aangevraagde registratie object dan wel een afwijzing van het CPT verzoek.
          headers:
            API-Version:
              description: Versie van deze CPT API
              schema:
                type: string
                examples:
                  - 3.2.1
          content:
            application/xml: {}
        '400':
          description: Er bevinden zich andere fouten in het CPT verzoek.
          headers:
            API-Version:
              description: Versie van deze CPT API
              schema:
                type: string
                examples:
                  - 3.2.1
          content:
            application/json:
              schema:
                type: object
                properties:
                  title:
                    type: string
                  description:
                    type: string
                  errorCode:
                    type: integer
                    format: int32
info:
  title: Geotechnisch sondeeronderzoek (CPT)
  version: 1.197.2
  description: Landelijke Voorziening Basisregistratie Ondergrond (BRO), uitgifte en validatie Geotechnisch sondeeronderzoek (CPT).
  contact:
    name: BRO Servicedesk
    email: support@broservicedesk.nl
    url: https://basisregistratieondergrond.nl/service-contact/
