SlideShare a Scribd company logo
1 of 11
Download to read offline
THE MATERIALS API
Shyue Ping Ong (MIT), Shreyas Cholia (LBL/NERSC)
What is The Materials API?




   An open platform for       Flexible and scalable to
    accessing Materials       cater to large number of
  Project data based on          collaborators, with     Simple to use and code
                                                                agnostic.
  REpresentational State          different access
Transfer (REST) principles.           privileges.
HTTP API design (REST)
                                        Unique Identifier. Eg.
                                        a formula (Fe2O3),
                                        id (1234) or chemical
                                        system (Li-Fe-O)
                                                            Property

https://www.materialsproject.org/rest/v1/materials/Fe2O3/vasp/energy



              Preamble URL                          Data type
                                                    (vasp, exp,
                                                    etc.)
• RESTful API maps URLs to data objects
Why REST APIs?
¨    Big push towards RESTful HTTP APIs across the web.

¨    REST APIs provide programmatic access to data
      and resources to developers over the web

¨    Access to data as well defined objects allows users
      to develop their own custom applications and code

      Enables a thriving community built around data.
Access via an API key
¨    To maintain privileged access, each user has an
      associated API key (with certain defined access
      privileges).

¨    To get your key, login to materialsproject.org and go
      to www.materialsproject.org/profile

¨    All MP https requests must supply API key as:
      ¤  A x-api-key header, e.g., {‘X-API-KEY’: ‘MYKEY’}, or
      ¤  As a GET or POST variable, e.g., {‘API_KEY’: ‘MYKEY’}
Sample JSON output

GET https://www.materialsproject.org/rest/v1/materials/Fe2O3/vasp/energy
Integration with pymatgen



 The Materials API




           Powerful Materials
             Analytics Tool
pymatgen
¨    The open source python library that powers the
      Materials Project.
      ¤  Defines  core Python objects for materials data
          representation.
      ¤  Provides a well-tested set of structure and
          thermodynamic analysis tools relevant to many
          applications.
      ¤  Establishes an open platform for researchers to
          collaboratively develop sophisticated analyses of
          materials data obtained both from first principles
          calculations and experiments.
Pymatgen now provides access to analysis functions as well as data
Materials API + pymatgen example
from pymatgen.matproj.rest import MPRester
 
#This initializes the REST adaptor. Put your own API key in.
a = MPRester("YOUR_API_KEY")
 
#This gives you the Structure corresponding to material id 2254 in the Materials Project.
structure = a.get_structure_by_material_id(2254)
 
#Entries are the basic unit for thermodynamic and other analyses in pymatgen.
#This gets all entries belonging to the Ca-C-O system.
entries = a.get_entries_in_chemsys(['Ca', 'C', 'O'])

#With entries, you can do many sophisticated analyses,
#like creating phase diagrams.
pd = PhaseDiagram(entries)
plotter = PDPlotter(pd)
plotter.show()
More information
¨    Materials API + pymatgen examples
      ¤    https://gist.github.com/gists/search?q=shyuep+materials+api
            +pymatgen

¨    The Materials API wiki
      ¤    https://materialsproject.org/wiki/index.php/The_Materials_API

¨    Python Materials Genomics
      ¤    http://packages.python.org/pymatgen/
      ¤    Shyue Ping Ong, William Davidson Richard, Anubhav Jain, Geoffroy
            Hautier, Michael Kocher, Shreyas Cholia, Dan Gunter, Vincent Chevrier,
            Kristin A. Persson, Gerbrand Ceder. Python Materials Genomics
            (pymatgen) : A Robust, Open-Source Python Library for Materials
            Analysis. (submitted)

More Related Content

What's hot

Born oppenheimer p1 7
Born oppenheimer p1 7Born oppenheimer p1 7
Born oppenheimer p1 7Lim Wei
 
SPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeSPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeAdriel Café
 
Density Functional Theory
Density Functional TheoryDensity Functional Theory
Density Functional TheoryWesley Chen
 
Quantum Theory of Magnetism- Heisenberg Model
Quantum Theory of Magnetism- Heisenberg ModelQuantum Theory of Magnetism- Heisenberg Model
Quantum Theory of Magnetism- Heisenberg ModelSara Khorshidian
 
Dynamic Partition Pruning in Apache Spark
Dynamic Partition Pruning in Apache SparkDynamic Partition Pruning in Apache Spark
Dynamic Partition Pruning in Apache SparkDatabricks
 
