Schnittstelle Prozessanbieter (Handel)

Schnittstelle „Ermittlung anwender- individueller Auskünfte beim Unternehmen“

Rahmenbedingungen

Für die Schnittstelle gelten folgende Rahmenbedingungen:

  • Sicherung über die Nutzung von HTTPS.

  • Authentifizierung durch Übertragung eines am „SHK Connect Server“ hinterlegten Passworts.

  • Anfrage erfolgt als HTTP(S) Request mit Parametern.

  • Antwort erfolgt als HTTP(S) Response mit XML Dokument im Body.

Anfrage

Anfrageparameter:

Anfrageparameter

Beschreibung

Muss /Kann

Format

HTTP Parameter

SHK Connect Name

In SHK Connect hinterlegter Name zur Authentifizierung des SHK Connect Servers

Muss

STRING 50

name_shk_connect

SHK Connect Passwort

In SHK Connect hinterlegtes Passwort zur Authentifizierung des SHK Connect Servers

Muss

STRING 50

pw_shk_connect

Softwarename

In SHK Connect hinterlegter Name der Software

Muss

STRING 50

name_sw

Prozess

Gibt an, für welche Prozesse Informationen angefragt werden.

Nur der Code „STD“ für Stammdaten DATANORM ist erlaubt

Muss

Codeliste Prozesse

prozess

Kundennummer

Kundennummer des Anwenders beim angefragten Unternehmen

Kann

STRING 50

kndnr

Benutzername

Benutzername des Anwenders beim angefragten Unternehmen

Kann

STRING 50

name_kunde

Passwort

Passwort des Anwenders beim angefragten Unternehmen

Kann

STRING 50

pw_kunde

Standardtemplate zur Anfrage des SHK Connect Server zur Ermittlung Anwender-individueller Auskünfte:

<URL inklusive Serverpfad>

?name_shk_connect=<name_shk_connect>&pw_shk_connect=<pw_shk_connect>&prozess=<prozess>&name_sw=<name_sw>

&kndnr=<kndnr>&name_kunde=<name_kunde>&pw_kunde=<pw_kunde>

Antwort

Inhalte der Antwort

Dateninhalt

Beschreibung

Muss/Kann

Einfach/ Mehrfach

Format

Referenz XML

Linkliste

Unterstruktur zur Übertragung der Liste der Links für die bilaterale Kommunikation.

Muss

Einfach

-

LINKLISTE

Status

Struktur zur Abbildung des Fehlerhandlings.

Muss

Einfach

-

LINKLISTE / STATUS

Fehlercode

Übertragung des Fehlercodes.

Die einzelnen erlaubten Codes sind noch festzulegen.

Muss

Einfach

Codeliste Fehlercode

LINKLISTE / STATUS / CODE

Fehlermeldung

Fehlermeldung im Klartext.

Kann

Einfach

STRING 256

LINKLISTE / STATUS / MELDUNG

Link

Struktur zur Abbildung der einzelnen Links.

Kann

Mehrfach

-

LINKLISTE / LINK

Beschreibung

Beschreibung der Downloaddatei.

Muss

Einfach

STRING 80

LINKLISTE / LINK / BESCHREIBUNG

URL

URL zum Download der Datei.

Muss

Einfach

STRING 256

LINKLISTE / LINK / URL

Datum

Datum der Downloaddatei

im Format „TT.MM.JJJJ“.

Kann

Einfach

STRING 10

LINKLISTE / LINK / DATUM

Größe

Größe der Downloaddatei in Byte.

Kann

Einfach

INTEGER

LINKLISTE / LINK / GROESSE

Authentifizier-ungsmethode

Art der Authentifizierung bei Nutzung der URL.

Muss

Einfach

Codeliste

Authentifizierungs-methoden

LINKLISTE / LINK AUTHENTIFIZIERUNGSMETHODE

Datum der Daten

Datum der hinterlegten Daten im

Format „TT.MM.JJJJ“.

Muss

Einfach

STRING 10

LINKLISTE / LINK / DATENDATUM

Änderungs-informationen

Informationen, was sich an den Daten geändert hat.

Kann

Einfach

STRING 1000

