{
    "title": "List connections reply v1",
    "description": "List all broadband connections. Supports pagination, sorting and filtering.",
    "$schema": "http://json-schema.org/draft-04/schema#",
    "id": "https://api.nextpertise.nl/schemas/broadband/list_connections_reply_v1.json",
    "type": "object",
    "properties": {
        "connections": {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {
                    "sla": {
                        "type": "object",
                        "properties": {
                            "order_date": {
                                "title": "Date",
                                "description": "Date in international format YYYY-MM-DD",
                                "type": [
                                    "string",
                                    "null",
                                    "one of"
                                ],
                                "pattern": "^[1-9][0-9]{3}-[01][0-9]-[0-3][0-9]$"
                            },
                            "product": {
                                "title": "Generic Broadband SLA Product",
                                "type": "object",
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "supplier": {
                                        "type": "string"
                                    },
                                    "product_id": {
                                        "type": "integer"
                                    },
                                    "description": {
                                        "type": "string"
                                    }
                                },
                                "additionalProperties": false,
                                "required": [
                                    "name",
                                    "supplier",
                                    "product_id",
                                    "description"
                                ]
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "order_date",
                            "product"
                        ]
                    },
                    "active": {
                        "type": "boolean"
                    },
                    "address": {
                        "title": "Extended address",
                        "description": "A complete address with province, municipality, latitude and longitude.",
                        "allOf": [
                            {
                                "title": "Location",
                                "description": "Defines a location through zipcode/housenr combination.",
                                "type": "object",
                                "properties": {
                                    "zipcode": {
                                        "title": "Zipcode",
                                        "description": "The zipcode must conform to the Dutch postcode format. Note that the initial digit is not allowed to be '0' unless when testing.",
                                        "type": "string",
                                        "pattern": "^[0-9]{4}[A-Z]{2}$"
                                    },
                                    "housenr": {
                                        "title": "House number",
                                        "description": "The house number that with the zipcode identifies an address.",
                                        "type": "number",
                                        "maximum": 99999
                                    },
                                    "housenrext": {
                                        "title": "Extended house number",
                                        "description": "House number suffix.",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "maxLength": 10
                                    }
                                },
                                "required": [
                                    "housenr",
                                    "zipcode"
                                ]
                            },
                            {
                                "title": "Extended location",
                                "description": "Extends a location with street and city references.",
                                "type": "object",
                                "properties": {
                                    "street": {
                                        "description": "The street name.",
                                        "title": "Optional string",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "city": {
                                        "description": "The city name.",
                                        "title": "Optional string",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    }
                                },
                                "required": [
                                    "street",
                                    "city"
                                ]
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "province": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "municipality": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "latitude": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "longitude": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    }
                                },
                                "required": [
                                    "province",
                                    "municipality",
                                    "latitude",
                                    "longitude"
                                ]
                            }
                        ],
                        "type": "all of"
                    },
                    "carrier": {
                        "type": "object",
                        "properties": {
                            "nid": {
                                "title": "Broadband NID",
                                "description": "Carrier or circuit identification. To harmonize the way ordered broadband products are identified.",
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "pattern": "^[0-9]{4}[A-Z]{2}[0-9]{5}[0-9A-Z]{4}$"
                            },
                            "tags": {
                                "type": "array",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "product": {
                                "title": "Generic Broadband Carrier Product",
                                "type": "object",
                                "properties": {
                                    "area": {
                                        "title": "Optional string",
                                        "description": "A string or no value at all.",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "upload": {
                                        "title": "Optional integer",
                                        "description": "An integer or no value at all.",
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "nlstype": {
                                        "title": "Optional string",
                                        "description": "A string or no value at all.",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "maxnls": {
                                        "title": "Optional integer",
                                        "description": "An integer or no value at all.",
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "distance": {
                                        "title": "Optional string",
                                        "description": "A string or no value at all.",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "download": {
                                        "title": "Optional integer",
                                        "description": "An integer or no value at all.",
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "supplier": {
                                        "type": "string"
                                    },
                                    "network": {
                                        "type": "string"
                                    },
                                    "product_id": {
                                        "type": "integer"
                                    },
                                    "test_label": {
                                        "type": [
                                            "boolean",
                                            "null"
                                        ]
                                    },
                                    "carriertype": {
                                        "title": "Carrier type",
                                        "description": "Enum options:<pre class=\"empty-params-pre\">Copper|Copper_shared|Copper_only|BCopper_only|Fiber|FttH|FttO|Radio</pre>. Defines the physical medium for internet access and whether the medium is shared with other (voice) services.\n\nFttH and FttO are both Fiber connections with other parameters.",
                                        "type": "string",
                                        "enum": [
                                            "Copper",
                                            "Copper_shared",
                                            "Copper_only",
                                            "BCopper_only",
                                            "Fiber",
                                            "FttH",
                                            "FttO",
                                            "Radio"
                                        ]
                                    },
                                    "copper_pairs": {
                                        "title": "Optional integer",
                                        "description": "An integer or no value at all.",
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "base_technology": {
                                        "title": "Optional string",
                                        "description": "A string or no value at all.",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "data_technology": {
                                        "title": "Optional string",
                                        "description": "A string or no value at all.",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "channel_type": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "ont_registration": {
                                        "type": "boolean"
                                    },
                                    "aggregated_carriertype": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "aggregated_data_technology": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "netcode_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "slas": {
                                        "type": "array"
                                    },
                                    "circuits": {
                                        "type": "array"
                                    },
                                    "on_demand": {
                                        "type": "boolean"
                                    }
                                },
                                "additionalProperties": false,
                                "required": [
                                    "area",
                                    "name",
                                    "upload",
                                    "nlstype",
                                    "distance",
                                    "download",
                                    "supplier",
                                    "product_id",
                                    "test_label",
                                    "carriertype",
                                    "copper_pairs",
                                    "base_technology",
                                    "data_technology"
                                ]
                            },
                            "provider_order_number": {
                                "title": "Optional string",
                                "description": "A string or no value at all.",
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "upstream_billing_date": {
                                "title": "Optional date",
                                "description": "Optional date in international format YYYY-MM-DD",
                                "oneOf": [
                                    {
                                        "title": "Date",
                                        "description": "Date in international format YYYY-MM-DD",
                                        "type": [
                                            "string",
                                            "null",
                                            "one of"
                                        ],
                                        "pattern": "^[1-9][0-9]{3}-[01][0-9]-[0-3][0-9]$"
                                    },
                                    {
                                        "type": [
                                            "null",
                                            "one of",
                                            "one of"
                                        ]
                                    }
                                ],
                                "type": "one of"
                            },
                            "israspecs": {
                                "title": "Optional string",
                                "description": "A string or no value at all.",
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "israpin": {
                                "type": [
                                    "integer",
                                    "null"
                                ]
                            },
                            "additional_israpin": {
                                "type": [
                                    "integer",
                                    "null"
                                ]
                            },
                            "servicegroup": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "serviceid": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "additional_serviceid": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "fiber_terminationpoint_id": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "ftu_type": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "ftu_count": {
                                "type": [
                                    "integer",
                                    "null"
                                ]
                            },
                            "ont_number": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "distribution_frame": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "nid",
                            "tags",
                            "product"
                        ]
                    },
                    "enduser": {
                        "type": "object",
                        "properties": {
                            "uuid": {
                                "type": "string"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "uuid"
                        ]
                    },
                    "circuits": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "nid": {
                                    "title": "Broadband NID",
                                    "description": "Carrier or circuit identification. To harmonize the way ordered broadband products are identified.",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "pattern": "^[0-9]{4}[A-Z]{2}[0-9]{5}[0-9A-Z]{4}$"
                                },
                                "tags": {
                                    "type": "array",
                                    "items": {
                                        "type": "string"
                                    }
                                },
                                "vlan": {
                                    "type": [
                                        "integer",
                                        "string",
                                        "null"
                                    ]
                                },
                                "port": {
                                    "type": "string"
                                },
                                "q_in_q": {
                                    "type": "boolean"
                                },
                                "product": {
                                    "title": "Generic Broadband Circuit Product",
                                    "type": "object",
                                    "properties": {
                                        "active": {
                                            "type": "boolean"
                                        },
                                        "is_pvc": {
                                            "type": "boolean"
                                        },
                                        "area": {
                                            "title": "Optional string",
                                            "description": "A string or no value at all.",
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        },
                                        "qos": {
                                            "title": "Optional string",
                                            "description": "A string or no value at all.",
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        },
                                        "name": {
                                            "title": "Optional string",
                                            "description": "A string or no value at all.",
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        },
                                        "upload": {
                                            "title": "Optional integer",
                                            "description": "An integer or no value at all.",
                                            "type": [
                                                "integer",
                                                "null"
                                            ]
                                        },
                                        "quality": {
                                            "title": "Optional string",
                                            "description": "A string or no value at all.",
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        },
                                        "download": {
                                            "title": "Optional integer",
                                            "description": "An integer or no value at all.",
                                            "type": [
                                                "integer",
                                                "null"
                                            ]
                                        },
                                        "supplier": {
                                            "type": "string"
                                        },
                                        "product_id": {
                                            "type": "integer"
                                        },
                                        "overbooking": {
                                            "title": "Optional integer",
                                            "description": "An integer or no value at all.",
                                            "type": [
                                                "integer",
                                                "null"
                                            ]
                                        }
                                    },
                                    "additionalProperties": false,
                                    "required": [
                                        "qos",
                                        "name",
                                        "upload",
                                        "quality",
                                        "download",
                                        "supplier",
                                        "product_id",
                                        "overbooking"
                                    ]
                                },
                                "nni_vlan": {
                                    "title": "Optional integer",
                                    "description": "An integer or no value at all.",
                                    "type": [
                                        "integer",
                                        "null"
                                    ]
                                },
                                "port_speed": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "enum": [
                                        null,
                                        "auto",
                                        "10Mb",
                                        "100Mb",
                                        "1000Mb"
                                    ]
                                },
                                "port_duplex": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "enum": [
                                        null,
                                        "auto",
                                        "half",
                                        "full"
                                    ]
                                },
                                "provisioning": {
                                    "anyOf": [
                                        {
                                            "type": [
                                                "object",
                                                "any of"
                                            ],
                                            "description": "Provisioning response for provisioning type vlan",
                                            "properties": {
                                                "enabled": {
                                                    "type": "boolean"
                                                }
                                            }
                                        },
                                        {
                                            "type": [
                                                "object",
                                                "any of"
                                            ],
                                            "description": "Provisioning response for provisioning type l2tp",
                                            "properties": {
                                                "enabled": {
                                                    "type": "boolean"
                                                },
                                                "ipvpn": {
                                                    "title": "Optional string",
                                                    "description": "A string or no value at all.",
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "blocked": {
                                                    "type": "boolean"
                                                }
                                            }
                                        },
                                        {
                                            "type": [
                                                "object",
                                                "any of"
                                            ],
                                            "description": "Provisioning response for radius managed provisioning type ppp",
                                            "properties": {
                                                "enabled": {
                                                    "type": "boolean"
                                                },
                                                "ipvpn": {
                                                    "title": "Optional string",
                                                    "description": "A string or no value at all.",
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "blocked": {
                                                    "type": "boolean"
                                                },
                                                "accesslist": {
                                                    "title": "AccessList name",
                                                    "description": "",
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "pattern": "^[a-z0-9_]{3,}$"
                                                },
                                                "authentication": {
                                                    "type": "boolean"
                                                },
                                                "username": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "password": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "primary_ipv4": {
                                                    "title": "IPv4 subnet",
                                                    "description": "The IPv4 subnet assigned to this circuit in CIDR format",
                                                    "type": "string",
                                                    "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(/([0-9]|[1-2][0-9]|3[0-2]))$"
                                                },
                                                "routed_ipv4": {
                                                    "type": "array",
                                                    "items": {
                                                        "title": "IPv4 subnet",
                                                        "description": "The IPv4 subnet assigned to this circuit in CIDR format",
                                                        "type": "string",
                                                        "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(/([0-9]|[1-2][0-9]|3[0-2]))$"
                                                    }
                                                }
                                            }
                                        },
                                        {
                                            "type": [
                                                "object",
                                                "any of"
                                            ],
                                            "description": "Provisioning response for non radius managed provisioning type ppp",
                                            "properties": {
                                                "enabled": {
                                                    "type": "boolean"
                                                },
                                                "ipvpn": {
                                                    "title": "Optional string",
                                                    "description": "A string or no value at all.",
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "blocked": {
                                                    "type": "boolean"
                                                }
                                            }
                                        },
                                        {
                                            "type": [
                                                "object",
                                                "any of"
                                            ],
                                            "description": "Provisioning response for provisioning type static",
                                            "properties": {
                                                "enabled": {
                                                    "type": "boolean"
                                                },
                                                "ipvpn": {
                                                    "title": "Optional string",
                                                    "description": "A string or no value at all.",
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "blocked": {
                                                    "type": "boolean"
                                                },
                                                "accesslist": {
                                                    "title": "AccessList name",
                                                    "description": "",
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "pattern": "^[a-z0-9_]{3,}$"
                                                },
                                                "primary_ipv4": {
                                                    "title": "IPv4 subnet",
                                                    "description": "The IPv4 subnet assigned to this circuit in CIDR format",
                                                    "type": "string",
                                                    "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(/([0-9]|[1-2][0-9]|3[0-2]))$"
                                                },
                                                "routed_ipv4": {
                                                    "type": "array",
                                                    "items": {
                                                        "title": "IPv4 subnet",
                                                        "description": "The IPv4 subnet assigned to this circuit in CIDR format",
                                                        "type": "string",
                                                        "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(/([0-9]|[1-2][0-9]|3[0-2]))$"
                                                    }
                                                }
                                            }
                                        }
                                    ],
                                    "type": "any of"
                                },
                                "provisioning_type": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "enum": [
                                        "ppp",
                                        "vlan",
                                        "l2tp",
                                        "static",
                                        null
                                    ]
                                },
                                "provider_order_number": {
                                    "title": "Optional string",
                                    "description": "A string or no value at all.",
                                    "type": [
                                        "string",
                                        "null"
                                    ]
                                },
                                "customer_connection_tag": {
                                    "title": "Optional string",
                                    "description": "A string or no value at all.",
                                    "type": [
                                        "string",
                                        "null"
                                    ]
                                }
                            },
                            "required": [
                                "nid",
                                "product"
                            ]
                        }
                    },
                    "supplier": {
                        "type": "string"
                    },
                    "end_of_life_date": {
                        "title": "Optional date",
                        "description": "Optional date in international format YYYY-MM-DD",
                        "oneOf": [
                            {
                                "title": "Date",
                                "description": "Date in international format YYYY-MM-DD",
                                "type": [
                                    "string",
                                    "null",
                                    "one of"
                                ],
                                "pattern": "^[1-9][0-9]{3}-[01][0-9]-[0-3][0-9]$"
                            },
                            {
                                "type": [
                                    "null",
                                    "one of",
                                    "one of"
                                ]
                            }
                        ],
                        "type": "one of"
                    },
                    "end_of_life_reason": {
                        "title": "Optional string",
                        "description": "A string or no value at all.",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "location_contacts": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "name": {
                                    "type": "string"
                                },
                                "uuid": {
                                    "type": "string"
                                },
                                "email": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "pattern": "(^[a-zA-Z0-9_.+-/*]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+$)"
                                },
                                "primary": {
                                    "type": "boolean"
                                },
                                "phonenumber": {
                                    "title": "Telephone number",
                                    "description": "Dutch national telephone number",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "pattern": "^0([1-7][0-9]|85|88)[0-9]{7}$"
                                }
                            },
                            "additionalProperties": false,
                            "required": [
                                "name",
                                "uuid",
                                "phonenumber",
                                "primary"
                            ]
                        }
                    },
                    "transaction": {
                        "type": "object",
                        "properties": {
                            "uuid": {
                                "title": "Optional string",
                                "description": "A string or no value at all.",
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "action": {
                                "title": "Optional string",
                                "description": "A string or no value at all.",
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "state": {
                                "title": "Optional string",
                                "description": "A string or no value at all.",
                                "type": [
                                    "string",
                                    "null"
                                ]
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "uuid",
                            "action",
                            "state"
                        ]
                    }
                },
                "additionalProperties": false,
                "required": [
                    "sla",
                    "active",
                    "address",
                    "carrier",
                    "enduser",
                    "circuits",
                    "supplier",
                    "location_contacts",
                    "transaction"
                ]
            }
        },
        "pagination": {
            "title": "Response Pagination Object",
            "description": "Information about the pagination settings. If a (next|previous)_page returns null, the (next|previous)page does not exist.",
            "type": "object",
            "properties": {
                "previous_page": {
                    "title": "Optional integer",
                    "description": "An integer or no value at all.",
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "next_page": {
                    "title": "Optional integer",
                    "description": "An integer or no value at all.",
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "per_page": {
                    "description": "Max amount of tickets per page.",
                    "type": "integer"
                },
                "count": {
                    "title": "Optional integer",
                    "description": "An integer or no value at all.",
                    "type": [
                        "integer",
                        "null"
                    ]
                }
            },
            "required": [
                "previous_page",
                "next_page",
                "per_page",
                "count"
            ]
        }
    },
    "required": [
        "connections"
    ]
}