SHAPTH
Use Case
laboratoryList · laboratoryById

Zugelassene Untersuchungsstellen abrufen

Das folgende Beispiel zeigt den GraphQL-Abruf zugelassener Untersuchungsstellen. Die Abfrage eignet sich für API-Anbindungen, wenn Stammdaten zugelassener Untersuchungsstellen, Zulassungsinformationen oder verfügbare Untersuchungsparameter referenziert werden sollen.

Berechtigunglaboratory:view
Endpoint
POST
/api/graphql/service

Weitere Informationen zu Basis-URLs und Umgebungen stehen im Kapitel Endpunkte.

Playground(nur GraphQL)

Welche Abfrage wann?

AbfrageZweckEingabeRückgabe
laboratoryListMehrere Untersuchungsstellen abrufen, zum Beispiel für Auswahllisten oder Stammdatenabgleiche.input: LaboratoryListInput. In diesem Beispiel wird nur pagination verwendet.Liste unter items und Gesamtzahl unter total.
laboratoryByIdEine einzelne Untersuchungsstelle anhand ihrer id abrufen.id: ID!.Ein LaboratoryDetails-Objekt.

laboratoryList

laboratoryList eignet sich für Übersichten und Trefferlisten. Allgemeine Listenfunktionen wie Pagination, Suche, Filterung und Sortierung werden zentral im Kapitel GraphQL-Variablen und Listenabfragen beschrieben.

Objektstruktur und Felder

Die folgende Feldliste dokumentiert die Rückgabefelder aus dem Beispiel unter data.laboratoryList.items.

FeldDetails
input
SchemaNullable
TypLaboratoryListInput
Optionale Eingabe für die Listenabfrage. Das generische Muster mit `pagination`, `search`, `filter` und `sort` ist im allgemeinen GraphQL-Kapitel beschrieben.
total
SchemaNon-null
TypInt!
Gesamtzahl der zur Abfrage passenden Untersuchungsstellen.
items
SchemaNon-null
Typ[LaboratoryItem!]!
Liste der gefundenen Untersuchungsstellen.
items
r
SchemaNon-null
TypID!
Technische Referenz-ID der Untersuchungsstelle.
id
SchemaNon-null
TypID!
Eindeutige ID der Untersuchungsstelle. Diese ID wird für `laboratoryById` verwendet.
name
SchemaNullable
TypString
Name der Untersuchungsstelle.
active
SchemaNon-null
TypBoolean!
Gibt an, ob der Registereintrag aktiv ist.
editable
SchemaNullable
TypBoolean
Gibt an, ob der Eintrag durch den angebundenen Akteur bearbeitet werden kann.
parent
SchemaNullable
TypLaboratoryParentItem
Hauptstandort der Untersuchungsstelle, falls es sich um einen Nebenstandort handelt.
items.parent
r
SchemaNullable
TypID
Technische Referenz-ID des Hauptstandorts.
id
SchemaNullable
TypID
ID des Hauptstandorts.
name
SchemaNullable
TypString
Name des Hauptstandorts.
items
paramsValue
SchemaNullable
TypString
In Klärung.
paramsVersion
SchemaNullable
TypInt
Version der Parameterkonfiguration.
accreditation
SchemaNullable
TypString
Akkreditierungs- oder Zulassungsinformation.
flags
SchemaNon-null
TypLaboratoryFlags!
Leistungs- und Akkreditierungsmerkmale der Untersuchungsstelle.
items.flags
officiallyApproved
SchemaNon-null
TypBoolean!
Kennzeichnet, ob die Untersuchungsstelle offiziell zugelassen ist.
accredPhPhChChTests
SchemaNon-null
TypBoolean!
Akkreditierung für physikalische, physikalisch-chemische und chemische Untersuchungen.
accredPhPhChChSample
SchemaNon-null
TypBoolean!
Akkreditierung für physikalische, physikalisch-chemische und chemische Probennahmen.
microbiologicalTests
SchemaNon-null
TypBoolean!
Mikrobiologische Untersuchungen.
microbiologicalSample
SchemaNon-null
TypBoolean!
Mikrobiologische Probennahme.
radionuclidesTests
SchemaNon-null
TypBoolean!
Untersuchungen auf Radionuklide.
radionuclidesSample
SchemaNon-null
TypBoolean!
Probennahme für Radionuklid-Untersuchungen.
onSiteParameterTests
SchemaNon-null
TypBoolean!
Untersuchungen von Vor-Ort-Parametern.
onSiteParameterSample
SchemaNon-null
TypBoolean!
Probennahme für Vor-Ort-Parameter.
otherTests
SchemaNon-null
TypBoolean!
Weitere Untersuchungsbereiche.
testAreasAdditionalInformation
SchemaNullable
TypString
Ergänzende Angaben zu Untersuchungsbereichen.
supplementaryInformation
SchemaNullable
TypString
Weitere Zusatzinformationen zur Untersuchungsstelle.
items
address
SchemaNon-null
TypAddress!
Adresse der Untersuchungsstelle.
items.address
text
SchemaNullable
TypString
Formatierte Adresse als Text.
street
SchemaNullable
TypString
Straße.
house
SchemaNullable
TypString
Hausnummer.
zip
SchemaNullable
TypString
Postleitzahl.
place
SchemaNullable
TypString
Ort.
additional
SchemaNullable
TypString
Adresszusatz.
state
SchemaNullable
TypString
Bundesland oder Staat.
items
contact
SchemaNon-null
TypContact!
Kontaktinformationen.
items.contact
mailbox
SchemaNullable
TypString
Funktionspostfach.
email
SchemaNullable
Typ[String!]
E-Mail-Adressen.
phone
SchemaNullable
Typ[String!]
Telefonnummern.
website
SchemaNullable
Typ[String!]
Webseiten.
items
branches
SchemaNon-null
TypInt!
Anzahl der Niederlassungen.
readRights
SchemaNullable
TypBoolean
Gibt an, ob Leserechte auf den Eintrag bestehen.
query LaboratoryList($input: LaboratoryListInput) {
laboratoryList(input: $input) {
  total
  items {
    r
    id
    name
    active
    editable
    parent { r id name }
    paramsValue
    paramsVersion
    accreditation
    flags {
      officiallyApproved
      accredPhPhChChTests
      accredPhPhChChSample
      microbiologicalTests
      microbiologicalSample
      radionuclidesTests
      radionuclidesSample
      onSiteParameterTests
      onSiteParameterSample
      otherTests
      testAreasAdditionalInformation
      supplementaryInformation
    }
    address { text street house zip place additional state }
    contact { mailbox email phone website }
    branches
    readRights
  }
}
}
{
"input": {
  "pagination": {
    "page": 0,
    "limit": 10
  }
}
}
{
"data": {
  "laboratoryList": {
    "total": 1,
    "items": [
      {
        "r": "R092901B140EF8707000",
        "id": "D-PL-99999-99-08BY2",
        "name": "Muster Labor",
        "active": true,
        "editable": false,
        "parent": null,
        "paramsValue": "<In Klärung>",
        "paramsVersion": 1,
        "accreditation": "D-PL-99999-99",
        "flags": {
          "officiallyApproved": true,
          "accredPhPhChChTests": true,
          "accredPhPhChChSample": true,
          "microbiologicalTests": true,
          "microbiologicalSample": true,
          "radionuclidesTests": false,
          "radionuclidesSample": false,
          "onSiteParameterTests": true,
          "onSiteParameterSample": true,
          "otherTests": false,
          "testAreasAdditionalInformation": null,
          "supplementaryInformation": null
        },
        "address": {
          "text": "Musterstraße 1, 00000 Musterstadt",
          "street": "Musterstraße",
          "house": "1",
          "zip": "00000",
          "place": "Musterstadt",
          "additional": "",
          "state": "DE"
        },
        "contact": {
          "mailbox": "info@example-labor.org",
          "email": ["info@example-labor.org"],
          "phone": ["+49 89 987654"],
          "website": ["https://example-labor.org"]
        },
        "branches": 0,
        "readRights": true
      }
    ]
  }
}
}

