GithubHelp home page GithubHelp logo

json-schemas's Introduction

IX-F Member Export JSON Schema

The IX-F Member Export is an agreed and standardized JSON schema which allows IXPs to make their member lists available for consumption by tools such as PeeringDB, networks with automated peering managers, prospective members and the many other tools appearing in the peering eco-system.

The key element of the IX-F Member Export is that it makes the individual IXP the canonical trusted source for data about their own IXP. Data that is guaranteed to be correct and up to date.

Location

It is suggested to locate the REST call under a well defined URI on the IXP's website, or use standard HTTP redirects (3xx). We recommend the location: https://www.example.com/participants.json

Documentation

More detailed documentation is available on the github wiki page.

Directory / Implementations

In April 2017, we launched a directory for all implemented IX-F member exports and in April 2018 this was moved to the IXPDB website and you can find the list of IXPs exporting their member lists by selecting the API option in the search: https://ixpdb.euro-ix.net/en/ixpdb/ixps/?reverse=&sort=name&q=&api=on

Stale / Potentially Broken Implementations

POTENTIALLY STALE/BROKEN - THE ABOVE REFERENCED DIRECTORY WILL BE USED FROM HERE ON IN

Contact

Please send feedback to:

json-schemas's People

Contributors

andydavidson avatar arnoldnipper avatar barryo avatar bijals avatar fooelisa avatar grizz avatar kay23 avatar listerr avatar mahtin avatar nickhilliard avatar robertjakub avatar sbakker avatar ssadler avatar will-h avatar ymitsos avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

json-schemas's Issues

Country codes should be defined as ISO 3166 Alpha-2

Country is mentioned twice in the schema. In the ixp_list it is described as "ISO country code where the IXP is located" and in switch it is "Country the switch is located in".

The ISO 3166 standard offers three code types: Alpha-2, Alpha-3, and numeric. It also offers both and English and French short name, which some readers might confuse for a code.

Users of the JSON data can normalize it. But it would be helpful if the schema helped developers and others choose the format expected by data users: Alpha-2.

We should specify Alpha-2 as the code element to use to reduce the opportunities for inaccurate analysis based on a mixture of Alpha-2 codes and country names in exports.

GitHub project "About" links to a 404

The project main page contains on the top-right an "About" box with content and a broken link:

JSON Schema for Exporting IXP Participant Details

ixpdb.euro-ix.net/en/ixpdb/providers/

The link is broken with a 404 and should perhaps be updated.
It results in an error page that complaints about a missing 404 error page.

Collector and Route Server ASN

Although the IXP collector and route-server data appears as a member in the member_list, it would be helpful to specifically list the exchange point operator's own collector and route-server in the ixp_list section.

I have extended my own ixp_list schema for internal use with 'asn_collector' and 'asn_routeserver' fields.

Method to register L1-only POPs

ixp_list { } currently supports info about different IX POPs described by colo/city/country/pdb_facility_id via the switch { } array.

It would make sense to introduce a similar method to describe L1-only POPs, i.e. the ones not having any switch.

Tag Releases on GitHub

Please use the Releases-Feature of GitHub to tag the releases.

This would be helpful to let GitHub notify you on new releases and also I just added this to our teams Slack-Channel via the (hidden) RSS-feed:
/feed subscribe https://github.com/euro-ix/json-schemas/releases.atom

Thanks :)

Add ratings for social events and meals for 29th Forum

Is there a way I can use the existing system to add rating buttons to:
Sunday Social
Welcome Drinks
Coffee Breaks
Lunch Monday
Dinner Social
Lunch Tuesday

I was hoping I could perhaps put in a dummy proposal for each of these items and link it to the right agenda item, but I'm not sure how to do that.

Add field switch_port to object if_list

Currently an interface can only be pinned down to a switch via the switch_id. When trouble-shooting it would be good to know the exact location of the interface(s). A field if_descr could help. E.g.

"if_list": [
    {
        "switch_id": 10,
        "if_speed": 1000,
        "if_type": "1000BASE-LX",
        "if_descr": "chassis-1\/Gi1\/1\/14"
    }
]

Apply ISO 3166 to switch location as well as IXP location

v1.0 of the schema requires that the location of the IXP should be specified using a code from ISO 3166. In contrast, the switch location is defined without reference to ISO 3166. This means users can use a country name, which is not unambiguous and makes automation and analysis more challenging. Tightening the specification to require ISO 3166 codes would be good. When doing this, it would be helpful to specify use of the Alpha-2 code so that implementers do not need to also build in support for Alpha-3 and Numeric codes.

No member IRR object field

Is there a particular reason there's no field for an IRR object under member_list.[] (or anywhere)?

This would seem to be one of the most critical fields of all and not having it diminishes (IMHO) the utility of the feed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.