Skip to main content
Jump to: navigation, search

Difference between revisions of "BaSyx / Documentation / API / Registry"

m (Removes footer "BaSyx project links")
(Replaces outdated API documentation with link to SwaggerHub)
Line 1: Line 1:
 
The BaSys 4.0 Registry enables registration and lookup of Asset Administration Shells within defined system boundaries. Entities that provide Asset Administration Shells including their submodels may register and hence enable other participants to find them. The necessary information required for registration amongst others are unique identifiers for the Administration Shell and her respective Asset, endpoint information regarding the Asset Administration Shell's API and their submodel service provider.  
 
The BaSys 4.0 Registry enables registration and lookup of Asset Administration Shells within defined system boundaries. Entities that provide Asset Administration Shells including their submodels may register and hence enable other participants to find them. The necessary information required for registration amongst others are unique identifiers for the Administration Shell and her respective Asset, endpoint information regarding the Asset Administration Shell's API and their submodel service provider.  
  
{| class="wikitable"
+
The complete registry API is documented [https://app.swaggerhub.com/apis/BaSyx/BaSyx_Registry_API/v1#/ here]
 
+
|-
+
| colspan="3" | '''Asset Administration Shell Registry'''
+
 
+
|- style="border: 2px solid #61affe; background-color:rgba(97,175,254,.1);"
+
| style="color:black" | GET
+
| /api/v1/registry
+
| '''Description'''
+
* Retrieves all registered Asset Administration Shells within a defined system (e.g. site, area, production line, station)
+
 
+
 
+
'''Response codes'''
+
* 200: Returns a list of found Asset Administration Shells
+
* 400: Bad Request
+
* 502: Bad Gateway
+
 
+
|- style="border: 2px solid #49cc90; background-color:rgba(73,204,144,.1);"
+
| style="color:black" | POST
+
| /api/v1/registry
+
| '''Description'''
+
* Registers a new Asset Administration Shell
+
 
+
 
+
'''Parameter'''
+
* ''(body)'': The Asset Administration Shell descriptor object
+
 
+
 
+
'''Response codes'''
+
* 201: The Asset Administration Shell was created successfully
+
* 400: The syntax of the passed Asset Administration Shell is not valid or malformed request
+
* 422: The passed Asset Administration Shell conflicts with already registered Asset Administration Shells
+
* 502: Bad Gateway
+
 
+
|- style="border: 2px solid #61affe; background-color:rgba(97,175,254,.1);"
+
| style="color:black" | GET
+
| /api/v1/registry/{aasId}
+
| '''Description'''
+
* Retrieves a specific Asset Administration Shell
+
 
+
 
+
'''Parameter'''
+
* ''aasId'': The Asset Administration Shell's unique id
+
 
+
 
+
'''Response codes'''
+
* 200: Returns the requested Asset Administration Shell
+
* 400: Bad Request
+
* 404: No Asset Administration Shell with passed id found
+
* 502: Bad Gateway
+
 
+
|- style="border: 2px solid #fca130; background-color:rgba(252,161,48,.1);"
+
| style="color:black" | PUT
+
| /api/v1/registry/{aasId}
+
| '''Description'''
+
* Renews a specific Asset Administration Shell's registration
+
 
+
 
+
'''Parameter'''
+
* ''aasId'': The Asset Administration Shell's unique id
+
 
+
 
+
'''Response codes'''
+
* 204: Success
+
* 200: The Asset Administration Shell's registration was successfully renewed
+
* 400: The syntax of the passed Asset Administration Shell is not valid or malformed request
+
* 404: No Asset Administration Shell with passed id found
+
* 502: Bad Gateway
+
 
+
|- style="border: 2px solid #f93e3e; background-color:rgba(249,62,62,.1);"
+
| style="color:black" | DELETE
+
| /api/v1/registry/{aasId}
+
| '''Description'''
+
* Deletes a specific Asset Administration Shell
+
 
+
 
+
'''Parameter'''
+
* ''aasId'': The Asset Administration Shell's unique id
+
 
+
 
+
'''Response codes'''
+
* 204: Success
+
* 200: The Asset Administration Shell was deleted successfully
+
* 400: Bad Request
+
* 404: No Asset Administration Shell with passed id found
+
* 502: Bad Gateway
+
 
+
|- style="border: 2px solid #61affe; background-color:rgba(97,175,254,.1);"
+
| style="color:black" | GET
+
| /api/v1/registry/{aasId}/submodels
+
| '''Description'''
+
* Retrieves all Submodels from a specific Asset Administration Shell
+
 
+
 
+
'''Parameter'''
+
* ''aasId'': The Asset Administration Shell's unique id
+
 
+
 
+
'''Response codes'''
+
* 200: Returns a list of found Submodels
+
* 400: Bad Request
+
* 404: No Asset Administration Shell with passed id found
+
* 502: Bad Gateway
+
 
+
|- style="border: 2px solid #49cc90; background-color:rgba(73,204,144,.1);"
+
| style="color:black" | POST
+
| /api/v1/registry/{aasId}/submodels
+
| '''Description'''
+
* Adds a new Submodel to an existing resp. registered Asset Administration Shell
+
 
+
 
+
'''Parameter'''
+
* ''aasId'': The Asset Administration Shell's unique id
+
* ''(body)'': The Submodel descriptor object
+
 
+
 
+
'''Response codes'''
+
* 201: The Submodel was created successfully
+
* 400: The syntax of the passed Submodel is not valid or malformed request
+
* 404: No Asset Administration Shell with passed id found
+
* 422: The passed Submodel conflicts with already registered Submodels
+
* 502: Bad Gateway
+
 
+
|- style="border: 2px solid #61affe; background-color:rgba(97,175,254,.1);"
+
| style="color:black" | GET
+
| /api/v1/registry/{aasId}/submodels/{submodelIdShort}
+
| '''Description'''
+
* Retrieves a specific Submodel from a specific Asset Administration Shell
+
 
+
 
+
'''Parameter'''
+
* ''aasId'': The Asset Administration Shell's unique id
+
* ''submodelIdShort'': The Submodel's short id (idShort)
+
 
+
 
+
'''Response codes'''
+
* 200: Returns the requested Submodels
+
* 400: Bad Request
+
* 404: No Asset Administration Shell / Submodel with passed id found
+
* 502: Bad Gateway
+
 
+
|- style="border: 2px solid #f93e3e; background-color:rgba(249,62,62,.1);"
+
| style="color:black" | DELETE
+
| /api/v1/registry/{aasId}/submodels/{submodelIdShort}
+
| '''Description'''
+
* Deletes a specific Submodel from a specific Asset Administration Shell
+
 
+
 
+
'''Parameter'''
+
* ''aasId'': The Asset Administration Shell's unique id
+
* ''submodelIdShort'': The Submodel's short id (idShort)
+
 
+
 
+
'''Response codes'''
+
* 204: Success
+
* 200: The Submodel was deleted successfully
+
* 400: Bad Request
+
* 404: No Asset Administration Shell / Submodel with passed id found
+
* 502: Bad Gateway
+
 
+
|}
+
 
+
 
+
 
+
In the following, an example body for the PUT/POST request is shown. Parameters with a ''$'' prefix should be modified according to the specific AAS to be registered.
+
 
+
{
+
                "idShort" : "$aasName",
+
                "identification" : {
+
                                                "id" : "$aasId",
+
                                                "idType" : "Custom"
+
                },
+
    "endpoints" : [
+
                {
+
                                "type" : "http",
+
                                "address" : "$http://localhost:5080"
+
                }],
+
    "submodels" : [{
+
                "idShort" : "$submodelName",
+
                "identification" : {
+
                                                "id" : "$submodelId",
+
                                                "idType" : "Custom"
+
                                },
+
                                "endpoints" : [
+
                {
+
                                "type" : "http",
+
                                "address" : "$http://localhost:5080/aas/submodels/submodelName"
+
                }]
+
    }]
+
}
+

Revision as of 05:02, 25 August 2020

The BaSys 4.0 Registry enables registration and lookup of Asset Administration Shells within defined system boundaries. Entities that provide Asset Administration Shells including their submodels may register and hence enable other participants to find them. The necessary information required for registration amongst others are unique identifiers for the Administration Shell and her respective Asset, endpoint information regarding the Asset Administration Shell's API and their submodel service provider.

The complete registry API is documented here

Copyright © Eclipse Foundation, Inc. All Rights Reserved.