SQL Performance Improvements At a Glance in Apache Spark 3.0
SQL Performance Improvements At a Glance in Apache Spark 3.0SQL Performance Improvements At a Glance in Apache Spark 3.0
SQL Performance Improvements At a Glance in Apache Spark 3.0Kazuaki Ishizaki
 
SHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data MudSHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data MudRichard Cyganiak
 
3 energy levels and quanta
3 energy levels and quanta3 energy levels and quanta
3 energy levels and quantaMissingWaldo
 
The black body radiation Junaid khan
The black body radiation Junaid khanThe black body radiation Junaid khan
The black body radiation Junaid khanJunaid khan
 
QUANTITIVE EXPRESSION FOR DEBYE SCREENING AND QUASINEUTRAL PLASMA
QUANTITIVE EXPRESSION FOR DEBYE SCREENING AND QUASINEUTRAL PLASMAQUANTITIVE EXPRESSION FOR DEBYE SCREENING AND QUASINEUTRAL PLASMA
QUANTITIVE EXPRESSION FOR DEBYE SCREENING AND QUASINEUTRAL PLASMAAnitaMalviya
 
Apache Flink 101 - the rise of stream processing and beyond
Apache Flink 101 - the rise of stream processing and beyondApache Flink 101 - the rise of stream processing and beyond
Apache Flink 101 - the rise of stream processing and beyondBowen Li
 
VASP: Some Accumulated Wisdom
VASP: Some Accumulated WisdomVASP: Some Accumulated Wisdom
VASP: Some Accumulated WisdomJonathan Skelton
 
Apache Storm
Apache StormApache Storm
Apache StormEdureka!
 

What's hot (20)

Blochtheorem
BlochtheoremBlochtheorem
Blochtheorem
 
Born oppenheimer p1 7
Born oppenheimer p1 7Born oppenheimer p1 7
Born oppenheimer p1 7
 
SPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeSPARQL-DL - Theory & Practice
SPARQL-DL - Theory & Practice
 
Density Functional Theory
Density Functional TheoryDensity Functional Theory
Density Functional Theory
 
Dft presentation
Dft presentationDft presentation
Dft presentation
 
Chapter 7a
Chapter 7aChapter 7a
Chapter 7a
 
Quantum Theory of Magnetism- Heisenberg Model
Quantum Theory of Magnetism- Heisenberg ModelQuantum Theory of Magnetism- Heisenberg Model
Quantum Theory of Magnetism- Heisenberg Model
 
Dynamic Partition Pruning in Apache Spark
Dynamic Partition Pruning in Apache SparkDynamic Partition Pruning in Apache Spark
Dynamic Partition Pruning in Apache Spark
 
SQL Performance Improvements At a Glance in Apache Spark 3.0
SQL Performance Improvements At a Glance in Apache Spark 3.0SQL Performance Improvements At a Glance in Apache Spark 3.0
SQL Performance Improvements At a Glance in Apache Spark 3.0
 
SHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data MudSHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data Mud
 
NANO266 - Lecture 5 - Exchange-Correlation Functionals
NANO266 - Lecture 5 - Exchange-Correlation FunctionalsNANO266 - Lecture 5 - Exchange-Correlation Functionals
NANO266 - Lecture 5 - Exchange-Correlation Functionals
 
3 energy levels and quanta
3 energy levels and quanta3 energy levels and quanta
3 energy levels and quanta
 
The black body radiation Junaid khan
The black body radiation Junaid khanThe black body radiation Junaid khan
The black body radiation Junaid khan
 
Gremlin's Anatomy
Gremlin's AnatomyGremlin's Anatomy
Gremlin's Anatomy
 
QUANTITIVE EXPRESSION FOR DEBYE SCREENING AND QUASINEUTRAL PLASMA
QUANTITIVE EXPRESSION FOR DEBYE SCREENING AND QUASINEUTRAL PLASMAQUANTITIVE EXPRESSION FOR DEBYE SCREENING AND QUASINEUTRAL PLASMA
QUANTITIVE EXPRESSION FOR DEBYE SCREENING AND QUASINEUTRAL PLASMA
 
Apache Flink 101 - the rise of stream processing and beyond
Apache Flink 101 - the rise of stream processing and beyondApache Flink 101 - the rise of stream processing and beyond
Apache Flink 101 - the rise of stream processing and beyond
 
Introduction to DFT Part 1
Introduction to DFT Part 1 Introduction to DFT Part 1
Introduction to DFT Part 1
 
VASP: Some Accumulated Wisdom
VASP: Some Accumulated WisdomVASP: Some Accumulated Wisdom
VASP: Some Accumulated Wisdom
 
