BSI-TR-03165: TSM-Backend
- API version: 1.0.4
- Build date: 2023-07-07T13:15:38.560+02:00[Europe/Berlin]
This visual representation describes the TSM-Backend API for a Trusted Service Management System (TSMS) using Swagger UI. It serves as a complement to the BSI-TR-03165 guideline. In case of any discrepancies, please refer to the written guideline. A TSM-Backend is an IT system within a TSMS that offers management functions in the form of a REST-API. The TSM-Backend is a secure repository for various configurations, flavors, and resources required for installing an JavaCard Applet on secure elements such as eSE and eSIM. With this API, service providers can create, read, update, and delete files and configuration settings required for managing their Applets. Functionality: * upload JavaCard *.cap files to TSM-Backend * define a service which consists of one or multiple *.cap files * versionize the service * define hardware variants for each service - called flavors * specify technical requirements for each flavor, e.g. minimal JavaCard version
Automatically generated by the Swagger Codegen
Building the API client library requires:
- Java 1.7+
- Maven/Gradle
To install the API client library to your local Maven repository, simply execute:
mvn clean install
To deploy it to a remote Maven repository instead, configure the settings of the repository and execute:
mvn clean deploy
Refer to the OSSRH Guide for more information.
Add this dependency to your project's POM:
<dependency>
<groupId>de.bund.bsi.tsms.tsm-rest-api</groupId>
<artifactId>java-client</artifactId>
<version>1.0.4</version>
<scope>compile</scope>
</dependency>
Add this dependency to your project's build file:
compile "de.bund.bsi.tsms.tsm-rest-api:java-client:1.0.4"
At first generate the JAR by executing:
mvn clean package
Then manually install the following JARs:
target/java-client-1.0.4.jar
target/lib/*.jar
Please follow the installation instruction and execute the following Java code:
import de.bund.bsi.tsms.tsmrestapi.*;
import de.bund.bsi.tsms.tsmrestapi.auth.*;
import de.bund.bsi.tsms.tsmrestapi.model.*;
import de.bund.bsi.tsms.tsmrestapi.api.ApplicationConfigsApi;
import java.io.File;
import java.util.*;
public class ApplicationConfigsApiExample {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
ApplicationConfigsApi apiInstance = new ApplicationConfigsApi();
ApplicationConfig body = new ApplicationConfig(); // ApplicationConfig |
try {
ApplicationConfig result = apiInstance.createAppConfig(body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling ApplicationConfigsApi#createAppConfig");
e.printStackTrace();
}
}
}
import de.bund.bsi.tsms.tsmrestapi.*;
import de.bund.bsi.tsms.tsmrestapi.auth.*;
import de.bund.bsi.tsms.tsmrestapi.model.*;
import de.bund.bsi.tsms.tsmrestapi.api.ApplicationConfigsApi;
import java.io.File;
import java.util.*;
public class ApplicationConfigsApiExample {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
ApplicationConfigsApi apiInstance = new ApplicationConfigsApi();
UUID applicationConfigId = new UUID(); // UUID | identifier of the referred ApplicationConfig
try {
apiInstance.deleteAppConfig(applicationConfigId);
} catch (ApiException e) {
System.err.println("Exception when calling ApplicationConfigsApi#deleteAppConfig");
e.printStackTrace();
}
}
}
import de.bund.bsi.tsms.tsmrestapi.*;
import de.bund.bsi.tsms.tsmrestapi.auth.*;
import de.bund.bsi.tsms.tsmrestapi.model.*;
import de.bund.bsi.tsms.tsmrestapi.api.ApplicationConfigsApi;
import java.io.File;
import java.util.*;
public class ApplicationConfigsApiExample {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
ApplicationConfigsApi apiInstance = new ApplicationConfigsApi();
UUID applicationConfigId = new UUID(); // UUID | identifier of the referred ApplicationConfig
try {
ApplicationConfig result = apiInstance.getAppConfig(applicationConfigId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling ApplicationConfigsApi#getAppConfig");
e.printStackTrace();
}
}
}
import de.bund.bsi.tsms.tsmrestapi.*;
import de.bund.bsi.tsms.tsmrestapi.auth.*;
import de.bund.bsi.tsms.tsmrestapi.model.*;
import de.bund.bsi.tsms.tsmrestapi.api.ApplicationConfigsApi;
import java.io.File;
import java.util.*;
public class ApplicationConfigsApiExample {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
ApplicationConfigsApi apiInstance = new ApplicationConfigsApi();
UUID applicationConfigId = new UUID(); // UUID | identifier of the referred ApplicationConfig
try {
List<ExecutableModule> result = apiInstance.listAppConfigRelatedEms(applicationConfigId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling ApplicationConfigsApi#listAppConfigRelatedEms");
e.printStackTrace();
}
}
}
import de.bund.bsi.tsms.tsmrestapi.*;
import de.bund.bsi.tsms.tsmrestapi.auth.*;
import de.bund.bsi.tsms.tsmrestapi.model.*;
import de.bund.bsi.tsms.tsmrestapi.api.ApplicationConfigsApi;
import java.io.File;
import java.util.*;
public class ApplicationConfigsApiExample {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
ApplicationConfigsApi apiInstance = new ApplicationConfigsApi();
UUID applicationConfigId = new UUID(); // UUID | identifier of the referred ApplicationConfig
try {
List<Flavor> result = apiInstance.listAppConfigRelatedFlavors(applicationConfigId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling ApplicationConfigsApi#listAppConfigRelatedFlavors");
e.printStackTrace();
}
}
}
import de.bund.bsi.tsms.tsmrestapi.*;
import de.bund.bsi.tsms.tsmrestapi.auth.*;
import de.bund.bsi.tsms.tsmrestapi.model.*;
import de.bund.bsi.tsms.tsmrestapi.api.ApplicationConfigsApi;
import java.io.File;
import java.util.*;
public class ApplicationConfigsApiExample {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
ApplicationConfigsApi apiInstance = new ApplicationConfigsApi();
UUID applicationConfigId = new UUID(); // UUID | identifier of the referred ApplicationConfig
try {
List<Service> result = apiInstance.listAppConfigRelatedServices(applicationConfigId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling ApplicationConfigsApi#listAppConfigRelatedServices");
e.printStackTrace();
}
}
}
import de.bund.bsi.tsms.tsmrestapi.*;
import de.bund.bsi.tsms.tsmrestapi.auth.*;
import de.bund.bsi.tsms.tsmrestapi.model.*;
import de.bund.bsi.tsms.tsmrestapi.api.ApplicationConfigsApi;
import java.io.File;
import java.util.*;
public class ApplicationConfigsApiExample {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
ApplicationConfigsApi apiInstance = new ApplicationConfigsApi();
try {
List<ApplicationConfig> result = apiInstance.listAppConfigs();
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling ApplicationConfigsApi#listAppConfigs");
e.printStackTrace();
}
}
}
import de.bund.bsi.tsms.tsmrestapi.*;
import de.bund.bsi.tsms.tsmrestapi.auth.*;
import de.bund.bsi.tsms.tsmrestapi.model.*;
import de.bund.bsi.tsms.tsmrestapi.api.ApplicationConfigsApi;
import java.io.File;
import java.util.*;
public class ApplicationConfigsApiExample {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
ApplicationConfigsApi apiInstance = new ApplicationConfigsApi();
ApplicationConfig body = new ApplicationConfig(); // ApplicationConfig |
UUID applicationConfigId = new UUID(); // UUID | identifier of the referred ApplicationConfig
try {
ApplicationConfig result = apiInstance.modifyAppConfig(body, applicationConfigId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling ApplicationConfigsApi#modifyAppConfig");
e.printStackTrace();
}
}
}
All URIs are relative to /
Class | Method | HTTP request | Description |
---|---|---|---|
ApplicationConfigsApi | createAppConfig | POST /application-configs | Create a new ApplicationConfig. |
ApplicationConfigsApi | deleteAppConfig | DELETE /application-configs/{applicationConfigId} | Delete a certain ApplicationConfig. All data is deleted. Referenc... |
ApplicationConfigsApi | getAppConfig | GET /application-configs/{applicationConfigId} | Get details of a certain ApplicationConfig. |
ApplicationConfigsApi | listAppConfigRelatedEms | GET /application-configs/{applicationConfigId}/executable-modules | List all ExecutableModules that use a certain ApplicationConfig. |
ApplicationConfigsApi | listAppConfigRelatedFlavors | GET /application-configs/{applicationConfigId}/flavors | List all Flavors that use a certain ApplicationConfig. |
ApplicationConfigsApi | listAppConfigRelatedServices | GET /application-configs/{applicationConfigId}/services | List all Services that use a certain ApplicationConfig. |
ApplicationConfigsApi | listAppConfigs | GET /application-configs | List all ApplicationConfigs of the authenticated ServiceProvider. |
ApplicationConfigsApi | modifyAppConfig | PUT /application-configs/{applicationConfigId} | Update details of an existing ApplicationConfig. |
AuthApi | createAccessToken | POST /auth | Authenticate to the TSM-Backend by sending a long-term token, and... |
CertificatesApi | createCertAndUploadBinary | POST /certificates | Create a new Certificate and upload corresponding binary data. |
CertificatesApi | deleteCert | DELETE /certificates/{certificateId} | Delete a certain Certificate. All data, including binary data, is... |
CertificatesApi | getCert | GET /certificates/{certificateId} | Get details of a certain Certificate. |
CertificatesApi | getCertBinary | GET /certificates/{certificateId}/binary | Get binary data of a certain Certificate. |
CertificatesApi | listCertRelatedAppConfigs | GET /certificates/{certificateId}/application-configs | List all ApplicationConfigs that use a certain Certificate. |
CertificatesApi | listCertRelatedFlavors | GET /certificates/{certificateId}/flavors | List all Flavors that use a certain Certificate. |
CertificatesApi | listCertRelatedServices | GET /certificates/{certificateId}/services | List all Services that use a certain Certificate. |
CertificatesApi | listCertRelatedSposConfigs | GET /certificates/{certificateId}/spos-configs | List all SposConfigs that use a certain Certificate. |
CertificatesApi | listCerts | GET /certificates | List all Certificates of the authenticated ServiceProvider. |
CertificatesApi | modifyCertAndOverwriteBinary | PUT /certificates/{certificateId} | Update details and overwrite binary data of an existing Certificate. |
ExecutableLoadFilesApi | createElfAndUploadBinary | POST /executable-load-files | Create a new ExecutableLoadFile and upload corresponding binary d... |
ExecutableLoadFilesApi | deleteElf | DELETE /executable-load-files/{elfId} | Delete a certain ExecutableLoadFile. All data, including binary d... |
ExecutableLoadFilesApi | getElf | GET /executable-load-files/{elfId} | Get details of a certain ExecutableLoadFile. |
ExecutableLoadFilesApi | getElfBinary | GET /executable-load-files/{elfId}/binary | Get binary data of a certain ExecutableLoadFile. |
ExecutableLoadFilesApi | getEm | GET /executable-load-files/{elfId}/executable-modules/{emId} | Get details of a certain ExecutableModule of a certain Executable... |
ExecutableLoadFilesApi | listElfRelatedAppConfigs | GET /executable-load-files/{elfId}/executable-modules/{emId}/application-configs | Return the ApplicationConfigs that apply to a certain ExecutableM... |
ExecutableLoadFilesApi | listElfRelatedFlavors | GET /executable-load-files/{elfId}/services/{serviceId}/flavors | List all Flavors that use a certain ExecutableLoadFile. |
ExecutableLoadFilesApi | listElfRelatedSecureComponentProfiles | GET /executable-load-files/{elfId}/services/{serviceId}/secure-component-profiles | List all SecureComponentProfiles associated to certain Service th... |
ExecutableLoadFilesApi | listElfRelatedServices | GET /executable-load-files/{elfId}/services | List all Services that use a certain ExecutableLoadFile. |
ExecutableLoadFilesApi | listElfRelatedVersions | GET /executable-load-files/{elfId}/services/{serviceId}/versions | List all Versions of a certain Service that use a certain Executa... |
ExecutableLoadFilesApi | listElfs | GET /executable-load-files | List all ExecutableLoadFiles of the authenticated ServiceProvider. |
ExecutableLoadFilesApi | listEms | GET /executable-load-files/{elfId}/executable-modules | List all ExecutableModules of a certain ExecutableLoadFile. |
ExecutableLoadFilesApi | modifyElfAndOverwriteBinary | PUT /executable-load-files/{elfId} | Update details and overwrite binary data of an existing Executabl... |
PersonalizationScriptsApi | createPersoScriptAndUploadBinary | POST /personalization-scripts | Create a new PersonalizationScript and upload corresponding binar... |
PersonalizationScriptsApi | deletePersoScript | DELETE /personalization-scripts/{personalizationScriptId} | Delete a certain PersonalizationScript. All data, including binar... |
PersonalizationScriptsApi | getPersoScript | GET /personalization-scripts/{personalizationScriptId} | Get details of a certain PersonalizationScript. |
PersonalizationScriptsApi | getScriptBinary | GET /personalization-scripts/{personalizationScriptId}/binary | Get binary data of a certain PersonalizationScript. |
PersonalizationScriptsApi | listPersoScripts | GET /personalization-scripts | List all PersonalizationScripts of the authenticated ServiceProvider. |
PersonalizationScriptsApi | listScriptRelatedAppConfigs | GET /personalization-scripts/{personalizationScriptId}/application-configs | List all ApplicationConfigs that use a certain PersonalizationScript. |
PersonalizationScriptsApi | listScriptRelatedFlavors | GET /personalization-scripts/{personalizationScriptId}/flavors | List all Flavors that use a certain PersonalizationScript. |
PersonalizationScriptsApi | listScriptRelatedServices | GET /personalization-scripts/{personalizationScriptId}/services | List all Services that use a certain PersonalizationScript. |
PersonalizationScriptsApi | modifyPersoScriptAndOverwriteBinary | PUT /personalization-scripts/{personalizationScriptId} | Update details and overwrite binary data of an existing Personali... |
SecureComponentProfilesApi | getSecureComponentProfile | GET /secure-component-profiles/{scpId} | Get details of a certain SecureComponentProfile. |
SecureComponentProfilesApi | listScpRelatedElfs | GET /secure-component-profiles/{scpId}/elfs | List all ELFs that use a certain SecureComponentProfile. |
SecureComponentProfilesApi | listScpRelatedFlavors | GET /secure-component-profiles/{scpId}/services/{serviceId}/flavors | List all Flavors of a certain Service that use a certain SecureCo... |
SecureComponentProfilesApi | listScpRelatedServices | GET /secure-component-profiles/{scpId}/services | List all Services that use a certain SecureComponentProfile. |
SecureComponentProfilesApi | listScpRelatedVersions | GET /secure-component-profiles/{scpId}/services/{serviceId}/versions | List all Versions of a certain Service that use a certain SecureC... |
SecureComponentProfilesApi | listSecureComponentProfiles | GET /secure-component-profiles | List all available SecureComponentProfiles. |
ServiceprovidersApi | getAccountInformation | GET /serviceproviders/current | Get details of the SP account. |
ServicesApi | createFlavor | POST /services/{serviceId}/flavors | Create a new Flavor for a certain Service. |
ServicesApi | createService | POST /services | Create a new Service. |
ServicesApi | createVersion | POST /services/{serviceId}/versions | Create a new Version of a certain Service. |
ServicesApi | deleteFlavor | DELETE /services/{serviceId}/flavors/{flavorId} | Delete a certain Flavor. All data, including associated Applicati... |
ServicesApi | deleteService | DELETE /services/{serviceId} | Delete a certain Service. All data, including associated Versions... |
ServicesApi | deleteVersion | DELETE /services/{serviceId}/versions/{tag} | Delete a certain Version. All data is deleted. Referenced Flavors... |
ServicesApi | getFlavor | GET /services/{serviceId}/flavors/{flavorId} | Get details of a certain Flavor. |
ServicesApi | getService | GET /services/{serviceId} | Get details of a certain Service. |
ServicesApi | getVersion | GET /services/{serviceId}/versions/{tag} | Get details of a certain Version. |
ServicesApi | linkElfs | POST /services/{serviceId}/flavors/{flavorId}/executable-load-files | Add additional ExecutableLoadFiles to a certain Flavor. In case E... |
ServicesApi | linkFlavors | POST /services/{serviceId}/versions/{tag}/flavors | Add additional Flavors to a certain Version and configure the Sec... |
ServicesApi | linkSecureComponentProfiles | POST /services/{serviceId}/versions/{tag}/secure-component-profiles | Add additional SecureComponentProfiles to a certain Version and c... |
ServicesApi | listAssociatedSecureComponentProfiles | GET /services/{serviceId}/versions/{tag}/flavors/{flavorId}/secure-component-profiles | List SecureComponentProfiles associated to a certain Flavor of a ... |
ServicesApi | listFlavors | GET /services/{serviceId}/flavors | List all Flavors of a certain Service. |
ServicesApi | listLinkedElfs | GET /services/{serviceId}/flavors/{flavorId}/executable-load-files | List all ExecutableLoadFiles used by a certain Flavor. |
ServicesApi | listLinkedFlavors | GET /services/{serviceId}/versions/{tag}/flavors | List all Flavors used by a certain Version. |
ServicesApi | listLinkedSecureComponentProfiles | GET /services/{serviceId}/versions/{tag}/secure-component-profiles | List all SecureComponentProfiles used by a certain Version. |
ServicesApi | listServiceRelatedAppConfigs | GET /services/{serviceId}/flavors/{flavorId}/application-configs | List all ApplicationConfigs that use a certain Flavor. |
ServicesApi | listServiceRelatedVersions | GET /services/{serviceId}/flavors/{flavorId}/versions | List all Versions that use a certain Flavor. |
ServicesApi | listServices | GET /services | List all Services of the authenticated ServiceProvider. |
ServicesApi | listVersions | GET /services/{serviceId}/versions | List all Versions of a certain Service. |
ServicesApi | modifyFlavor | PUT /services/{serviceId}/flavors/{flavorId} | Update details of an existing Flavor. |
ServicesApi | modifyService | PUT /services/{serviceId} | Update details of an existing Service. |
ServicesApi | modifyVersion | PUT /services/{serviceId}/versions/{tag} | Update details of an existing Version. |
ServicesApi | publishFlavor | POST /services/{serviceId}/flavors/{flavorId}/publish | Publish a Flavor. After publishing, the Flavor can be used for in... |
ServicesApi | unlinkElfs | PUT /services/{serviceId}/flavors/{flavorId}/executable-load-files | Remove ExecutableLoadFiles from a certain Flavor. In case ELF Ids... |
ServicesApi | unlinkFlavors | PUT /services/{serviceId}/versions/{tag}/flavors | Remove Flavors from a certain Version. In case Flavor Ids provide... |
ServicesApi | unlinkSecureComponentProfiles | PUT /services/{serviceId}/versions/{tag}/secure-component-profiles | Remove SecureComponentProfiles from a certain Version. In case Se... |
SposConfigsApi | createSposConfig | POST /spos-configs | Create a new SposConfig and set all corresponding details. |
SposConfigsApi | deleteSposConfig | DELETE /spos-configs/{sposConfigId} | Delete a certain SposConfig. All data is deleted. Deletion SHALL ... |
SposConfigsApi | getSposConfig | GET /spos-configs/{sposConfigId} | Get details of a certain SposConfig. |
SposConfigsApi | listSposConfigRelatedServices | GET /spos-configs/{sposConfigId}/services | List all Services that use a certain SposConfig. |
SposConfigsApi | listSposConfigs | GET /spos-configs | List all SposConfigs of the authenticated ServiceProvider. |
SposConfigsApi | modifySposConfig | PUT /spos-configs/{sposConfigId} | Update details of an existing SposConfig. |
- ActivationConfig
- ApplicationConfig
- ApplicationInstantiationConfig
- CAP
- Certificate
- ExecutableLoadFile
- ExecutableModule
- FeatureConfig
- Flavor
- GeneralError
- InlineResponse200
- InstallConfig
- PersonalizationConfig
- PersonalizationScript
- SecureComponentProfile
- Service
- ServiceProvider
- SposConfig
- TechnicalRequirements
- Version
Authentication schemes defined for the API:
It's recommended to create an instance of ApiClient
per thread in a multithreaded environment to avoid any potential issues.