+The simulator supports multiple A1 interface versions (version of the open API yaml file):
+- OSC 2.1.0, version-id: OSC\_2.1.0
+- A1 Standard 1.1.3, version-id: STD\_1.1.3
+- 1.1.x-alpha.2 , version-id: 1.1.x-alpha.2
+
+All versions are supported by the same container, see section 'Configuring the simulator' below for details about how to the start the simulator with the correct version.
+
+The overall folder structure is (relative to the location of this README file):
+. Dockerfile and README
+api The open api yaml for each supported version
+src Python source code for each supported version
+test Basic test
+
+The simulator handles the requests that are defined in the A1 open API yaml file. All these requests are in the a1.py file in the source folder. In addition, a number of administrative functions are also supported and implemented by the main.py in the source folder.
+
+The section below outlines the supported open api REST operations as well as the adminstrative REST operations.
+
+# Supported operations in simulator OSC 2.1.0
+
+URIs for A1:
+ - GET, do a healthcheck: http://localhost:8085/healthcheck
+ - GET, get all policy type ids: http://localhost:8085/policytypes
+ - DELETE, delete a policy type: http://localhost:8085/policytypes/{policy\_type\_id}
+ - GET, get a policy type: http://localhost:8085/policytypes/{policy\_type\_id}
+ - PUT, create/update a policy type: http://localhost:8085/policytypes/{policy\_type\_id}
+ - GET, get all policy ids for a type: http://localhost:8085/policytypes/{policy\_type\_id}/policies
+ - DELETE, delete a policy: http://localhost:8085/policytypes/{policy\_type\_id}/policies/{policy\_instance\_id}
+ - GET, get a policy: http://localhost:8085/policytypes/{policy\_type\_id}/policies/{policy\_instance\_id}
+ - PUT, create/update a policy: http://localhost:8085/policytypes/{policy\_type\_id}/policies/{policy\_instance\_id}
+ - GET, get policy status: http://localhost:8085/policytypes/{policy\_type\_id}/policies/{policy\_instance\_id}/status
+<br>Swagger UI at:`http://localhost:8085/ui/`
+
+URIs for admin operations:
+ - GET, a basic healthcheck: http://localhost:8085/
+ - GET, a list of all supported interfaces: http://localhost:8085/container\_interfaces
+ - POST, delete all policy instances: http://localhost:8085/deleteinstances
+ - POST, full reset: http://localhost:8085/deleteall
+ - PUT, create/update a policy type: http://localhost:8085/policytype?id=<policytypeid>
+ - DELETE, delete a policy type: http://localhost:8085/policytype?id=<policytypeid>
+ - GET, list of policy type id: http://localhost:8085/policytypes
+ - POST, force a specific response code for an A1 operation: http://localhost:8085/forceresponse?responsecode=<http-code>
+ - POST, force delayed response of all A1 operations: http://localhost:8085/forcedelay?delay=<seconds>
+ - PUT, set status and optional reason, delete and timestamp: http://localhost:8085/status?status=<status>&reason=<reason>[&deleted=<boolean>][&created\_at=<timestamp>]
+ - POST, send status for policy: http://localhost:8085/sendstatus?policyid=<policyid>
+ - GET a counter: http://localhost:8085/counter/<counter-name>
+ (counter-name: 'num\_instances', 'num\_types' or 'interface')
+
+# Supported operations in simulator A1 Standard 1.1.3
+
+URIs for A1:
+ - GET all policy identities http://localhost:8085/A1-P/v1/policies
+ - PUT a policy instance(create or update it): http://localhost:8085/A1-P/v1/policies/{policyId}
+ - GET a policy: http://localhost:8085/A1-P/v1/policies/{policyId}
+ - DELETE a policy instance: http://localhost:8085/A1-P/v1/policies/{policyId}
+ - GET a policy status: http://localhost:8085/A1-P/v1/policies/{policyid}
+<br>Swagger UI at:`http://localhost:8085/A1-P/v1/ui/`
+
+URIs for admin operations:
+ - GET, a basic healthcheck: http://localhost:8085/
+ - GET, a list of all supported interfaces: http://localhost:8085/container\_interfaces
+ - POST, delete all policy instances: http://localhost:8085/deleteinstances
+ - POST, full reset: http://localhost:8085/deleteall
+ - POST, force a specific response code for an A1 operation: http://localhost:8085/forceresponse?responsecode=<http-code>
+- POST, force delayed response of all A1 operations: http://localhost:8085/forcedelay?delay=<seconds>
+ - PUT, set status and optional reason: http://localhost:8085/status?status=<status>&reason=<reason>
+ - POST, send status for policy: http://localhost:8085/sendstatus?policyid=<policyid>
+ - GET a counter: http://localhost:8085/counter/<counter-name>
+ (counter-name: 'num\_instances', 'num\_types'(always 0) or 'interface')
+
+
+# Supported operations in simulator 1.1.x-alpha.2
+
+ The available requests and the addresses are currently: