publiq · Schema

CardSystemMembership

Membership info of an individual passholder in a specific card system.

CompanyCultureEventsLeisureBelgiumNon-ProfitOpen DataLoyalty Programs

Properties

Name Type Description
cardSystem object
uitpasNumber string This is a convenience propery that contains the uitpasNumber of the `currentCard` if there is a current card and that card is `ACTIVE`.
currentCard object
status string Whether the membership is active or blocked.
socialTariff object If the passholder has (or had) right to a social tariff, this object contains details like the end date. Check the `status` of the `socialTariff`: the passholder is only currently entitled to a social
View JSON Schema on GitHub

JSON Schema

publiq-card-system-membership-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/publiq/main/json-schema/publiq-card-system-membership-schema.json",
  "title": "CardSystemMembership",
  "description": "Membership info of an individual passholder in a specific card system.",
  "x-generated": "2026-10-09",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/publiq-uitpas-openapi.yml#/components/schemas/CardSystemMembership",
  "type": "object",
  "x-tags": [
    "Models"
  ],
  "properties": {
    "cardSystem": {
      "$ref": "#/$defs/CardSystem"
    },
    "uitpasNumber": {
      "type": "string",
      "description": "This is a convenience propery that contains the uitpasNumber of the `currentCard` if there is a current card and that card is `ACTIVE`."
    },
    "currentCard": {
      "$ref": "#/$defs/CardSystemMembershipCard"
    },
    "status": {
      "type": "string",
      "enum": [
        "ACTIVE",
        "BLOCKED"
      ],
      "description": "Whether the membership is active or blocked.",
      "readOnly": true
    },
    "socialTariff": {
      "type": "object",
      "description": "If the passholder has (or had) right to a social tariff, this object contains details like the  end date. Check the `status` of the `socialTariff`: the passholder is only currently entitled to a social tariff is `status` is `ACTIVE`. ",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "ACTIVE",
            "EXPIRED",
            "SUSPENDED"
          ],
          "description": "Status of the social tariff:\n- `ACTIVE`: the passholder is entitled to social tariff\n- `EXPIRED`: the passholder is NOT entitled to social tariff anymore\n- `SUSPENDED`: the passholder is temporarily NOT entitled to social tariff. In this case a extra property `suspendedUntilDate` will also be available."
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "description": "Exact moment the passholder's right to a social tariff expires."
        },
        "inGracePeriod": {
          "type": "boolean",
          "description": "When the end date of the right to a social tariff has passed, the passholder may still be in a grace period that they can buy tickets at a social tariff until their right to a social tariff has been renewed."
        },
        "suspendedUntilDate": {
          "type": "string",
          "format": "date-time",
          "description": "Date until this social tarif is suspended (only available when status is `SUSPENDED`)"
        },
        "expired": {
          "type": "boolean",
          "description": "If true, the passholder's right to a social tariff has completely expired (the end date has passed and the passholder is no longer in a grace period). **This property is deprecated.** Please use the `status` property instead.",
          "deprecated": true
        }
      },
      "required": [
        "status",
        "endDate"
      ]
    }
  },
  "required": [
    "cardSystem"
  ],
  "$defs": {
    "CardSystem": {
      "title": "CardSystem",
      "description": "A region, usually one or multiple municipalities in Belgium, that uses UiTPAS and provides discounts and/or rewards. For example \"Paspartoe\" (Brussels), UiTPAS Leuven, UiTPAS Hasselt, UiTPAS Gent, and so on.",
      "type": "object",
      "x-tags": [
        "Models"
      ],
      "properties": {
        "id": {
          "type": "integer",
          "description": "ID of the card system"
        },
        "name": {
          "type": "string",
          "description": "Name of the card system. This field is always available in responses."
        },
        "branding": {
          "type": "object",
          "description": "Branding information of the card system",
          "properties": {
            "logo": {
              "type": "string",
              "description": "URL to the logo of the card system"
            },
            "primaryColor": {
              "type": "string",
              "description": "Color code of the primary branding color."
            },
            "secondaryColor": {
              "type": "string",
              "description": "Color code of the secondary branding color."
            }
          }
        },
        "links": {
          "type": "object",
          "description": "Links of the card system",
          "properties": {
            "website": {
              "type": "string",
              "description": "URL of the website of the card system"
            }
          }
        },
        "cities": {
          "type": "array",
          "description": "List of cities that are part of this card system",
          "items": {
            "$ref": "#/$defs/City"
          }
        },
        "permanent": {
          "type": "boolean",
          "description": "Indicates whether this is a permanent card system"
        },
        "allowsCardlessRegistration": {
          "type": "boolean",
          "description": "Indicates if cardless registration is enabled"
        },
        "cardlessRegistrationType": {
          "type": "string",
          "description": "Indicates the types of online cardless registrations this cardsystem supports.",
          "enum": [
            "ALL",
            "REGULAR",
            "SOCIALTARIFF",
            "NONE"
          ]
        },
        "socialTariffInfo": {
          "type": "string",
          "description": "Optional information about social tariff entitlement in this card system."
        }
      },
      "required": [
        "id"
      ]
    },
    "CardSystemMembershipCard": {
      "title": "CardSystemMembershipCard",
      "x-stoplight": {
        "id": "c61r94oays9ih"
      },
      "type": "object",
      "description": "Representation of an UiTPAS card embedded in a CardSystemMembership.",
      "properties": {
        "uitpasNumber": {
          "type": "string",
          "x-stoplight": {
            "id": "wt5795os9zlly"
          },
          "description": "UiTPAS number of this card."
        },
        "cardType": {
          "type": "string",
          "x-stoplight": {
            "id": "0wg00e7ok83tp"
          },
          "enum": [
            "NFC_CARD",
            "DIGITAL"
          ],
          "description": "Type of this card."
        },
        "status": {
          "type": "string",
          "x-stoplight": {
            "id": "ic0htdaaq5wmr"
          },
          "description": "Status of this card.",
          "enum": [
            "ACTIVE",
            "BLOCKED",
            "DELETED"
          ]
        }
      },
      "required": [
        "uitpasNumber",
        "status"
      ]
    },
    "City": {
      "title": "City",
      "type": "object",
      "x-tags": [
        "Models"
      ],
      "properties": {
        "postalCode": {
          "type": "string",
          "description": "Postalcode of the city"
        },
        "name": {
          "type": "string",
          "description": "Name of the city"
        }
      },
      "required": [
        "postalCode",
        "name"
      ]
    }
  }
}

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/publiq-card-system-membership"
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.