I updated my ATR parsing web site at https://smartcard-atr.apdu.fr/ to add the option to get the result not in an HTML page but as a JSON document.
If you do not yet know this service you can read "Parsing an ATR: new web site URL" to get some history.
JSON
The URL for the JSON service is https://smartcard-atr.apdu.fr/V1/parse2json?ATR=3BFF9700008131FE4380318065B0846160FB120FFD8290000D.
It is the same as for the HTML output
https://smartcard-atr.apdu.fr/parse?ATR=3BFF9700008131FE4380318065B0846160FB120FFD8290000D
except you replace "parse" by "V1/parse2json" in the URL.
Of course you update the ATR parameter value to use the ATR value you want to parse.
Examples
You can use it to get the description of a particular field by piping the result in the jq command.
jq is a lightweight and flexible command-line JSON processor.
For example to get the meaning of the TA1 byte you can use:
$ curl -s https://smartcard-atr.apdu.fr/V1/parse2json?ATR=3B12953606 | jq '.TA."1"' { "description": "Fi=512, Di=16, 32 cycles/ETU (125000 bits/s at 4.00 MHz, 156250 bits/s for fMax=5 MHz)", "value": 149 }
Or for just the TA1 description:
$ curl -s https://smartcard-atr.apdu.fr/V1/parse2json?ATR=3B90160187 | jq '.TA."1".description'
"Fi=372, Di=32, 11.625 cycles/ETU (344086 bits/s at 4.00 MHz, 430107 bits/s for fMax=5 MHz)"
Card matching
I also added the possibility to get the cards matching a given ATR.
For example: https://smartcard-atr.apdu.fr/V1/match?ATR=3B8F800180318065B0850300EF120FFE82900072
$ curl -s https://smartcard-atr.apdu.fr/V1/match?ATR=3B8F800180318065B0850300EF120FFE82900072 | jq { "3B 8F 80 01 80 31 80 65 B0 .. .. .. .. 12 0F FE 82 90 00 ..": [ "IDPrime MD 3810 T=Contactless (Prox DU)" ], "3B 8F 80 01 80 31 80 65 B0 85 03 00 EF 12 0F FE 82 90 00 72": [ "Gemalto IDPrime MD 3840", "http://www.gemalto.com/dwnld/6891_IDPrimeMD3840_Product_Datasheet_May14.pdf" ] }
Because of the joker mechanism using the character '.' it is possible that one ATR matches
more than one "card".
Conclusion
If you have ideas how to improve the service just tell me.