Geo-Zone Tool
API-Dokumentation

Geo-Zone Tool Public API

Eine GraphQL-API, die strukturelle Lastzonen-Daten, geografische Eigenschaften und PDF-Berichte für beliebige Koordinaten weltweit liefert.

7 Abfragen1 SubscriptionAPI-Schlüssel
POSThttps://api-gateway.dlubal.com/geo-zone/pub/graphql

Webanwendung

Das GeoZone Tool ist auch als interaktive Webanwendung verfügbar unter dlubal.com. Wählen Sie einen beliebigen Standort auf der Karte, um sofort alle strukturellen Lastzonenwerte anzuzeigen.

GeoZone-Webanwendung
GeoZone-Webanwendung

Client-SDKs (Python und C#)

Offizielle Client-Bibliotheken sind für Python und .NET verfügbar. Beide Pakete kapseln die GeoZone-Tool-GraphQL-API und liefern typisierte Modelle für Anfragen und Antworten.

Python (PyPI)

Paket: dlubal.api.geo-zone-tool. Importpfad im Code: from dlubal.api import geo_zone_tool.

bash
pip install dlubal.api.geo-zone-tool>=0.1.0

C# (.NET / NuGet)

Paket: Dlubal.API.GeoZoneTool. Der Client stellt asynchrone Methoden für API-Abfragen und PDF-Subscription-Fortschritt bereit.

bash
dotnet add package Dlubal.API.GeoZoneTool

# or in a .csproj file
<PackageReference Include="Dlubal.API.GeoZoneTool" Version="1.0.16" />

Authentifizierung

Die meisten Abfragen erfordern einen API-Schlüssel, der als Bearer-Token im Authorization-Header übergeben wird. Verwenden Sie Ihren DLUBAL_AK_TOKEN als Token-Wert:

Authorization:Bearer DLUBAL_AK_TOKEN

Mit Öffentlich gekennzeichnete Abfragen erfordern keine Authentifizierung. Alle anderen verbrauchen ein API-Guthaben pro Anfrage.

Der API-Zugriff ist pro Konto begrenzt, um Serverkosten zu verwalten. Kostenlose Konten erhalten eine begrenzte Anzahl an Abfragen ohne Berechnung. Im Dlubal-Webshop sind kostenpflichtige Pakete mit 500 oder 5.000 Abfragen erhältlich.

API-Schlüssel erhalten oder Paket verwaltenAbfragepaket kaufen

Lastzonen-Kennwerte

AbfrageAPI-Schlüssel erforderlich

Akzeptiert einen Freitext address und optionale Filter — type, standard, annex und layerId — um die Ergebnisse auf einen bestimmten Zonentyp oder Länderanhang einzuschränken. Gibt aufgelöste Adressdetails, den übereinstimmenden Zonenwert und eine geordnete Liste von Tragwerkslastmerkmalen zurück, gruppiert nach Norm und Anhang.

Das Feld code kann OK, COUNTRY_CHANGED (der Server hat automatisch einen geeigneteren Standard gewählt), ANNEX_CHANGED oder ERROR sein.

Schneelastzonen
Schneelastzonen
Windlastzonen
Windlastzonen
Erdbebengebiete
Erdbebengebiete
graphql
query {
  getLoadZoneCharacteristics(
    input: {
      address: "Berlin, Germany"
      type: SNOW
      standard: "EN 1991-1-3"
      annex: "DIN EN 1991-1-3"
      layerId: 1
    }
    language: DE
  ) {
    code
    message
    geoLocation {
      latitude longitude altitude
      street zip city state country countryCode
    }
    characteristics {
      standard
      annex
      zoneCharacteristics {
        id
        zone { value }
        characteristics {
          name calculatedValue
          nameHtml unitsHtml description
          decimalPlaces sequence
        }
      }
    }
    noLiability
  }
}

Geostandorte

AbfrageÖffentlich

Geocoding-Suche – wandelt eine Freitext-address in Koordinatenergebnisse um. Akzeptiert optional sortCountryCode zur Priorisierung der Ergebnisse für ein bestimmtes Land. Keine Authentifizierung erforderlich. Gibt bis zu 10 gerankte Ergebnisse mit street, city, state, country, postalCode und Dezimalkoordinaten zurück.

FeldTypBeschreibung
addressString!Free-text address or place name
sortCountryCodeStringISO country code — results from this country are ranked first
languageLanguageEnumResponse language (default EN)
Adresssuche
Adresssuche
graphql
query {
  getGeoLocations(
    address: "Berlin, Germany"
    sortCountryCode: "DE"
    language: DE
  ) {
    latitude longitude altitude
    displayName street zip city state country countryCode
  }
}

Lastzonen-Screenshot

AbfrageAPI-Schlüssel erforderlich

Erstellt einen Kartenausschnitt zentriert auf latitude und longitude als base64-kodiertes PNG oder JPEG. Nützlich für die Einbettung von Zonenkarten in Berichte oder Dashboards.

graphql
query {
  getLoadZoneScreenshot(
    input: {
      address: "Berlin, Germany"
      type: SNOW
      standard: "EN 1991-1-3"
      annex: "DIN EN 1991-1-3"
      layerId: 1
      zoom: 8
      screenshotType: { type: PNG quality: 90 }
    }
    language: DE
  )
}

Lastzonen-Normen

AbfrageÖffentlich

Gibt die vollständige Hierarchie der Lastzontypen, Normen, nationalen Anhänge und Schichten zurück, die für einen bestimmten Ländercode verfügbar sind. Verwenden Sie dies, um Auswahlfelder zu befüllen oder gültige Kombinationen aus Norm, Anhang und Schicht zu ermitteln.

graphql
query {
  getLoadZoneStandards(
    countryCode: "DE"
    language: DE
  ) {
    name
    standards {
      name
      annexes {
        name
        actual
        layers { id name }
      }
    }
  }
}

Verfügbare Lastzonen

AbfrageÖffentlich

Gibt eine kompakte Liste von Lastzonen gruppiert nach Typ zurück – ideal zum Ermitteln gültiger loadZoneId / layerId-Paare.

graphql
query {
  findLoadzones(
    countryCode: "DE"
    language: DE
  ) {
    country
    countryCode
    typeGroups {
      name
      loadzones {
        standard annex loadzoneId
        layers { id name }
      }
    }
  }
}

Benutzerdaten

AbfrageAPI-Schlüssel erforderlich

Gibt die email, das Guthaben und die verbleibende clicks-Anzahl des authentifizierten Benutzers für den aktuellen Abrechnungszeitraum zurück.

graphql
query {
  getUserData {
    email
    clicks
  }
}

ASCE 7-22 Erdbebendaten

AbfrageÖffentlich

Leitet Anfragen an die USGS Seismic Design Web Services weiter (https://earthquake.usgs.gov/ws/designmaps/asce7-22.html). Gibt ASCE 7-22 seismische Bemessungskartenparameter für einen gegebenen Breiten-/Längengrad, eine Risikoklasse und eine Standortklasse zurück. Enthält spektrale Beschleunigungswerte (Ss, S1, SDS, SD1), Bemessungsspektren und die Erdbebenbemessungskategorie (SDC).

graphql
query {
  getAsce722(
    latitude: "34.05"
    longitude: "-118.25"
    riskCategory: II
    siteClass: DEFAULT
  ) {
    code
    message
    referenceDocument
    geoLocation {
      latitude longitude altitude
      street zip city state country countryCode
    }
    data {
      ss s1 sds sd1 sdc
      pgam sms sm1 ts t0 tl cv
      multiPeriodDesignSpectrum { periods ordinates }
      twoPeriodDesignSpectrum   { periods ordinates }
      metadata { modelVersion vs30 }
    }
  }
}

PDF-Berichtsfortschritt

SubscriptionAPI-Schlüssel erforderlich

Erstellt einen vollständigen Lastzonen-PDF-Bericht über eine WebSocket-Verbindung (GraphQL-Subscriptions via graphql-ws). Der Server streamt Fortschrittsmeldungen; die letzte Nachricht enthält das base64-kodierte PDF und einen vorgeschlagenen Dateinamen.

WebSocket-Endpunkt: wss://api-gateway.dlubal.com/geo-zone/pub/graphql

graphql
subscription {
  getPdf(
    pdfInput: {
      address: "Berlin, Germany"
      standard: "EN 1991-1-3"
      annex: "DIN EN 1991-1-3"
      layerId: 1
    }
    language: DE
  ) {
    currentStep
    steps
    message
    pdfResult { pdf name }
  }
}

Enumerationen

LanguageEnum

WertSprache
ENEnglish
DEGerman
FRFrench
ITItalian
ESSpanish
PTPortuguese
PLPolish
CSCzech
RURussian
ZHChinese

LoadzoneTypeEnum

WertBeschreibung
SNOWSnow load zones (EN 1991-1-3)
WINDWind load zones (EN 1991-1-4)
EARTHQUAKESeismic zones (EN 1998)
TORNADOTornado zones (US only)

RiskCategoryEnum

WertBeschreibung
ILow hazard (agricultural, minor storage)
IIStandard occupancy (default for most buildings)
IIISubstantial hazard (schools, jails, high occupancy)
IVEssential facilities (hospitals, emergency services)

SiteClassEnum

WertBeschreibung
DEFAULTSite class determined from USGS data
AHard rock (Vs30 > 1500 m/s)
BRock (760–1500 m/s)
BCVery dense soil / soft rock (530–760 m/s)
CVery dense soil (360–530 m/s)
CDStiff soil (270–360 m/s)
DStiff clay (180–270 m/s)
DESoft clay (100–180 m/s)
ESoft clay soil (Vs30 < 100 m/s)

ScreenshotTypeEnum

WertBeschreibung
PNGLossless PNG image
JPEGCompressed JPEG image

Eingabetypen

CharacteristicsInput

FeldTypBeschreibung
addressString!Free-text address or place name
typeLoadzoneTypeEnumZone type filter (SNOW, WIND, EARTHQUAKE, TORNADO)
standardStringStandard name filter
annexStringAnnex / national annex filter
layerIdIntLayer ID within the standard

GetLoadzoneScreenshotPublicInput

FeldTypBeschreibung
addressString!Free-text address or place name
typeLoadzoneTypeEnumZone type filter
standardStringStandard name filter
annexStringAnnex filter
layerIdIntLayer ID
zoomIntMap zoom level (default 5)
mapStringMap tile style
layerOrderIntLayer rendering order
screenshotTypeScreenshotTypeInputImage format and quality

ScreenshotTypeInput

FeldTypBeschreibung
typeScreenshotTypeEnum!PNG or JPEG (default PNG)
qualityInt!JPEG quality 0–100 (default 90)

GetLoadzonePdfInput

FeldTypBeschreibung
addressString!Free-text address or place name
standardStringStandard name filter
annexStringAnnex filter
layerIdIntLayer ID

Ausgabetypen

CharacteristicsResponseMiaType

FeldTypBeschreibung
codeString!Response status code
messageStringHuman-readable message when code ≠ OK
geoLocationGeofinderDataTypeResolved location data
characteristics[CharacteristicsLoadzoneType2]Per-standard zone results
noLiabilityStringDisclaimer text

CharacteristicsLoadzoneType2

FeldTypBeschreibung
standardString!Standard name
annexString!Annex name
zoneCharacteristicsCharacteristicsLayerType2!Layer result

CharacteristicsLayerType2

FeldTypBeschreibung
idInt!Layer ID
zoneCharacteristicsZoneType2!Matched zone value
characteristics[CharacteristicsVariableType]!Ordered load values

CharacteristicsVariableType

FeldTypBeschreibung
nameString!Parameter name (plain text)
nameHtmlString!Parameter name (HTML)
calculatedValueStringComputed value
unitsHtmlString!Units (HTML)
descriptionString!Parameter description
decimalPlacesInt!Display precision
sequenceInt!Display order

GeofinderDataType

FeldTypBeschreibung
latitudeString!Resolved latitude
longitudeString!Resolved longitude
altitudeString!Elevation
streetStringStreet name and number
zipStringPostal code
cityStringCity / municipality
stateStringState or region
countryStringCountry name
countryCodeStringISO country code

GeoLocationType

FeldTypBeschreibung
latitudeString!Latitude
longitudeString!Longitude
altitudeString!Elevation
displayNameStringFull formatted address
streetStringStreet name and number
zipStringPostal code
cityStringCity / municipality
stateStringState or region
countryStringCountry name
countryCodeStringISO country code

UserDataType

FeldTypBeschreibung
emailString!Account email address
clicksInt!Remaining API calls this billing period

LoadzoneGroupShortType

FeldTypBeschreibung
countryString!Country name
countryCodeString!ISO country code
typeGroups[LoadzoneTypeGroupType]!Zones grouped by type

LoadzoneShortType

FeldTypBeschreibung
standardString!Standard name
annexString!Annex name
loadzoneIdString!Unique load zone identifier
layers[LoadzoneLayerShortType]!Available layers

Asce722ResponseType

FeldTypBeschreibung
codeString!Response status code
messageStringError or informational message
referenceDocumentStringUSGS reference document URL
dataAsce722DataTypeSeismic design parameters

Asce722DataType

FeldTypBeschreibung
ssFloatMapped MCEr spectral acceleration, short period
s1FloatMapped MCEr spectral acceleration, 1-second period
smsFloatSite-adjusted MCEr, short period
sm1FloatSite-adjusted MCEr, 1-second period
sdsFloatDesign spectral acceleration, short period
sd1FloatDesign spectral acceleration, 1-second period
pgamFloatSite-adjusted MCEr peak ground acceleration
sdcStringSeismic design category (A–F)
tsFloatTs = SD1 / SDS
t0FloatT0 = 0.2 × Ts
tlFloatLong-period transition period
cvFloatVertical seismic coefficient
twoPeriodDesignSpectrumSpectrumTypeTwo-period design response spectrum
twoPeriodMcErSpectrumSpectrumTypeTwo-period MCEr response spectrum
multiPeriodDesignSpectrumSpectrumTypeMulti-period design response spectrum
multiPeriodMcErSpectrumSpectrumTypeMulti-period MCEr response spectrum
verticalDesignSpectrumSpectrumTypeVertical design response spectrum
verticalMcErSpectrumSpectrumTypeVertical MCEr response spectrum

SpectrumType

FeldTypBeschreibung
periods[Float!]!Period values in seconds
ordinates[Float!]!Spectral acceleration values (g)
warningStringOptional data quality warning

PdfProgressType

FeldTypBeschreibung
currentStepInt!Steps completed
stepsInt!Total steps
messageString!Status message
pdfResultPdfResultTypePresent on final message only

PdfResultType

FeldTypBeschreibung
pdfString!Base64-encoded PDF
nameString!Suggested filename