SHACL by example
SHACL by exampleSHACL by example
SHACL by example
 
Apache Storm
Apache StormApache Storm
Apache Storm
 

Viewers also liked

NANO266 - Lecture 12 - High-throughput computational materials design
NANO266 - Lecture 12 - High-throughput computational materials designNANO266 - Lecture 12 - High-throughput computational materials design
NANO266 - Lecture 12 - High-throughput computational materials designUniversity of California, San Diego
 
Machine Learning and Inductive Inference
Machine Learning and Inductive InferenceMachine Learning and Inductive Inference
Machine Learning and Inductive Inferencebutest
 
The Future of Materials, by Means of Example, Part 1: Packaging Solutions
The Future of Materials, by Means of Example, Part 1: Packaging SolutionsThe Future of Materials, by Means of Example, Part 1: Packaging Solutions
The Future of Materials, by Means of Example, Part 1: Packaging SolutionsSustainable Brands
 
World Economic Forum Annual Meeting 2006
World Economic Forum Annual Meeting 2006World Economic Forum Annual Meeting 2006
World Economic Forum Annual Meeting 2006WorldEconomicForumDavos
 
Ο σχολικός μας κήπος
Ο σχολικός μας  κήποςΟ σχολικός μας  κήπος
Ο σχολικός μας κήποςΑννα Παππα
 
οδηγίες συμπλήρωσης αίτησης για το πρόγραμμα Teachers 4 europe 2014 2015
οδηγίες συμπλήρωσης αίτησης για το πρόγραμμα Teachers 4 europe 2014 2015οδηγίες συμπλήρωσης αίτησης για το πρόγραμμα Teachers 4 europe 2014 2015
οδηγίες συμπλήρωσης αίτησης για το πρόγραμμα Teachers 4 europe 2014 2015Dr. Paraskevas Apostolos
 
Welwyn Hatfield Dragons Apprentice: 5 reasons to be involved
Welwyn Hatfield Dragons Apprentice: 5 reasons to be involvedWelwyn Hatfield Dragons Apprentice: 5 reasons to be involved
Welwyn Hatfield Dragons Apprentice: 5 reasons to be involvedRed Potato
 
Project ECHO (Extension for Community Health Outcomes)
Project ECHO (Extension for Community Health Outcomes)Project ECHO (Extension for Community Health Outcomes)
Project ECHO (Extension for Community Health Outcomes)icornpresentations
 
Bigmarker - Οδηγίες για υλοποίηση Τηλεδιασκέψεων
Bigmarker - Οδηγίες για υλοποίηση ΤηλεδιασκέψεωνBigmarker - Οδηγίες για υλοποίηση Τηλεδιασκέψεων
Bigmarker - Οδηγίες για υλοποίηση ΤηλεδιασκέψεωνDr. Paraskevas Apostolos
 
Validación del Desempeño de los Dispositivos Médicos, Una Mirada desde la Ing...
Validación del Desempeño de los Dispositivos Médicos, Una Mirada desde la Ing...Validación del Desempeño de los Dispositivos Médicos, Una Mirada desde la Ing...
Validación del Desempeño de los Dispositivos Médicos, Una Mirada desde la Ing...Rigoberto José Meléndez Cuauro
 
Social Media Report - Snack Brands - Chips (India) September - October 2016
Social Media Report - Snack Brands - Chips (India) September - October 2016Social Media Report - Snack Brands - Chips (India) September - October 2016
Social Media Report - Snack Brands - Chips (India) September - October 2016Unmetric
 
洞穴人的陰影
洞穴人的陰影洞穴人的陰影
洞穴人的陰影t067
 
Mi examen final...
Mi examen final...Mi examen final...
Mi examen final...powercecil
 

Viewers also liked (19)

NANO266 - Lecture 12 - High-throughput computational materials design
NANO266 - Lecture 12 - High-throughput computational materials designNANO266 - Lecture 12 - High-throughput computational materials design
NANO266 - Lecture 12 - High-throughput computational materials design
 
ICME Workshop Jul 2014 - The Materials Project
ICME Workshop Jul 2014 - The Materials ProjectICME Workshop Jul 2014 - The Materials Project
ICME Workshop Jul 2014 - The Materials Project
 
Machine Learning and Inductive Inference
Machine Learning and Inductive InferenceMachine Learning and Inductive Inference
Machine Learning and Inductive Inference
 
The Future of Materials, by Means of Example, Part 1: Packaging Solutions
The Future of Materials, by Means of Example, Part 1: Packaging SolutionsThe Future of Materials, by Means of Example, Part 1: Packaging Solutions
The Future of Materials, by Means of Example, Part 1: Packaging Solutions
 
