Service APIs
This wiki page provides information about Application Programming Interfaces (API) that exist for application developers to connect community/user specific applications to services of the European Grid Infrastructure. The information on this page has been collected by the User Community Support Team of EGI.eu in order to:
- Provide a single documentation about EGI APIs for the application developers
- Provide a structure for collecting feedback about service APIs (about individual APIs and about conherency/compatibility of multiple APIs)
If you have any feedback, comment, correction or addition to the table, please email this to ucst@egi.eu, or make the changes yourself (EGI SSO account is required for editing.)
- Information about graphical environments to interact with the European Grid Infrastructure can be found in the EGI Application Database: http://appdb.egi.eu. (Both reusable tools for software developers and reusable applications for scientific end users are available in the database.)
- Information about command line interfaces of the middleware services of the European Grid Infrastructure can be found at https://wiki.egi.eu/wiki/User_Interfaces.
EMI
gLite Middleware
Service Name |
Implementation Type |
Client Application Programming Interface |
Client Command Line Interface |
Related Requirement | ||
---|---|---|---|---|---|---|
Language | Documentation | Platform (Linux/Windows) |
Documentation | |||
CREAM | Web Service (WSDL, SOAP). Java-Axis servlet (running inside the Apache Tomcat container) | gSOAP for C/C++, Axis for Java, perl module for Perl, Python module for Python, others | C++ API Tutorial C++ API Ref |
EMI UI (Scientific Linux 5/64bits) | EMI UI User Guide | #914 |
WMS | Web Service (WSDL, SOAP). Java-Axis servlet (running inside the Apache Tomcat container) | gSOAP for C/C++, Axis for Java, perl module for Perl, Python module for Python, others | Java API Ref | EMI UI (Scientific Linux 5/64bits) | EMI UI User Guide | #914 |
L&B | C Library + Web Service (WSDL, SOAP). | gSOAP for C/C++, Axis for Java, perl module for Perl, Python module for Python, others | C/C++, Java API Ref | EMI UI (Scientific Linux 5/64bits) | EMI UI User Guide | #914 |
VOMS | Web Service (WSDL, SOAP). Java-Axis servlet (running inside the Apache Tomcat container) | gSOAP for C/C++, Axis for Java, perl module for Perl, Python module for Python, others | C/C++, Java API Ref | EMI UI (Scientific Linux 5/64bits) | EMI UI User Guide | #914 |
BDII core, BDII top, BDII site | OpenLDAP Server | LCG_GFAL Library, C/C++, Java, Python, Perl, PHP, others | C/C++, Python API Ref (LCG_GFAL) LDAP API for C/C++, Java, Python, Perl, PHP, others. | EMI UI (Scientific Linux 5/64bits) | EMI UI User Guide OpenLDAP Client – read manual in linux. `man ldapsearch` |
#914 |
DPM | C/C++ Library | C/C++, Python, Perl | C/C++, Python API Ref (LCG_GFAL) C/C++, Python API Ref (SRM) SRM Specification (OGF) |
EMI UI (Scientific Linux 5/64bits) | EMI UI User Guide | #914 |
LFC | C/C++ Library | C/C++, Python, Perl | C++ API Ref Python API Tutorial |
EMI UI (Scientific Linux 5/64bits) | EMI UI User Guide | #914 |
GridFTP | GridFTP protocol (extended FTP) | C | C API Ref | EMI UI (Scientific Linux 5/64bits) | EMI UI User Guide | #914 |
ARC Middleware
Service Name |
Implementation Type |
Client Application Programming Interface |
Client Command Line Interface |
Related Requirement | ||
---|---|---|---|---|---|---|
Language | Documentation | Platform (Linux/Windows) |
Documentation | |||
ARC Core, ARC CE | Web Service (WSDL, SOAP). | gSOAP for C/C++, Axis for Java, perl module for Perl, Python module for Python, others | Python API based on ARClib SWIG Python API for extending ARC functionality |
EMI UI (Scientific Linux 5/64bits) LunARC Application Portal (multi-platform) ArcGUI Standalone User Interface (multi-platform) |
EMI UI User Guide | #914 |
ARC InfoSys | OpenLDAP Server | C/C++, Java, Python, Perl, PHP, others | LDAP API for C/C++, Java, Python, Perl, PHP, others | EMI UI (Linux) | EMI UI User Guide OpenLDAP Client – read manual in linux. `man ldapsearch` |
#914 |
ARC gridftp server | GridFTP protocol (extended FTP) | C | C API Ref | EMI UI (Linux) | EMI UI User Guide | #914 |
UNICORE Middleware
Service Name |
Implementation Type |
Client Application Programming Interface |
Client Command Line Interface |
Related Requirement | ||
---|---|---|---|---|---|---|
Language | Documentation | Platform (Linux/Windows) |
Documentation | |||
UNICORE WS | Web Service (WSDL, SOAP). WS-Resource Framework. Java-Axis servlet. | gSOAP for C/C++, Axis for Java, perl module for Perl, Python module for Python, others | UNICORE/X Server API Documentation (Java) Writing Unicore client,Tutorial (Java) |
Unicore Rich Client (Linux/Windows/Mac) Unicore CommandLine Client (Linux/Windows/Mac) |
EMI UI User Guide | #914 |
UNICORE Services Environment | Web Service (WSDL, SOAP). WS-Resource Framework. Java-Axis servlet. | gSOAP for C/C++, Axis for Java, perl module for Perl, Python module for Python, others | UNICORE WSRF Environment (Java) | Unicore Rich Client (Linux/Windows/Mac) Unicore CommandLine Client (Linux/Windows/Mac) |
EMI UI User Guide | #914 |
UNICORE HILA | Web Service (WSDL, SOAP). WS-Resource Framework. Java-Axis servlet. | gSOAP for C/C++, Axis for Java, perl module for Perl, Python module for Python, others | UNICORE High Level Architecture API | Unicore Rich Client (Linux/Windows/Mac) Unicore CommandLine Client (Linux/Windows/Mac) |
EMI UI User Guide | #914 |
AMGA Metadata Catalog
Service Name |
Implementation Type |
Client Application Programming Interface |
Client Command Line Interface |
Related Requirement | ||
---|---|---|---|---|---|---|
Language | Documentation | Platform (Linux/Windows) |
Documentation | |||
AMGA | Web Service (WSDL, SOAP). Java-Axis servlet. | gSOAP for C/C++, Axis for Java, perl module for Perl, Python module for Python, others | C++, Java, Python APIs | EMI UI (Scientific Linux 5/64bits) | EMI UI User Guide | #914 |
IGE
Globus Middleware
Service Name |
Implementation Type |
Client Application Programming Interface |
Client Command Line Interface |
Related Requirement | ||
---|---|---|---|---|---|---|
Language | Documentation | Platform (Linux/Windows) |
Documentation | |||
GRAM5 | GRAM protocol implementation. Job submission service. | Globus C Common Libraries,GSI C, GridFTP, C | C Common Libraries documentation Grid Security infrastructure in C GridFTP Documentation pages |
Linux/Mac | GRAM5 Documentation pages | |
GridFTP | GridFTP protocol implementation. File transfer service. | Globus C Common Libraries,GSI C, XIO, C | C Common Libraries documentation Grid Security infrastructure in C Globus XIO Library Documentation |
Linux/Mac | GridFTP Documentation pages | |
GSI-OpenSSH | GSI-OpenSSH (extended OpenSSH implementation with GSI Security authentication and delegation support) | Globus C Common Libraries,GSI C, OpenSSH library. | C Common Libraries documentation Grid Security infrastructure in C |
Linux/Mac | GSI-OpenSSH Documentation pages | |
MyProxy | X.509 PKI security credential management. | GSI C | Grid Security infrastructure in C | Linux/Mac | MyProxy Documentation pages | |
RLS | Replica Location Service. Replica metadata catalogue. | Globus C Common Libraries,GSI C, XIO, C | C Common Libraries documentation Grid Security infrastructure in C Globus XIO Library Documentation |
Linux/Mac | RLS Documentation pages |
SAGA
Service Name |
Implementation Type |
Client Application Programming Interface |
Client Command Line Interface |
Related Requirement | ||
---|---|---|---|---|---|---|
Language | Documentation | Platform (Linux/Windows) |
Documentation | |||
SAGA | Cross-platform Library | C++, Python, Java | SAGA API Standard Ref Java API Ref C++ API Ref Python API Ref |
Linux/Windows | SAGA Documentation |