laboratoryById

laboratoryById wird verwendet, wenn die ID einer Untersuchungsstelle bereits bekannt ist. Die ID stammt typischerweise aus laboratoryList.items.id.

Parameter

FeldDetails
id
SchemaNon-null
TypID!
Eindeutige ID der Untersuchungsstelle.
query LaboratoryById($id: ID!) {
laboratoryById(id: $id) {
  r
  id
  name
  active
  editable
  parent { r id name }
  paramsValue
  paramsVersion
  accreditation
  flags {
    officiallyApproved
    accredPhPhChChTests
    accredPhPhChChSample
    microbiologicalTests
    microbiologicalSample
    radionuclidesTests
    radionuclidesSample
    onSiteParameterTests
    onSiteParameterSample
    otherTests
    testAreasAdditionalInformation
    supplementaryInformation
  }
  address { text street house zip place additional state }
  contact { mailbox email phone website }
  branches
  readRights
  accreditationDocuments { id filename mimeType size }
}
}
{
"id": "<DUMMY-SHAPTH-ID>"
}
{
"data": {
  "laboratoryById": {
    "r": "T09B1A5A55292000",
    "id": "D-PL-99999-99-08BY2",
    "name": "Muster Labor",
    "active": true,
    "editable": null,
    "parent": null,
    "paramsValue": "<In Klärung>",
    "paramsVersion": 1,
    "accreditation": "D-PL-99999-99",
    "flags": {
      "officiallyApproved": false,
      "accredPhPhChChTests": false,
      "accredPhPhChChSample": false,
      "microbiologicalTests": false,
      "microbiologicalSample": false,
      "radionuclidesTests": false,
      "radionuclidesSample": false,
      "onSiteParameterTests": false,
      "onSiteParameterSample": false,
      "otherTests": false,
      "testAreasAdditionalInformation": "",
      "supplementaryInformation": null
    },
    "address": {
      "text": "Musterstraße 1, 00000 Musterstadt",
      "street": "Musterstraße",
      "house": "1",
      "zip": "00000",
      "place": "Musterstadt",
      "additional": "",
      "state": "DE"
    },
    "contact": {
      "mailbox": "",
      "email": [],
      "phone": [],
      "website": []
    },
    "branches": 1,
    "readRights": null,
    "accreditationDocuments": []
  }
}
}

GraphQL-Enums

EnumWerteEinsatz
LaboratorySearchFieldID, NAME, ADDRESSSuchfelder für input.search.fields.
LaboratorySortFieldID, NAME, ADDRESS, STREET, HOUSE, ZIP, PLACE, CREATED_AT, CREATED_BY, UPDATED_AT, UPDATED_BY, BRANCHESSortierfelder für input.sort.by.
SortOrderASC, DESCSortierreihenfolge für input.sort.order.

On this page