Zum Inhalt

zurück zur Übersicht

Neuen Datensatz erstellen

Es wird ein neuer Datensatz erstellt. Dabei werden auch Collections, Styling, Kontakte, Quelldatenbankverbindungen, Layer und Schnittstellen sowie deren configs erzeugt. Der Modus ist in Bearbeitung (dev).

Für den Datensatzimport wird die Konfiguration in der UDP-Manager Konfiguration des Datensatzimport vorausgesetzt.

URL : /backend/pushDataset

Methode : POST

Content-Type: application/json

Datenschema

Es wird ein neuer Datensatz angelegt wenn noch kein Datensatz mit dem shortTitle vorhanden ist. Andernfalls wird der vorhandene Datensatz und seine zugehörigen Elemente überschrieben. Der shortTitle entspricht außerdem dem Schema in der Datenbank. Das Attribute description wird als Datensatzname verwendet. Für jedes Objekt innerhalb von sources wird eine Collection angelegt. Innerhalb der source entsprichte layerName dem Tabellennamen in der Datenbank.

{
  "hmdkId": "[String]",
  "shortTitle": "[String]",
  "description": "[String]",
  "dataProducingUnit": "[String]",
  "projectName": "[String]",
  "visualizationParameter": "[String]",
  "specializedContact": [
    {
      "name": "[String]",
      "surname": "[String]",
      "mailAddress": "[String]"
    }
  ],
  "technicalContact": [
    {
      "name": "[String]",
      "surname": "[String]",
      "mailAddress": "[String]"
    }
  ],
  "creatorOfOrderContact": {
    "name": "[String]",
    "surname": "[String]",
    "mailAddress": "[String]"
  },
  "sources": [
    {
      "layerName": "[String]",
      "layerTitle": "[String]",
      "layerDescription": "[String]",
      "formatType": "[String]",
      "spreadsheetSource": {
        "file": "[String]"
      }
    },
    {
      "layerName": "[String]",
      "layerTitle": "[String]",
      "layerDescription": "[String]",
      "formatType": "[String]",
      "spatialDatabaseSource": {
        "dbPlatform": "[String]",
        "instanceServer": "[String]",
        "instancePort": "[String]",
        "username": "[String]",
        "password": "[String]",
        "database": "[String]",
        "dbSchema": "[String]",
        "table": "[String]"
      }
    }
  ]
}

Beispieldaten simple

{
  "shortTitle": "public",
  "description": "Auftrag Public",
  "sources": [
    {
      "layerName": "table_1",
      "layerTitle": "La-1",
      "layerDescription": "Layer 1"
    },
    {
      "layerName": "table_2",
      "layerTitle": "La-2",
      "layerDescription": "Layer 2"
    }
  ]
}

Beispieldaten komplex

{
  "hmdkId": "B6A59A2B-2D40-4676-9094-0EB73039ED34",
  "shortTitle": "public",
  "description": "Auftrag Public",
  "dataProducingUnit": "Landesamt für elektronische Datenverarbeitung",
  "projectName": "Projekt 47",
  "visualizationParameter": "additional_info - Allgemeine Information im Dataset",
  "specializedContact": [
    {
      "name": "Lisa",
      "surname": "Beutlin",
      "mailAddress": "alpha@hobbingen.de"
    },
    {
      "name": "Clara",
      "surname": "Beutlin",
      "mailAddress": "beta@hobbingen.de"
    }
  ],
  "technicalContact": [
    {
      "name": "Annkathrin",
      "surname": "Beutlin",
      "mailAddress": "gamma@hobbingen.de"
    }
  ],
  "creatorOfOrderContact": {
    "name": "Frodo",
    "surname": "Beutlin",
    "mailAddress": "Frodo@hobbingen.de"
  },
  "sources": [
    {
      "layerName": "table_1",
      "layerTitle": "La-1",
      "layerDescription": "Layer 1",
      "formatType": "spreadsheet",
      "spreadsheetSource": {
        "file": "layer.xlsx"
      }
    },
    {
      "id": 97,
      "layerName": "table_2",
      "layerTitle": "La-2",
      "layerDescription": "Layer 2",
      "formatType": "spatialDatabase",
      "spatialDatabaseSource": {
        "dbPlatform": "SQL Server",
        "instanceServer": "test-server",
        "instancePort": "55046",
        "username": "user1",
        "password": "123456",
        "database": "FDHP01",
        "dbSchema": "l2",
        "table": "FeatureClass"
      }
    }
  ]
}

Antwort bei Erfolg

Code : 200 OK

Rückgabe Beispiel

{
    "dataset": {
        "status": "success",
        "id": 1
    },
    "collections": [
        {
            "status": "success",
            "id": 1,
            "attributes": {
                "status": "success"
            }
        },
        {
            "status": "success",
            "id": 2,
            "attributes": {
                "status": "success"
            }
        }
    ],
    "services": [
        {
            "status": "success",
            "id": 1,
            "type": "WMS",
            "software": "deegree",
            "endpointName": "wms_public",
            "url": "https://myURL/wms_public",
            "previewUrl": "https://myURL/UDPPreview?Map/layerids=1,2,4"
        },
        {
            "status": "success",
            "id": 2,
            "type": "WFS",
            "software": "deegree",
            "endpointName": "wfs_public",
            "url": "https://myURL/wfs_public",
            "previewUrl": "https://myURL/wfs_public?SERVICE=WFS&REQUEST=GetCapabilities"
        },
        {
            "status": "success",
            "id": 3,
            "type": "OAF",
            "software": "ldproxy",
            "endpointName": "public",
            "url": "https://myURL/public",
            "previewUrl": "https://myURL/public"
        }
    ],
    "layers": [
        {
            "status": "success",
            "id": 2
        },
        {
            "status": "success",
            "id": 3
        },
        {
            "status": "success",
            "id": 4
        },
        {
            "status": "success",
            "id": 5
        },
        {
            "status": "success",
            "id": 6
        },
        {
            "status": "success",
            "id": 7
        }
    ],
    "apiConfigs": {
        "newStatus": "in Bearbeitung",
        "services": {
            "28": {
                "status": "success",
                "configsEdited": false
            },
            "29": {
                "status": "success",
                "configsEdited": false
            },
            "30": {
                "status": "success",
                "configsEdited": false
            }
        }
    },
    "restartWorkspaces": []
}