Alert.png The wiki is deprecated and due to be decommissioned by the end of September 2022.
The content is being migrated to other supports, new updates will be ignored and lost.
If needed you can get in touch with EGI SDIS team using operations @ egi.eu.

Service APIs

From EGIWiki
Jump to navigation Jump to search

This page contains non-validated information about the APIs of the EGI middleware services. Consult with the provider of the particular service for further information. Use the EGI helpdesk to contact the middleware service providers.

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 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
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
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
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
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`
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
LFC C/C++ Library C/C++, Python, Perl C++ API Ref
Python API Tutorial
EMI UI (Scientific Linux 5/64bits) EMI UI User Guide
GridFTP GridFTP protocol (extended FTP) C C API Ref EMI UI (Scientific Linux 5/64bits) EMI UI User Guide

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
ARC InfoSys OpenLDAP Server C/C++, Java, Python, Perl, PHP, others 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`
ARC gridftp server GridFTP protocol (extended FTP) C C API Ref EMI UI (Scientific Linux 5/64bits) EMI UI User Guide

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)
EMI UI (Scientific Linux 5/64bits)
Unicore Rich Client (Linux/Windows/Mac)
Unicore CommandLine Client (Linux/Windows/Mac)
EMI UI User Guide
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) EMI UI (Scientific Linux 5/64bits)
Unicore Rich Client (Linux/Windows/Mac)
Unicore CommandLine Client (Linux/Windows/Mac)
EMI UI User Guide
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 EMI UI (Scientific Linux 5/64bits)
Unicore Rich Client (Linux/Windows/Mac)
Unicore CommandLine Client (Linux/Windows/Mac)
EMI UI User Guide

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

ARGUS Authorization Service

Service
Name
Implementation
Type
Client Application
Programming Interface
Client Command
Line Interface
Related
Requirement
Language Documentation Platform
(Linux/Windows)
Documentation
ARGUS Web Service (WSDL, SOAP). Java-Axis servlet. gSOAP for C/C++, Axis for Java, perl module for Perl, Python module for Python, others C API
Java API
EMI ARGUS (Scientific Linux 5/64bits) EMI ARGUS Admin Guide
ARGUS-EES Web Service (WSDL, SOAP). Java-Axis servlet. gSOAP for C/C++, Axis for Java, perl module for Perl, Python module for Python, others C API EMI ARGUS-EES (Scientific Linux 5/64bits) EMI ARGUS-EES Admin Guide

dCache Distributed Storage System

Service
Name
Implementation
Type
Client Application
Programming Interface
Client Command
Line Interface
Related
Requirement
Language Documentation Platform
(Linux/Windows)
Documentation
dCache Server software is written in Java. C/Java C API EMI UI (Scientific Linux 5/64bits) EMI User Guide

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


Related Requirements

  • #914 - LSGC would like to see WS and Java API for all middleware services.
  • #2769 - APIs are not integrated enough. For example to transfer a single file from one site to another one has to use three different APIs.