Artificial intelligence ppt
Artificial intelligence   pptArtificial intelligence   ppt
Artificial intelligence ppt
 
World Economic Forum Annual Meeting 2006
World Economic Forum Annual Meeting 2006World Economic Forum Annual Meeting 2006
World Economic Forum Annual Meeting 2006
 
Manejo y seguridad del internet
Manejo y seguridad del internetManejo y seguridad del internet
Manejo y seguridad del internet
 
Ο σχολικός μας κήπος
Ο σχολικός μας  κήποςΟ σχολικός μας  κήπος
Ο σχολικός μας κήπος
 
οδηγίες συμπλήρωσης αίτησης για το πρόγραμμα Teachers 4 europe 2014 2015
οδηγίες συμπλήρωσης αίτησης για το πρόγραμμα Teachers 4 europe 2014 2015οδηγίες συμπλήρωσης αίτησης για το πρόγραμμα Teachers 4 europe 2014 2015
οδηγίες συμπλήρωσης αίτησης για το πρόγραμμα Teachers 4 europe 2014 2015
 
Welwyn Hatfield Dragons Apprentice: 5 reasons to be involved
Welwyn Hatfield Dragons Apprentice: 5 reasons to be involvedWelwyn Hatfield Dragons Apprentice: 5 reasons to be involved
Welwyn Hatfield Dragons Apprentice: 5 reasons to be involved
 
Recycle Game
Recycle GameRecycle Game
Recycle Game
 
ECRI-INSTITUTE - Camas de Parto
ECRI-INSTITUTE - Camas de PartoECRI-INSTITUTE - Camas de Parto
ECRI-INSTITUTE - Camas de Parto
 
Project ECHO (Extension for Community Health Outcomes)
Project ECHO (Extension for Community Health Outcomes)Project ECHO (Extension for Community Health Outcomes)
Project ECHO (Extension for Community Health Outcomes)
 
Bigmarker - Οδηγίες για υλοποίηση Τηλεδιασκέψεων
Bigmarker - Οδηγίες για υλοποίηση ΤηλεδιασκέψεωνBigmarker - Οδηγίες για υλοποίηση Τηλεδιασκέψεων
Bigmarker - Οδηγίες για υλοποίηση Τηλεδιασκέψεων
 
Validación del Desempeño de los Dispositivos Médicos, Una Mirada desde la Ing...
Validación del Desempeño de los Dispositivos Médicos, Una Mirada desde la Ing...Validación del Desempeño de los Dispositivos Médicos, Una Mirada desde la Ing...
Validación del Desempeño de los Dispositivos Médicos, Una Mirada desde la Ing...
 
The drowned love
The drowned loveThe drowned love
The drowned love
 
Social Media Report - Snack Brands - Chips (India) September - October 2016
Social Media Report - Snack Brands - Chips (India) September - October 2016Social Media Report - Snack Brands - Chips (India) September - October 2016
Social Media Report - Snack Brands - Chips (India) September - October 2016
 
洞穴人的陰影
洞穴人的陰影洞穴人的陰影
洞穴人的陰影
 
Mi examen final...
Mi examen final...Mi examen final...
Mi examen final...
 

Similar to The Materials API

The Materials Project Ecosystem - A Complete Software and Data Platform for M...
The Materials Project Ecosystem - A Complete Software and Data Platform for M...The Materials Project Ecosystem - A Complete Software and Data Platform for M...
The Materials Project Ecosystem - A Complete Software and Data Platform for M...University of California, San Diego
 
grlc: Bridging the Gap Between RESTful APIs and Linked Data
grlc: Bridging the Gap Between RESTful APIs and Linked Datagrlc: Bridging the Gap Between RESTful APIs and Linked Data
grlc: Bridging the Gap Between RESTful APIs and Linked DataAlbert Meroño-Peñuela
 
Adding Rules on Existing Hypermedia APIs
Adding Rules on Existing Hypermedia APIsAdding Rules on Existing Hypermedia APIs
Adding Rules on Existing Hypermedia APIsMichael Petychakis
 
Hypermedia for Machine APIs
Hypermedia for Machine APIsHypermedia for Machine APIs
Hypermedia for Machine APIsMichael Koster
 
Semantic web technologies applied to bioinformatics and laboratory data manag...
Semantic web technologies applied to bioinformatics and laboratory data manag...Semantic web technologies applied to bioinformatics and laboratory data manag...
Semantic web technologies applied to bioinformatics and laboratory data manag...Toni Hermoso Pulido
 
