Skip to content

Articles (OFML) ​

/api/ofml.dll/ofml

OFML covers all information about the commercial data and metadata of an article.


/articles — Load article ​

GET

Loads a commercial OCD article with its metadata. Used for the initial load after catalog navigation.

GET /api/ofml.dll/ofml/articles?token={TOKEN}&manufacturer={MANU}&program={PROG}&basearticlenumber={ARTNR}&lang=de

Parameters ​

ParameterRequiredDescription
tokenRequiredAuthentication
manufacturerRequiredManufacturer code, as returned by /getnodes
programRequiredSeries code, as returned by /getnodes
basearticlenumberRequiredBase article number
langOptionalLanguage
langaltOptionalAlternative language
currencyOptionalCurrency
showpriceOptionaltrue: prices are included
varcodeOptionalVariant code
ocdreinitstringOptionalReinit string for a configured article

Response ​

JSON object of a complete article:

Top level ​

FieldDescription
idArticle identifier (for reconfiguration)
rootidRoot ID of the topmost parent article (in meta planning)
manufacturerManufacturer abbreviation
programSeries abbreviation
basearticlenumberBase article number
typenameInternal name of the meta type
reinitMeta reinit string
childrenSub-articles grouped by property: entries { propname, value, childarticles }; the articles themselves are in childarticles
propclassesMeta properties
metamessagesMessages from the meta context

ocd (commercial data) ​

FieldDescription
idInternal commercial ID
finalarticlenumberResolved article number (including code scheme)
priceArticle price
currencyCurrency
pricecomponentsIndividual price components
shorttextCommercial short text
longtextCommercial long text
varianttextProperties with their current value
reinitstringCommercial reinit string
convertdateConversion date
articlewithpriceDoes the article have a price?
propclassesProperty classes with properties and values
usermessagesUser message from the OCD context
obligatory2cTrue if at least one property is optional but must still be given a value
Debug fields
FieldDescription
dumpVariant code of the article (used e.g. in the OCI export)
debugreinitstringReinit string for troubleshooting; don't use it for integrations
debugiscommercialvalidNot implemented
debugisvisiblepropertieswithvalueNot implemented

ocd.propclasses — Property classes ​

FieldDescription
nameInternal name
textDisplay text
propertiesArray of properties

ocd.propclasses.properties — Properties ​

FieldDescription
nameInternal name
textDisplay text
proptypeC = alphanumeric, N/L = numeric
currentvalueCurrent value
enabledEditable?
visibleVisible?
obligatoryRequired property?
obligatory2cTrue if the property is optional (obligatory=false) but must still be given a value; the article is invalid as long as at least one property with obligatory2c=true has no value
addvaluesTrue if additional values can be added
propclassnameName of the property class that contains the property
digitsNumber of digits
decdigitsDecimal places
propertyvaluesAvailable values
rangesValue ranges (for numeric properties)

propertyvalues — Property values ​

FieldDescription
valuefromActual value
textDisplay text
previewimagePath of the preview image (relative to /api/ocd.dll/, see Preview images)
previewimagelargePath of the large preview image (relative to /api/ocd.dll/)

ranges — Value ranges ​

FieldDescription
valuefromLower bound (optional; if omitted, the interval is open)
opfromGT = greater than, GE = greater than or equal
valuetoUpper bound (optional)
optoLT = less than, LE = less than or equal
rasterStep size (e.g. 0.2)

Example ​

