Open Education API · Schema

Organization

A description of a group of people working together to achieve a goal

CompanyEducationHigher EducationOpen StandardsInteroperabilitySpecificationsNetherlands

Properties

Name Type Description
organizationId string Unique id of this organization
primaryCode object The primary human readable identifier for the organization. This is often the source identifier as defined by the institution.
organizationType object
name array The name of the organization
shortName string Short name of the organization
description array Any general description of the organization should clearly mention the type of higher education organization, especially in the case of a binary system. In Dutch; universiteit (university) or hogescho
addresses array Addresses of this organization
link string URL of the organization's website
logo string Logo of this organization
otherCodes array An array of additional human readable codes/identifiers for the entity being described.
parent object The organizational unit which is the parent of this organization. [`expandable`](#tag/organization_model) By default only the `organizationId` (a string) is returned. If the client requested an expans
children array All the organizational units for which this organization is the parent. [`expandable`](#tag/organization_model) By default only the `organizationId` (a string) is returned. If the client requested an
consumers array The additional consumer elements that can be provided, see the [documentation on support for specific consumers](https://openonderwijsapi.nl/v5/#/technical/consumers-and-profiles/) for more informatio
ext object
View JSON Schema on GitHub

JSON Schema

open-education-api-organization-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/open-education-api/main/json-schema/open-education-api-organization-schema.json",
  "title": "Organization",
  "description": "A description of a group of people working together to achieve a goal",
  "x-generated": "2026-10-09",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/open-education-api-v5-openapi.yml#/components/schemas/Organization",
  "type": "object",
  "required": [
    "organizationId",
    "organizationType",
    "name",
    "shortName",
    "primaryCode"
  ],
  "properties": {
    "organizationId": {
      "type": "string",
      "description": "Unique id of this organization",
      "format": "uuid",
      "readOnly": true
    },
    "primaryCode": {
      "description": "The primary human readable identifier for the organization. This is often the source identifier as defined by the institution.",
      "$ref": "#/$defs/IdentifierEntry",
      "readOnly": true
    },
    "organizationType": {
      "$ref": "#/$defs/organizationType"
    },
    "name": {
      "type": "array",
      "description": "The name of the organization",
      "minItems": 1,
      "items": {
        "$ref": "#/$defs/LanguageTypedString"
      }
    },
    "shortName": {
      "type": "string",
      "description": "Short name of the organization",
      "maxLength": 256
    },
    "description": {
      "type": "array",
      "description": "Any general description of the organization should clearly mention the type of higher education organization, especially in the case of a binary system. In Dutch; universiteit (university) or hogeschool (university of applied sciences).",
      "minItems": 1,
      "items": {
        "$ref": "#/$defs/LanguageTypedString"
      }
    },
    "addresses": {
      "type": "array",
      "description": "Addresses of this organization",
      "items": {
        "$ref": "#/$defs/Address"
      }
    },
    "link": {
      "type": "string",
      "description": "URL of the organization's website",
      "format": "uri",
      "maxLength": 2048
    },
    "logo": {
      "type": "string",
      "description": "Logo of this organization",
      "format": "uri",
      "maxLength": 2048
    },
    "otherCodes": {
      "type": "array",
      "description": "An array of additional human readable codes/identifiers for the entity being described.",
      "minItems": 1,
      "items": {
        "$ref": "#/$defs/IdentifierEntry"
      }
    },
    "parent": {
      "description": "The organizational unit which is the parent of this organization. [`expandable`](#tag/organization_model)\nBy default only the `organizationId` (a string) is returned. If the client requested an expansion of `organization` the full organization object should be returned.\n",
      "oneOf": [
        {
          "$ref": "#/$defs/Identifier",
          "title": "organizationId"
        },
        {
          "$ref": "#/$defs/Organization",
          "title": "Organization object"
        }
      ]
    },
    "children": {
      "type": "array",
      "description": "All the organizational units for which this organization is the parent. [`expandable`](#tag/organization_model)\nBy default only the `organizationId` (a string) is returned. If the client requested an expansion of `organization` the full organization object should be returned.\n",
      "items": {
        "oneOf": [
          {
            "$ref": "#/$defs/Identifier",
            "title": "organizationId"
          },
          {
            "$ref": "#/$defs/Organization",
            "title": "Organization object"
          }
        ]
      }
    },
    "consumers": {
      "description": "The additional consumer elements that can be provided, see the [documentation on support for specific consumers](https://openonderwijsapi.nl/v5/#/technical/consumers-and-profiles/) for more information about this mechanism.",
      "type": "array",
      "items": {
        "$ref": "#/$defs/Consumer"
      }
    },
    "ext": {
      "$ref": "#/$defs/Ext"
    }
  },
  "$defs": {
    "Address": {
      "type": "object",
      "description": "The full street address",
      "required": [
        "addressType"
      ],
      "properties": {
        "addressType": {
          "$ref": "#/$defs/addressType"
        },
        "street": {
          "type": "string",
          "description": "The street name"
        },
        "streetNumber": {
          "type": "string",
          "description": "The street number"
        },
        "additional": {
          "type": "array",
          "description": "Further details like building name, suite, apartment number, etc.",
          "minItems": 1,
          "items": {
            "$ref": "#/$defs/LanguageTypedString"
          }
        },
        "postalCode": {
          "type": "string",
          "description": "Postal code"
        },
        "city": {
          "type": "string",
          "description": "name of the city / locality"
        },
        "countryCode": {
          "type": "string",
          "description": "the country code according to [iso-3166-1-alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)"
        },
        "geolocation": {
          "type": "object",
          "description": "Geolocation of the entrance of this address (WGS84 coordinate reference system)",
          "required": [
            "latitude",
            "longitude"
          ],
          "properties": {
            "latitude": {
              "type": "number",
              "format": "double"
            },
            "longitude": {
              "type": "number",
              "format": "double"
            }
          }
        },
        "ext": {
          "$ref": "#/$defs/Ext"
        }
      }
    },
    "Consumer": {
      "type": "object",
      "description": "Object for communicating data to a specific consumer (destination). This object has no relationship with the `consumer` query parameter.",
      "required": [
        "consumerKey"
      ],
      "properties": {
        "consumerKey": {
          "description": "The key of the consumer (destination) for which this information is intended. See the [consumer registry](https://openonderwijsapi.nl/v5/#/technical/consumers-and-profiles/) for more information.",
          "type": "string"
        }
      },
      "additionalProperties": true
    },
    "Ext": {
      "type": "object",
      "description": "Object for additional non-standard attributes"
    },
    "Identifier": {
      "type": "string",
      "description": "An identifier of another resource.",
      "format": "uuid"
    },
    "IdentifierEntry": {
      "type": "object",
      "properties": {
        "codeType": {
          "$ref": "#/$defs/codeType"
        },
        "code": {
          "description": "Human readable value for the code/identifier",
          "type": "string"
        }
      },
      "required": [
        "codeType",
        "code"
      ],
      "additionalProperties": false
    },
    "LanguageTypedString": {
      "type": "object",
      "description": "A String with an associated language code.",
      "properties": {
        "language": {
          "description": "The language used in the described entity. A string formatted according to RFC3066.",
          "type": "string",
          "pattern": "^[a-z]{2,4}(-[A-Z][a-z]{3})?(-([A-Z]{2}|[0-9]{3}))?$"
        },
        "value": {
          "description": "String to describe the entity.",
          "type": "string"
        }
      }
    },
    "Organization": {
      "type": "object",
      "description": "A description of a group of people working together to achieve a goal",
      "required": [
        "organizationId",
        "organizationType",
        "name",
        "shortName",
        "primaryCode"
      ],
      "properties": {
        "organizationId": {
          "type": "string",
          "description": "Unique id of this organization",
          "format": "uuid",
          "readOnly": true
        },
        "primaryCode": {
          "description": "The primary human readable identifier for the organization. This is often the source identifier as defined by the institution.",
          "$ref": "#/$defs/IdentifierEntry",
          "readOnly": true
        },
        "organizationType": {
          "$ref": "#/$defs/organizationType"
        },
        "name": {
          "type": "array",
          "description": "The name of the organization",
          "minItems": 1,
          "items": {
            "$ref": "#/$defs/LanguageTypedString"
          }
        },
        "shortName": {
          "type": "string",
          "description": "Short name of the organization",
          "maxLength": 256
        },
        "description": {
          "type": "array",
          "description": "Any general description of the organization should clearly mention the type of higher education organization, especially in the case of a binary system. In Dutch; universiteit (university) or hogeschool (university of applied sciences).",
          "minItems": 1,
          "items": {
            "$ref": "#/$defs/LanguageTypedString"
          }
        },
        "addresses": {
          "type": "array",
          "description": "Addresses of this organization",
          "items": {
            "$ref": "#/$defs/Address"
          }
        },
        "link": {
          "type": "string",
          "description": "URL of the organization's website",
          "format": "uri",
          "maxLength": 2048
        },
        "logo": {
          "type": "string",
          "description": "Logo of this organization",
          "format": "uri",
          "maxLength": 2048
        },
        "otherCodes": {
          "type": "array",
          "description": "An array of additional human readable codes/identifiers for the entity being described.",
          "minItems": 1,
          "items": {
            "$ref": "#/$defs/IdentifierEntry"
          }
        },
        "parent": {
          "description": "The organizational unit which is the parent of this organization. [`expandable`](#tag/organization_model)\nBy default only the `organizationId` (a string) is returned. If the client requested an expansion of `organization` the full organization object should be returned.\n",
          "oneOf": [
            {
              "$ref": "#/$defs/Identifier",
              "title": "organizationId"
            },
            {
              "$ref": "#/$defs/Organization",
              "title": "Organization object"
            }
          ]
        },
        "children": {
          "type": "array",
          "description": "All the organizational units for which this organization is the parent. [`expandable`](#tag/organization_model)\nBy default only the `organizationId` (a string) is returned. If the client requested an expansion of `organization` the full organization object should be returned.\n",
          "items": {
            "oneOf": [
              {
                "$ref": "#/$defs/Identifier",
                "title": "organizationId"
              },
              {
                "$ref": "#/$defs/Organization",
                "title": "Organization object"
              }
            ]
          }
        },
        "consumers": {
          "description": "The additional consumer elements that can be provided, see the [documentation on support for specific consumers](https://openonderwijsapi.nl/v5/#/technical/consumers-and-profiles/) for more information about this mechanism.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/Consumer"
          }
        },
        "ext": {
          "$ref": "#/$defs/Ext"
        }
      }
    },
    "addressType": {
      "type": "string",
      "description": "Address type\n- postal: post\n- visit: bezoek\n- deliveries: bezorg\n- billing: factuur\n- teaching: the address where education takes place\n",
      "enum": [
        "postal",
        "visit",
        "deliveries",
        "billing",
        "teaching"
      ]
    },
    "codeType": {
      "type": "string",
      "description": "The code/identifier type. \n\nThis is an *extensible enumeration*. Use `x-` to prefix custom values\n\nThe predefined values are:\n  - `brin`: The registration number for a Dutch educational institution that is issued by the Dutch Ministry of Education, Culture and Science\n  - `crohoCreboCode`: programs with a CREBO and CROHO number are accredited by the Dutch Ministry of Education, Culture and Science (OCW)\n  - `programCode`: Identifier for the program (collection of courses)\n  - `componentCode`: The code for a component (part of a course)\n  - `offeringCode`: The code to identify a specific offering (program, course or component offering)\n  - `organizationId`: The identifier for the organization\n  - `buildingId`: The number or code to identify a building\n  - `bagId`: The identification of a building as it is known in the Dutch Building Administration (BAG)\n  - `roomCode`: The code for a room\n  - `systemId`: Identifier assigned to an entity in context of a specific system\n  - `productId`: Identifier assigned to a specific product\n  - `nationalIdentityNumber`: Identifier assigned by the governement of the person. e.g. a social security number in the USA\n  - `studentNumber`: Identifier for the student\n  - `studielinkNumber`: Identifier for the person as determined by Studielink\n  - `esi`: European Student Identifier\n  - `userName`: The name of a user\n  - `accountId`: Identifier assigned to a specific account\n  - `emailAdress`: An email address\n  - `groupCode`: The identifier for a group (of persons)\n  - `isbn`: International Standard Book Number that serve as product identifiers for Books\n  - `issn`: International Standard Book Number that serve as product identifiers for periodicals\n  - `orcId`: Open Researcher and Contributor ID\n  - `uuid`: A universally unique identifier\n  - `schacHome`: Home organization using the domain name of the organization\n  - `identifier`: Generic Identifier\n",
      "x-ooapi-extensible-enum": [
        "brin",
        "crohoCreboCode",
        "programCode",
        "componentCode",
        "offeringCode",
        "organizationId",
        "buildingId",
        "bagId",
        "roomCode",
        "systemId",
        "productId",
        "nationalIdentityNumber",
        "studentNumber",
        "studielinkNumber",
        "esi",
        "userName",
        "accountId",
        "emailAdress",
        "groupCode",
        "isbn",
        "issn",
        "orcId",
        "uuid",
        "schacHome",
        "identifier"
      ]
    },
    "organizationType": {
      "type": "string",
      "description": "The type of this organization. Each OOAPI endpoint should have a single organization with type `root`, describing the root organization.\n- root: the root of this organization, representing the Educational Institution itself\n- institute: instituut\n- department: departement\n- faculty: faculteit\n- branch: vestiging\n- academy: academie\n- school: school\n",
      "enum": [
        "root",
        "institute",
        "department",
        "faculty",
        "branch",
        "academy",
        "school"
      ]
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/open-education-api-organization"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.