Objecten

Types

Toon de objecttypes van de winkel en hun propertydefinities.

Bekijk als Markdown

Objecttypes zijn de schemahelft van de Objecten-module. Haal ze op om te leren welke contenttypes er voor de winkel bestaan en welke vorm hun records hebben. Zie de Objecten-conceptpagina voor de volledige referentie van propertytypes, inclusief publiceren, adressen en gelokaliseerde waarden.

GET /v1/api/objects/types

Toont alle objecttypes met hun actieve (niet-gearchiveerde) propertydefinities, gesorteerd op typenaam. De lijst is niet gepagineerd; de response is een kale data-array. Vereist de scope objects:read.

Geen parameters.

Request
curl https://api.borkol.com/v1/api/objects/types \
  -H "Authorization: Bearer {api_key}"
Request (JS)
const res = await fetch("https://api.borkol.com/v1/api/objects/types", {
  headers: { Authorization: `Bearer ${apiKey}` },
});
const { data: types } = await res.json();

Status: 200 OK. Elk type bevat:

VeldTypeBeschrijving
namestringEnkelvoudige weergavenaam.
plural_namestringMeervoudige weergavenaam.
keystringUnieke slug. Gebruik die in GET /v1/api/objects/types/{key}/records.
settingsobject{publishable, slug?}. publishable is true wanneer records van dit type concepten zijn tot ze worden gepubliceerd; slug ({source, prefixes}) is alleen aanwezig wanneer records adressen hebben. Zie de Objecten-conceptpagina.
propertiesarrayActieve propertydefinities, elk {key, label, type, options, localized, config, is_required, position}. Gearchiveerde properties worden weggelaten. localized zegt dat de waarde een map per taal is; config bevat de repeatervelden of de toegestane recordtypes voor verwijzingssoorten, en is anders null.
Response
{
  "data": [
    {
      "name": "FAQ",
      "plural_name": "FAQs",
      "key": "faq",
      "settings": {
        "publishable": true,
        "slug": {
          "source": "name",
          "prefixes": { "en": "/faq", "nl": "/veelgestelde-vragen" }
        }
      },
      "properties": [
        {
          "key": "name",
          "label": "Name",
          "type": "text",
          "options": null,
          "localized": true,
          "config": null,
          "is_required": true,
          "position": 0
        },
        {
          "key": "answer",
          "label": "Answer",
          "type": "textarea",
          "options": null,
          "localized": true,
          "config": null,
          "is_required": true,
          "position": 1
        },
        {
          "key": "category",
          "label": "Category",
          "type": "select",
          "options": ["shipping", "returns", "payment"],
          "localized": false,
          "config": null,
          "is_required": false,
          "position": 2
        },
        {
          "key": "steps",
          "label": "Steps",
          "type": "repeater",
          "options": null,
          "localized": false,
          "config": {
            "fields": [
              { "key": "text", "label": "Text", "kind": "text", "required": true, "localized": true, "config": {} }
            ],
            "item_label_field": "text"
          },
          "is_required": false,
          "position": 3
        }
      ]
    }
  ]
}

Fouten

  • 403 {"error":"Module not enabled: objects"} wanneer de Objecten-module is uitgeschakeld.
  • 403 {"message":"Invalid ability provided."} wanneer de API-key de scope objects:read mist.