LINKLISTE / LINK / AENDERUNGSINFO

Dateityp

Angabe, um was für eine Datei es sich handelt (PDF, DNM, usw.)

Kann

Einfach

STRING 50

LINKLISTE / LINK / DATEITYP

Dateiname Original

Angabe wie der originale Dateiname ist, auf den der Link verweist.

Kann

Einfach

STRING 50

LINKLISTE / LINK / DATEINAME_ORG

Beispielantwort:

<LINKLISTE>

<STATUS>

<CODE>0</CODE>

<MELDUNG>OK</MELDUNG>

</STATUS>

<LINK>

<BESCHREIBUNG>Preisliste 2009</BESCHREIBUNG>

<URL>HTTP://www.mustermannAG.de/datanorm.zip</URL>

<DATUM>01.01.2009</DATUM>

<GROESSE>10000</GROESSE>

<AUTHENTIFIZIERUNGSMETHODE>HTTPAUTH</AUTHENTIFIZIERUNGSMETHODE>

<DATENDATUM>01.01.2009</DATENDATUM>

<DATEITYP>ZIP</DATEITYP>

<DATEINAME_ORG>datanorm.zip</DATEINAME_ORG>

</LINK>

</LINKLISTE>

Codelisten

Prozesse

Code

Bedeutung

STD

Stammdaten DATANORM

Status

Code

Bedeutung

0

Es ist kein Fehler aufgetreten

4

Fehler bei der Authentifizierung des Anwenders beim Unternehmen

8

Authentifizierung von SHK Connect beim Unternehmen fehlgeschlagen

Authentifizierungsmethoden

Code

Bedeutung

URL

Die Authentifizierung erfolgt über die URL

HTTPAUTH

Die Authentifizierung erfolgt über Http Auth

KEINE

Es ist keine Authentifizierung erforderlich

COOKIE

Die Authentifizierung erfolgt über Cookies

HTTP Error-Codes

Code

Bedeutung

Erläuterung

400

Bad Request

Die Anfrage-Nachricht war fehlerhaft aufgebaut.

401

Unauthorized

Die Anfrage kann nicht ohne gültige Authentifizierung durchgeführt werden. Wie die Authentifizierung durchgeführt werden soll, wird im „WWW-Authenticate“-Header-Feld der Antwort übermittelt.

402

Payment Required

(reserviert)

403

Forbidden

Die Anfrage wurde mangels Berechtigung des Clients nicht durchgeführt. Diese Entscheidung wurde – anders als im Fall des Statuscodes 401 – unabhängig von Authentifizierungsinformationen getroffen, auch etwa wenn eine als HTTPS konfigurierte URL nur mit HTTP aufgerufen wurde.

404

Not Found

Die angeforderte Ressource wurde nicht gefunden. Dieser Statuscode kann ebenfalls verwendet werden, um eine Anfrage ohne näheren Grund abzuweisen. Links, welche auf solche Fehlerseiten verweisen, werden auch als „Tote Links“ bezeichnet.

405

Method Not Allowed

Die Anfrage darf nur mit anderen HTTP-Methoden (z. B. GET statt POST) gestellt werden. Gültige Methoden für die betreffende Ressource werden im „Allow“-Header-Feld der Antwort übermittelt.

406

Not Acceptable

Die angeforderte Ressource steht nicht in der gewünschten Form zur Verfügung. Gültige „Content-Type“-Werte können in der Antwort übermittelt werden.

407

Proxy Authentication Required

Analog zum Statuscode 401 ist hier zunächst eine Authentifizierung des Clients gegenüber dem verwendeten Proxy erforderlich. Wie die Authentifizierung durchgeführt werden soll, wird im „Proxy-Authenticate“-Header-Feld der Antwort übermittelt.

408

Request Time-out

Innerhalb der vom Server erlaubten Zeitspanne wurde keine vollständige Anfrage des Clients empfangen.

409

Conflict

Die Anfrage wurde unter falschen Annahmen gestellt. Im Falle einer PUT-Anfrage kann dies zum Beispiel auf eine zwischenzeitliche Veränderung der Ressource durch Dritte zurückgehen.

410

Gone