Accessing the Linked Open Data Cloud via ODBC
Accessing the Linked Open Data Cloud via ODBCAccessing the Linked Open Data Cloud via ODBC
Accessing the Linked Open Data Cloud via ODBCKingsley Uyi Idehen
 
Hypermedia System Architecture for a Web of Things
Hypermedia System Architecture for a Web of ThingsHypermedia System Architecture for a Web of Things
Hypermedia System Architecture for a Web of ThingsMichael Koster
 
OBA: An Ontology-Based Framework for Creating REST APIs for Knowledge Graphs
OBA: An Ontology-Based Framework for Creating REST APIs for Knowledge GraphsOBA: An Ontology-Based Framework for Creating REST APIs for Knowledge Graphs
OBA: An Ontology-Based Framework for Creating REST APIs for Knowledge Graphsdgarijo
 
Arabidopsis Information Portal, Developer Workshop 2014, Introduction
Arabidopsis Information Portal, Developer Workshop 2014, IntroductionArabidopsis Information Portal, Developer Workshop 2014, Introduction
Arabidopsis Information Portal, Developer Workshop 2014, IntroductionJasonRafeMiller
 
RESTful Web services using JAX-RS
RESTful Web services using JAX-RSRESTful Web services using JAX-RS
RESTful Web services using JAX-RSArun Gupta
 
Fulfilling the Hypermedia Constraint via HTTP OPTIONS, The HTTP Vocabulary In...
Fulfilling the Hypermedia Constraint via HTTP OPTIONS, The HTTP Vocabulary In...Fulfilling the Hypermedia Constraint via HTTP OPTIONS, The HTTP Vocabulary In...
Fulfilling the Hypermedia Constraint via HTTP OPTIONS, The HTTP Vocabulary In...ruyalarcon
 
Eclipse Day India 2015 - Rest with Java (jax rs) and jersey
Eclipse Day India 2015 - Rest with Java (jax rs) and jerseyEclipse Day India 2015 - Rest with Java (jax rs) and jersey
Eclipse Day India 2015 - Rest with Java (jax rs) and jerseyEclipse Day India
 
Rest with java (jax rs) and jersey and swagger
Rest with java (jax rs) and jersey and swaggerRest with java (jax rs) and jersey and swagger
Rest with java (jax rs) and jersey and swaggerKumaraswamy M
 
ASP.NET Mvc 4 web api
ASP.NET Mvc 4 web apiASP.NET Mvc 4 web api
ASP.NET Mvc 4 web apiTiago Knoch
 
Spark IT 2011 - Developing RESTful Web services with JAX-RS
Spark IT 2011 - Developing RESTful Web services with JAX-RSSpark IT 2011 - Developing RESTful Web services with JAX-RS
Spark IT 2011 - Developing RESTful Web services with JAX-RSArun Gupta
 
JAX-RS JavaOne Hyderabad, India 2011
JAX-RS JavaOne Hyderabad, India 2011JAX-RS JavaOne Hyderabad, India 2011
JAX-RS JavaOne Hyderabad, India 2011Shreedhar Ganapathy
 

Similar to The Materials API (20)

The Materials Project Ecosystem - A Complete Software and Data Platform for M...
The Materials Project Ecosystem - A Complete Software and Data Platform for M...The Materials Project Ecosystem - A Complete Software and Data Platform for M...
The Materials Project Ecosystem - A Complete Software and Data Platform for M...
 
grlc: Bridging the Gap Between RESTful APIs and Linked Data
grlc: Bridging the Gap Between RESTful APIs and Linked Datagrlc: Bridging the Gap Between RESTful APIs and Linked Data
grlc: Bridging the Gap Between RESTful APIs and Linked Data
 
Adding Rules on Existing Hypermedia APIs
Adding Rules on Existing Hypermedia APIsAdding Rules on Existing Hypermedia APIs
Adding Rules on Existing Hypermedia APIs
 
Hypermedia for Machine APIs
Hypermedia for Machine APIsHypermedia for Machine APIs
Hypermedia for Machine APIs
 
Semantic web technologies applied to bioinformatics and laboratory data manag...
Semantic web technologies applied to bioinformatics and laboratory data manag...Semantic web technologies applied to bioinformatics and laboratory data manag...
Semantic web technologies applied to bioinformatics and laboratory data manag...
 
Accessing the Linked Open Data Cloud via ODBC
Accessing the Linked Open Data Cloud via ODBCAccessing the Linked Open Data Cloud via ODBC
Accessing the Linked Open Data Cloud via ODBC
 