Show full response
json
{
  "typename": "",
  "id": "{A4A000D2-D647-49C0-B9D1-2661DB5B8C86}",
  "rootid": "{A4A000D2-D647-49C0-B9D1-2661DB5B8C86}",
  "manufacturer": "_dx",
  "program": "webti",
  "basearticlenumber": "27R0614Q",
  "reinit": "",
  "propclasses": [],
  "children": [],
  "ocd": {
    "id": "{5DA01879-ED51-47FC-A073-2199F95FE50B}",
    "finalarticlenumber": "27 R 06 14 KL Q",
    "price": 540,
    "currency": "EUR",
    "pricecomponents": [],
    "shorttext": "Rechtecktisch, Tiefe 600 mm, Breite 1400 mm",
    "longtext": "Rechtecktisch\\nTiefe: 600 mm\\nBreite: 1400 mm\\nQuadratisches Vierfuß-Gestell",
    "varianttext": "Höhe: 720 mm - 1160 mm\\nPlattenfarbe: Buche\\nKantenfarbe: Buche\\nGestellfarbe: Anthrazit\\nKabeldurchlass: Links + Rechts\\n",
    "reinitstring": "eJytkUEOgkAMRf9ZOIDRxLghLhhBII6IAy504_1v4Wtl75CYJp3On__baZt0w2aVipwnTvM159v9VS3RBNYpqVGvALtfkI1GdBXIzNuAf4IcVcAtMtSVHsQJxO4ztwGF6WOWvgWbvHbETHfP0gW4O-21xX6zZ9iHTG7nv7hk_v_MBBJYA2tcOujYQNQLJDAP4zWrc12I_5XLZmy5JuLKd5yTofbN9LAG347lWFf3myFHZd0Gr1LTZfLdlvoAe9lltw::",
    "convertdate": "2018-04-20",
    "propclasses": [
      {
        "name": "SONSTIGE",
        "text": "Sonstige",
        "properties": [
          {
            "name": "H",
            "text": "Höhe",
            "proptype": "C",
            "currentvalue": "KL",
            "enabled": true,
            "visible": true,
            "obligatory": true,
            "propertyvalues": [
              { "valuefrom": "F", "text": "740 mm - fest" },
              { "valuefrom": "KL", "text": "720 mm - 1160 mm" }
            ]
          },
          {
            "name": "FARBE_PL",
            "text": "Plattenfarbe",
            "proptype": "C",
            "currentvalue": "HOLZ_BUCHE",
            "propertyvalues": [
              { "valuefrom": "HOLZ_BUCHE", "text": "Buche", "previewimage": "ocd/preview/_dx/basics/holz_buche.jpg" },
              { "valuefrom": "HOLZ_EICHE", "text": "Eiche", "previewimage": "ocd/preview/_dx/basics/holz_eiche.jpg" },
              { "valuefrom": "HOLZ_NUSSB", "text": "Nussbaum", "previewimage": "ocd/preview/_dx/basics/holz_nussb.jpg" }
            ]
          }
        ]
      }
    ],
    "articlewithprice": true,
    "usermessages": ""
  }
}

/articles — Change article ​

POST

Changes an OCD article (changes a property/value).

POST /api/ofml.dll/ofml/articles?token={TOKEN}&manufacturer={MANU}&program={PROG}&basearticlenumber={ARTNR}&ocdreinitstring={REINIT}&lang=de&langalt=en&currency=EUR&showprice=true

lang, langalt, currency and showprice work as in GET /articles.

Request body ​

json
{
  "id": "{000-0000-0-0-00-0000}",
  "rootid": "{000-0000-0-0-00-0000}",
  "proptype": "ocd",
  "propclass": "PROPERTY_CLASS",
  "prop": "MERKMALSNAME",
  "newvalue": "NEWVALUE",
  "jsondata": "{...}"
}
FieldRequiredDescription
idRequiredArticle identifier
rootidRequiredTopmost article of the meta planning
proptypeRequiredocd = commercial, meta = meta property
propclassRequiredName of the property class
propRequiredName of the property
newvalueRequiredNew value (valuefrom)
jsondataRequiredComplete JSON of the topmost article

Response ​

Same format as GET /articles — contains the updated article with a new reinitstring.


Preview images ​

GET

The previewimage and previewimagelarge fields of a property value contain a path. The image URL is built like this:

GET /api/ocd.dll/{previewimage}?token={TOKEN}

Example: /api/ocd.dll/ocd/preview/_dx/basics/holz_buche.jpg?token={TOKEN}

3D office WebKatalog 2.5 — ub.unitel GmbH