Die angeforderte Ressource wird nicht länger bereitgestellt und wurde dauerhaft entfernt.

411

Length Required

Die Anfrage kann ohne ein „Content-Length“-Header-Feld nicht bearbeitet werden.

412

Precondition Failed

Eine in der Anfrage übertragene Voraussetzung, zum Beispiel in Form eines „If-Match“-Header-Felds, traf nicht zu.

413

Request Entity Too Large

Die gestellte Anfrage war zu groß, um vom Server bearbeitet werden zu können. Ein „Retry-After“-Header-Feld in der Antwort kann den Client darauf hinweisen, dass die Anfrage eventuell zu einem späteren Zeitpunkt bearbeitet werden könnte.

414

Request-URI Too Long

Die URL der Anfrage war zu lang. Ursache ist oft eine Endlosschleife aus Redirects.

415

Unsupported Media Type

Der Inhalt der Anfrage wurde mit ungültigem oder nicht erlaubtem Medientyp übermittelt.

416

Requested range not satisfiable

Der angeforderte Teil einer Ressource war ungültig oder steht auf dem Server nicht zur Verfügung.

417

Expectation Failed

Verwendet im Zusammenhang mit einem „Expect“-Header-Feld. Das im „Expect“-Header-Feld geforderte Verhalten des Servers kann nicht erfüllt werden.

421

There are too many connections from your internet address

Wird verwendet, wenn die Verbindungshöchstzahl überschritten wird

422

Unprocessable Entity

Wird verwendet, wenn weder die Rückgabe von Statuscode 415 noch 400 gerechtfertigt wäre, eine Verarbeitung der Anfrage jedoch zum Beispiel wegen semantischer Fehler abgelehnt wird (RFC 4918).

423

Locked

Die angeforderte Ressource ist zur Zeit gesperrt (RFC 4918).

424

Failed Dependency

Die Anfrage konnte nicht durchgeführt werden, weil sie das Gelingen einer vorherigen Anfrage voraussetzt (RFC 4918).

425

Unordered Collection

In den Entwürfen von WebDav Advanced Collections definiert, aber nicht im "Web Distributed Authoring and Versioning (WebDAV) Ordered Collections Protocol" (RFC 3648).

426

Upgrade Required

Der Client sollte auf Transport Layer Security (TLS/1.0) umschalten (RFC 2817).

500

Internal Server Error

Dies ist ein „Sammel-Statuscode“ für unerwartete Serverfehler.

501

Not Implemented

Die Funktionalität, um die Anfrage zu bearbeiten, wird von diesem Server nicht bereitgestellt. Ursache ist zum Beispiel eine unbekannte oder nicht unterstützte HTTP-Methode.

502

Bad Gateway

Der Server konnte seine Funktion als Gateway oder Proxy nicht erfüllen, weil er seinerseits eine ungültige Antwort erhalten hat.

503

Service Unavailable

Der Server steht, zum Beispiel wegen Überlast oder Wartungsarbeiten, zur Zeit nicht zur Verfügung. Ein „Retry-After“-Header-Feld in der Antwort kann den Client auf einen Zeitpunkt hinweisen, zu dem die Anfrage eventuell bearbeitet werden könnte.

504

Gateway Time-out

Der Server konnte seine Funktion als Gateway oder Proxy nicht erfüllen, weil er innerhalb einer festgelegten Zeitspanne keine Antwort von seinerseits benutzten Servern oder Diensten erhalten hat.

505

HTTP Version not supported

Die benutzte HTTP-Version (gemeint ist die Zahl vor dem Komma) wird vom Server nicht unterstützt oder abgelehnt.

506

Variant Also Negotiates

(RFC 2295)

507

Insufficient Storage

Die Anfrage konnte nicht bearbeitet werden, weil der Speicherplatz des Servers dazu zur Zeit nicht mehr ausreicht (RFC 4918).

509

Bandwidth Limit Exceeded

Die Anfrage wurde verworfen, weil sonst die verfügbare Bandbreite überschritten werden würde (inoffizielle Erweiterung einiger Server).

510

Not Extended

Die Anfrage enthält nicht alle Informationen, die die angefragte Server-Extension zwingend erwartet (RFC 2774).