OAISRB
OAISRBOAISRB
OAISRB
 
Hypermedia System Architecture for a Web of Things
Hypermedia System Architecture for a Web of ThingsHypermedia System Architecture for a Web of Things
Hypermedia System Architecture for a Web of Things
 
OBA: An Ontology-Based Framework for Creating REST APIs for Knowledge Graphs
OBA: An Ontology-Based Framework for Creating REST APIs for Knowledge GraphsOBA: An Ontology-Based Framework for Creating REST APIs for Knowledge Graphs
OBA: An Ontology-Based Framework for Creating REST APIs for Knowledge Graphs
 
RESTing with JAX-RS
RESTing with JAX-RSRESTing with JAX-RS
RESTing with JAX-RS
 
Arabidopsis Information Portal, Developer Workshop 2014, Introduction
Arabidopsis Information Portal, Developer Workshop 2014, IntroductionArabidopsis Information Portal, Developer Workshop 2014, Introduction
Arabidopsis Information Portal, Developer Workshop 2014, Introduction
 
RESTful Web services using JAX-RS
RESTful Web services using JAX-RSRESTful Web services using JAX-RS
RESTful Web services using JAX-RS
 
Fulfilling the Hypermedia Constraint via HTTP OPTIONS, The HTTP Vocabulary In...
Fulfilling the Hypermedia Constraint via HTTP OPTIONS, The HTTP Vocabulary In...Fulfilling the Hypermedia Constraint via HTTP OPTIONS, The HTTP Vocabulary In...
Fulfilling the Hypermedia Constraint via HTTP OPTIONS, The HTTP Vocabulary In...
 
Eclipse Day India 2015 - Rest with Java (jax rs) and jersey
Eclipse Day India 2015 - Rest with Java (jax rs) and jerseyEclipse Day India 2015 - Rest with Java (jax rs) and jersey
Eclipse Day India 2015 - Rest with Java (jax rs) and jersey
 
Rest with java (jax rs) and jersey and swagger
Rest with java (jax rs) and jersey and swaggerRest with java (jax rs) and jersey and swagger
Rest with java (jax rs) and jersey and swagger
 
ASP.NET Mvc 4 web api
ASP.NET Mvc 4 web apiASP.NET Mvc 4 web api
ASP.NET Mvc 4 web api
 
Sword Crig 2007 12 06
Sword Crig 2007 12 06Sword Crig 2007 12 06
Sword Crig 2007 12 06
 
Spark IT 2011 - Developing RESTful Web services with JAX-RS
Spark IT 2011 - Developing RESTful Web services with JAX-RSSpark IT 2011 - Developing RESTful Web services with JAX-RS
Spark IT 2011 - Developing RESTful Web services with JAX-RS
 
JAX-RS JavaOne Hyderabad, India 2011
JAX-RS JavaOne Hyderabad, India 2011JAX-RS JavaOne Hyderabad, India 2011
JAX-RS JavaOne Hyderabad, India 2011
 
RESTEasy
RESTEasyRESTEasy
RESTEasy
 

More from University of California, San Diego

NANO281 Lecture 01 - Introduction to Data Science in Materials Science
NANO281 Lecture 01 - Introduction to Data Science in Materials ScienceNANO281 Lecture 01 - Introduction to Data Science in Materials Science
NANO281 Lecture 01 - Introduction to Data Science in Materials ScienceUniversity of California, San Diego
 
Creating It from Bit - Designing Materials by Integrating Quantum Mechanics, ...
Creating It from Bit - Designing Materials by Integrating Quantum Mechanics, ...Creating It from Bit - Designing Materials by Integrating Quantum Mechanics, ...
Creating It from Bit - Designing Materials by Integrating Quantum Mechanics, ...University of California, San Diego
 
UCSD NANO106 - 13 - Other Diffraction Techniques and Common Crystal Structures
UCSD NANO106 - 13 - Other Diffraction Techniques and Common Crystal StructuresUCSD NANO106 - 13 - Other Diffraction Techniques and Common Crystal Structures
UCSD NANO106 - 13 - Other Diffraction Techniques and Common Crystal StructuresUniversity of California, San Diego
 
UCSD NANO106 - 08 - Principal Directions and Representation Quadrics
UCSD NANO106 - 08 - Principal Directions and Representation QuadricsUCSD NANO106 - 08 - Principal Directions and Representation Quadrics
UCSD NANO106 - 08 - Principal Directions and Representation QuadricsUniversity of California, San Diego
 

More from University of California, San Diego (20)

