A collection of web services for apm and other ABAP packages.
The services are implemented as serverless functions and intended for easy consumption in ABAP.
Note: This is a free service with limited performance and scalability.
This is a service for the shields.io endpoint compatible JSON.
The service was created by Alexander Tsybulsky from Ukraine. Please support Ukraine!
You can find the original code on GitHub and the original documentation on here.
The service parses ABAP code in your repository to find the value of a version constant.
Here's a typical example:
INTERFACE zif_project_version PUBLIC.
CONSTANTS version TYPE string VALUE '3.2.1'.
ENDINTERFACE.
Markdown for creating this ABAP Package Version Badge:

https://shield.abappm.com/$TYPE/$OWNER/$REPO/[-$BRANCH/]$PATH[/$CONSTANT_NAME]
$TYPE = 'github', 'gitlab', or 'bitbucket' (open an issue if you need more)
$OWNER = Your organization or user name
$REPO = Your repository name
$BRANCH = Branch name prefixed with '-' (optional, 'master' by default)
$PATH = Path to ABAP file with version constant
$CONSTANT_NAME = Name of the constant that contains the version (optional, 'version' by default)
All #-symbols in the URL have to be encoded with %23.
Examples:
https://shield.abappm.com/github/abapGit/abapGit/src/zif_abapgit_version.intf.abap/c_abap_version
https://shield.abappm.com/gitlab/fernandofurtado/abap-markdown/src/zmarkdown.clas.abap
https://shield.abappm.com/bitbucket/marcfbe/abapgit/-main/src/zif_test.intf.abap/c_version
https://shield.abappm.com/github/Marc-Bernard-Tools/MBT-Listcube/src/%23mbtools%23cl_tool_bw_listcube.clas.abap
If your repository supports APACK i.e. you have an .apack-manifest.xml
file in your repository, you can also use the following format:
Examples:
https://shield.abappm.com/github/ABAP-Logger/ABAP-Logger/.apack-manifest.xml
or
https://shield.abappm.com/github/ABAP-Logger/demos/.apack-manifest.xml/dependencies/github.com/ABAP-Logger/ABAP-Logger
Example:
{
"schemaVersion": 1,
"label": "abap package version",
"message": "1.131.0",
"color": "orange"
}
To get the badge image, pass the URL from above to the img.shields.io endpoint. You can also customize the badge label and color (see shields.io for more options):
https://img.shields.io/endpoint?url=https://shield.abappm.com/...
or
https://img.shields.io/endpoint?url=https://shield.abappm.com/...&label=version&color=blue
Example:
https://img.shields.io/endpoint?url=https://shield.abappm.com/github/abapGit/abapGit/src/zif_abapgit_version.intf.abap/c_abap_version&label=version&color=blue
or as markdown

Important
If you are refering to a namespaced object, all #-symbols in the URL have to be encoded with %2523
.
Example: https://img.shields.io/endpoint?url=https://shield.abappm.com/github/Marc-Bernard-Tools/MBT-Listcube/src/%2523mbtools%2523cl_tool_bw_listcube.clas.abap
You can test the services via an HTML interface at https://tools.abappm.com.
Easy way to retrieve the SSL certificates required to connect to a domain via SSL.
Pass the domain name as a parameter to the following URL:
curl -X GET https://tools.abappm.com/api/v1/certificates?domain=example.com
The result of the call includes the certificate of the domain server as well as the root and any intermediate certificates.
Example (abbreviated certificate data):
{
"domain": "github.com",
"peerCertificate": {
"issuer": {
"C": "GB",
"ST": "Greater Manchester",
"L": "Salford",
"O": "Sectigo Limited",
"CN": "Sectigo ECC Domain Validation Secure Server CA"
},
"validFrom": "2024-03-07T00:00:00.000Z",
"validTo": "2025-03-07T23:59:59.000Z",
"subject": { "CN": "github.com" },
"cert": "MIIEozCC...siesA"
},
"intermediateCertificates": [
{
"issuer": {
"C": "US",
"ST": "New Jersey",
"L": "Jersey City",
"O": "The USERTRUST Network",
"CN": "USERTrust ECC Certification Authority"
},
"validFrom": "2018-11-02T00:00:00.000Z",
"validTo": "2030-12-31T23:59:59.000Z",
"subject": {
"C": "GB",
"ST": "Greater Manchester",
"L": "Salford",
"O": "Sectigo Limited",
"CN": "Sectigo ECC Domain Validation Secure Server CA"
},
"cert": "MIIDqDCCA...QcKmc8fmA=="
},
{
"issuer": {
"C": "GB",
"ST": "Greater Manchester",
"L": "Salford",
"O": "Comodo CA Limited",
"CN": "AAA Certificate Services"
},
"validFrom": "2019-03-12T00:00:00.000Z",
"validTo": "2028-12-31T23:59:59.000Z",
"subject": {
"C": "US",
"ST": "New Jersey",
"L": "Jersey City",
"O": "The USERTRUST Network",
"CN": "USERTrust ECC Certification Authority"
},
"cert": "MIID0zCCA...oEeJBuv/c="
},
{
"issuer": {
"C": "GB",
"ST": "Greater Manchester",
"L": "Salford",
"O": "Comodo CA Limited",
"CN": "AAA Certificate Services"
},
"validFrom": "2004-01-01T00:00:00.000Z",
"validTo": "2028-12-31T23:59:59.000Z",
"subject": {
"C": "GB",
"ST": "Greater Manchester",
"L": "Salford",
"O": "Comodo CA Limited",
"CN": "AAA Certificate Services"
},
"cert": "MIIEMjCCAxqgAw...pNpaYbg=="
}
]
}
You can test the services via an HTML interface at https://tools.abappm.com.
All contributions are welcome! Read our Contribution Guidelines, fork this repo, and create a pull request.
This project uses the following open source projects. Please support these great projects!
- ABAP-Package-Version-Shield, Alexander Tsybulsky, ISC
Made with ❤️ in Canada
Copyright 2024 apm.to Inc. https://apm.to