Allgemeines

Nach Möglichkeit sollte immer ein JSON-Objekt im Response Body übergeben werden. Er darf nur dann errors  enthalten, wenn auch tatsächlich Fehler aufgetreten sind. Ein Error enthält mindestens eine message , kann aber mit weiteren Daten angereichert werden.
In message  sollte immer eine möglichst genaue Klartext-Message enthalten sein, idealerweise lokalisiert. Für die Lokalisierung wird das locale aus dem Request benutzt. Wie strikt diese Forderung durchgesetzt werden kann, wird sich zeigen. Aktuell kann es trotz Lokalsierung dazu kommen, dass nur eine englische Message verfügbar ist, die dann ersatzweise ausgegeben wird.
Die HTTP-Statuscodes werden entsprechend ihrer Bedeutung im HTTP-Protokoll benutzt, z.B. 404 für Objekt nicht gefunden, 401 und 403 für nicht authorisiert oder 500, wenn eine Exception aufgetreten ist.

Start Update

Request

GET ygor/enrichment/processGokbPackage 

Parameter

pkgId = <Gokb Package ID>
updateToken = <key to authenticate the update> 

Response

HTTP Status: 200|403|404|500

body:
{
   status : <"STARTED">,
   message : <message>,
   jobId : <ygorJobId>
}

Status von Ygor Enrichment erfragen

Request

GET ygor/enrichment/getStatus 

Parameter

JobId = <ygorJobId> 

Response

HTTP Status: 200 

{
  status : <"SUCCESS"|"PREPARATION">,
  gokbJobId : <gokbJobId|null>
}

Starte ein xRefPackage mit den gelieferten JSON-Daten

Request

POST gokb/integration/crossReferencePackage/<id> 

Parameter

async = true|false
addOnly = true|false
updateToken = <key to authenticate the update> fullsync = true|false

{
  
packageHeader : {
    nominalProvider : <nominalProviderJSON>,
    
name : <package.name>,
    nominalPlatform : {
      name : <platform.name>,
     
primaryUrl : <platform.url>
    
},
    
curatoryGroups : [ <curatoryGroup.name> ],
    identifiers : [ ]
  },
  tipps : [ <tippJson> ],
  updateToken : <updateToken>
}


Response


status: 200|400|401|500

body:
{
  result: <"ERROR","SUCCESS">,
  message: <localizedMessage>,
  pkgId : <package.id>,
  uuid : <package.uuid>,
  name : <package.name>,
  errors: {
    tipps: [
      {
        idx: <index>,
        field: {

          message: <localizedMessage>,
          baddata: <field_value>
                 }
      },
             ...
    ],
    global: [
      {
        code: 500|400,
        message : <localizedMessage>,
        data : <packageHeaderJson>
      }
    ]
  },
  job_id: <GokbJobId>,
  job: {
    id: <GokbJobId>,
    description: "Package CrossRef (<packageHeader.name>)",
    type: "Package",
    linkedItem: {
      name: <package.name>,
      type: "Package",
      id: <package.id>,
      uuid: <package.uuid
    },
    
startTime: <startTime>,
    endTime: <endTime>
  }
}

  • Keine Stichwörter