A*STAR Webinar on The AI Revolution in Materials Science
A*STAR Webinar on The AI Revolution in Materials ScienceA*STAR Webinar on The AI Revolution in Materials Science
A*STAR Webinar on The AI Revolution in Materials Science
 
NANO281 Lecture 01 - Introduction to Data Science in Materials Science
NANO281 Lecture 01 - Introduction to Data Science in Materials ScienceNANO281 Lecture 01 - Introduction to Data Science in Materials Science
NANO281 Lecture 01 - Introduction to Data Science in Materials Science
 
Creating It from Bit - Designing Materials by Integrating Quantum Mechanics, ...
Creating It from Bit - Designing Materials by Integrating Quantum Mechanics, ...Creating It from Bit - Designing Materials by Integrating Quantum Mechanics, ...
Creating It from Bit - Designing Materials by Integrating Quantum Mechanics, ...
 
UCSD NANO106 - 13 - Other Diffraction Techniques and Common Crystal Structures
UCSD NANO106 - 13 - Other Diffraction Techniques and Common Crystal StructuresUCSD NANO106 - 13 - Other Diffraction Techniques and Common Crystal Structures
UCSD NANO106 - 13 - Other Diffraction Techniques and Common Crystal Structures
 
NANO266 - Lecture 14 - Transition state modeling
NANO266 - Lecture 14 - Transition state modelingNANO266 - Lecture 14 - Transition state modeling
NANO266 - Lecture 14 - Transition state modeling
 
NANO266 - Lecture 13 - Ab initio molecular dyanmics
NANO266 - Lecture 13 - Ab initio molecular dyanmicsNANO266 - Lecture 13 - Ab initio molecular dyanmics
NANO266 - Lecture 13 - Ab initio molecular dyanmics
 
NANO266 - Lecture 11 - Surfaces and Interfaces
NANO266 - Lecture 11 - Surfaces and InterfacesNANO266 - Lecture 11 - Surfaces and Interfaces
NANO266 - Lecture 11 - Surfaces and Interfaces
 
NANO266 - Lecture 10 - Temperature
NANO266 - Lecture 10 - TemperatureNANO266 - Lecture 10 - Temperature
NANO266 - Lecture 10 - Temperature
 
UCSD NANO106 - 12 - X-ray diffraction
UCSD NANO106 - 12 - X-ray diffractionUCSD NANO106 - 12 - X-ray diffraction
UCSD NANO106 - 12 - X-ray diffraction
 
UCSD NANO106 - 11 - X-rays and their interaction with matter
UCSD NANO106 - 11 - X-rays and their interaction with matterUCSD NANO106 - 11 - X-rays and their interaction with matter
UCSD NANO106 - 11 - X-rays and their interaction with matter
 
UCSD NANO106 - 10 - Bonding in Materials
UCSD NANO106 - 10 - Bonding in MaterialsUCSD NANO106 - 10 - Bonding in Materials
UCSD NANO106 - 10 - Bonding in Materials
 
UCSD NANO106 - 09 - Piezoelectricity and Elasticity
UCSD NANO106 - 09 - Piezoelectricity and ElasticityUCSD NANO106 - 09 - Piezoelectricity and Elasticity
UCSD NANO106 - 09 - Piezoelectricity and Elasticity
 
UCSD NANO106 - 08 - Principal Directions and Representation Quadrics
UCSD NANO106 - 08 - Principal Directions and Representation QuadricsUCSD NANO106 - 08 - Principal Directions and Representation Quadrics
UCSD NANO106 - 08 - Principal Directions and Representation Quadrics
 
UCSD NANO106 - 07 - Material properties and tensors
UCSD NANO106 - 07 - Material properties and tensorsUCSD NANO106 - 07 - Material properties and tensors
UCSD NANO106 - 07 - Material properties and tensors
 
NANO266 - Lecture 9 - Tools of the Modeling Trade
NANO266 - Lecture 9 - Tools of the Modeling TradeNANO266 - Lecture 9 - Tools of the Modeling Trade
NANO266 - Lecture 9 - Tools of the Modeling Trade
 
NANO266 - Lecture 8 - Properties of Periodic Solids
NANO266 - Lecture 8 - Properties of Periodic SolidsNANO266 - Lecture 8 - Properties of Periodic Solids
NANO266 - Lecture 8 - Properties of Periodic Solids
 
NANO266 - Lecture 7 - QM Modeling of Periodic Structures
NANO266 - Lecture 7 - QM Modeling of Periodic StructuresNANO266 - Lecture 7 - QM Modeling of Periodic Structures
NANO266 - Lecture 7 - QM Modeling of Periodic Structures
 
UCSD NANO106 - 06 - Plane and Space Groups
UCSD NANO106 - 06 - Plane and Space GroupsUCSD NANO106 - 06 - Plane and Space Groups
UCSD NANO106 - 06 - Plane and Space Groups
 
UCSD NANO106 - 05 - Group Symmetry and the 32 Point Groups
UCSD NANO106 - 05 - Group Symmetry and the 32 Point GroupsUCSD NANO106 - 05 - Group Symmetry and the 32 Point Groups
UCSD NANO106 - 05 - Group Symmetry and the 32 Point Groups
 
UCSD NANO106 - 04 - Symmetry in Crystallography
UCSD NANO106 - 04 - Symmetry in CrystallographyUCSD NANO106 - 04 - Symmetry in Crystallography
UCSD NANO106 - 04 - Symmetry in Crystallography
 

Recently uploaded

Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentInMediaRes1
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Jisc
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxAvyJaneVismanos
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfMr Bounab Samir
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceSamikshaHamane
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementmkooblal
 

Recently uploaded (20)

Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media Component
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptx
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in Pharmacovigilance
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of management
 

The Materials API

  • 1. THE MATERIALS API Shyue Ping Ong (MIT), Shreyas Cholia (LBL/NERSC)
  • 2. What is The Materials API? An open platform for Flexible and scalable to accessing Materials cater to large number of Project data based on collaborators, with Simple to use and code agnostic. REpresentational State different access Transfer (REST) principles. privileges.
  • 3. HTTP API design (REST) Unique Identifier. Eg. a formula (Fe2O3), id (1234) or chemical system (Li-Fe-O) Property https://www.materialsproject.org/rest/v1/materials/Fe2O3/vasp/energy Preamble URL Data type (vasp, exp, etc.) • RESTful API maps URLs to data objects
  • 4. Why REST APIs? ¨  Big push towards RESTful HTTP APIs across the web. ¨  REST APIs provide programmatic access to data and resources to developers over the web ¨  Access to data as well defined objects allows users to develop their own custom applications and code Enables a thriving community built around data.
  • 5. Access via an API key ¨  To maintain privileged access, each user has an associated API key (with certain defined access privileges). ¨  To get your key, login to materialsproject.org and go to www.materialsproject.org/profile ¨  All MP https requests must supply API key as: ¤  A x-api-key header, e.g., {‘X-API-KEY’: ‘MYKEY’}, or ¤  As a GET or POST variable, e.g., {‘API_KEY’: ‘MYKEY’}
  • 6. Sample JSON output GET https://www.materialsproject.org/rest/v1/materials/Fe2O3/vasp/energy
  • 7. Integration with pymatgen The Materials API Powerful Materials Analytics Tool
  • 8. pymatgen ¨  The open source python library that powers the Materials Project. ¤  Defines core Python objects for materials data representation. ¤  Provides a well-tested set of structure and thermodynamic analysis tools relevant to many applications. ¤  Establishes an open platform for researchers to collaboratively develop sophisticated analyses of materials data obtained both from first principles calculations and experiments.
  • 9. Pymatgen now provides access to analysis functions as well as data
  • 10. Materials API + pymatgen example from pymatgen.matproj.rest import MPRester   #This initializes the REST adaptor. Put your own API key in. a = MPRester("YOUR_API_KEY")   #This gives you the Structure corresponding to material id 2254 in the Materials Project. structure = a.get_structure_by_material_id(2254)   #Entries are the basic unit for thermodynamic and other analyses in pymatgen. #This gets all entries belonging to the Ca-C-O system. entries = a.get_entries_in_chemsys(['Ca', 'C', 'O']) #With entries, you can do many sophisticated analyses, #like creating phase diagrams. pd = PhaseDiagram(entries) plotter = PDPlotter(pd) plotter.show()
  • 11. More information ¨  Materials API + pymatgen examples ¤  https://gist.github.com/gists/search?q=shyuep+materials+api +pymatgen ¨  The Materials API wiki ¤  https://materialsproject.org/wiki/index.php/The_Materials_API ¨  Python Materials Genomics ¤  http://packages.python.org/pymatgen/ ¤  Shyue Ping Ong, William Davidson Richard, Anubhav Jain, Geoffroy Hautier, Michael Kocher, Shreyas Cholia, Dan Gunter, Vincent Chevrier, Kristin A. Persson, Gerbrand Ceder. Python Materials Genomics (pymatgen) : A Robust, Open-Source Python Library for Materials Analysis. (submitted)