Skip to content

Commit

Permalink
add the start of the swagger documentation for the HELICS REST API
Browse files Browse the repository at this point in the history
  • Loading branch information
phlptp committed Feb 22, 2022
1 parent 817f37e commit 3901e8a
Show file tree
Hide file tree
Showing 50 changed files with 1,304 additions and 0 deletions.
3 changes: 3 additions & 0 deletions docs/swagger/docs/HELICS-api.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# HELICS-api

The Documentation for the REST API and JSON interfaces for HELICS
20 changes: 20 additions & 0 deletions docs/swagger/models/CoreConfig.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
title: CoreConfig
type: object
properties:
autobroker:
type: boolean
localport:
type: string
debugging:
type: boolean
observer:
type: boolean
json:
type: boolean
profiler:
type: boolean
brokerkey:
type: string
brokerinitstring:
type: string
description: File configuration for the CoreConfiguration
3 changes: 3 additions & 0 deletions docs/swagger/models/FederateConfig.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
title: FederateConfig
$ref: ''
description: ''
60 changes: 60 additions & 0 deletions docs/swagger/models/FederateInfo.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
title: FederateInfo
type: object
properties:
name:
type: string
core:
type: string
force_new_core:
type: boolean
coretype:
type: string
corename:
type: string
coreinitstring:
type: string
offset:
type:
- string
- number
period:
type:
- string
- number
timedelta:
type:
- string
- number
rtlag:
type:
- string
- number
rtlead:
type:
- string
- number
rttolerance:
type:
- string
- number
inputdelay:
type:
- string
- number
outputdelay:
type:
- string
- number
granttimeout:
type:
- string
- number
maxiteration:
type: integer
loglevel:
type: string
separator:
type: string
flags:
type: string
description: Properties applying to the federate and its creation
56 changes: 56 additions & 0 deletions docs/swagger/models/Filter.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
title: Filter
description: Configuration for a Filter
allOf:
- type: object
properties:
name:
type: string
inputType:
type: string
outputType:
type: string
cloning:
type: boolean
operation:
type: string
delivery:
type: string
sourcetargets:
type:
- string
- array
items:
type: string
destinationtargets:
type:
- string
- array
items:
type: string
properties:
oneOf:
- type: array
items:
type: object
properties:
name:
type: string
value:
type:
- string
- number
required:
- name
- value
- type: object
properties:
name:
type: string
value:
type:
- string
- number
required:
- name
- value
- $ref: ./interfaceOptions.yaml
14 changes: 14 additions & 0 deletions docs/swagger/models/FilterOptions.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
title: FilterOptions
description: Configuration options for a filter
anyOf:
- type: object
properties:
flags:
type:
- string
- array
items:
type: string
'':
type: string
- $ref: ./interfaceOptions.yaml
6 changes: 6 additions & 0 deletions docs/swagger/models/Publication.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
title: Publication
type: object
properties:
id:
type: string
description: Configuration for a HELICS publication
3 changes: 3 additions & 0 deletions docs/swagger/models/address_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
title: address_query
type: string
description: return the connection address for the query target
28 changes: 28 additions & 0 deletions docs/swagger/models/base_response.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
description: Common information shared across many responses
type: object
x-examples:
example-1:
name: string
id: 1
parent: 0
properties:
name:
type: string
minLength: 1
uuid:
type: string
minLength: 1
description: If the object is defined as uuid like it will contain the uuid as a field
id:
type: number
parent:
type: number
description: All objects except root broker will have a parent
required:
- name
- id
examples:
- name: string
uuid: string
id: 0
parent: 0
13 changes: 13 additions & 0 deletions docs/swagger/models/base_status_info.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
title: base_status_info
type: object
properties:
id:
type: integer
'':
type: string
state:
type: string
required:
- id
- ''
- state
5 changes: 5 additions & 0 deletions docs/swagger/models/brokers_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
title: brokers_query
type: array
description: return a list of the children brokers for a target
items:
type: string
36 changes: 36 additions & 0 deletions docs/swagger/models/counts_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
description: return counts of the objects and interfaces under an object
type: object
x-examples:
example-1:
name: object_name
parent: 1
brokers: 3
federates: 4
countable_federates: 3
interfaces: 34
examples:
- name: string
id: 1
parent: 0
brokers: 0
federates: 0
countable_federates: 0
interfaces: 0
title: ''
properties:
brokers:
type: number
federates:
type: number
countable_federates:
type: number
interfaces:
type: number
object:
$ref: ./base_response.yaml
required:
- brokers
- federates
- countable_federates
- interfaces
- object
21 changes: 21 additions & 0 deletions docs/swagger/models/current_state_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
title: current_state_query
type: object
properties:
object:
$ref: ./base_response.yaml
state:
type: string
status:
type: boolean
federates:
type: array
items:
$ref: ./base_status_info.yaml
cores:
type: array
items:
$ref: ./base_status_info.yaml
brokers:
type: array
items:
$ref: ./base_status_info.yaml
5 changes: 5 additions & 0 deletions docs/swagger/models/current_time_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
title: current_time_query
type: object
properties:
id:
type: string
17 changes: 17 additions & 0 deletions docs/swagger/models/data_flow_graph_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
title: data_flow_graph_query
type: object
properties:
object:
$ref: ./base_response.yaml
brokers:
type: array
items:
$ref: ./data_flow_graph_query.yaml
cores:
type: array
items:
$ref: ./data_flow_graph_query.yaml
federates:
type: array
items:
$ref: ./data_flow_graph_query.yaml
13 changes: 13 additions & 0 deletions docs/swagger/models/dependencies_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
title: dependencies_query
type: object
properties:
object:
$ref: ./base_response.yaml
dependents:
type: array
items:
type: integer
dependencies:
type: array
items:
type: integer
20 changes: 20 additions & 0 deletions docs/swagger/models/dependency_graph_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
title: dependency_graph_query
type: object
properties:
object:
$ref: ./base_response.yaml
brokers:
$ref: ./dependency_graph_query.yaml
cores:
$ref: ./dependency_graph_query.yaml
dependents:
type: array
items:
type: integer
dependencies:
type: array
items:
type: integer
required:
- object
- dependents
5 changes: 5 additions & 0 deletions docs/swagger/models/dependents_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
title: dependents_query
type: array
description: get a list of the object ids who depend on a target
items:
type: number
5 changes: 5 additions & 0 deletions docs/swagger/models/dependson_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
title: dependson_query
type: array
description: get a list of the other object the target depends on
items:
type: integer
5 changes: 5 additions & 0 deletions docs/swagger/models/endpoints_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
title: endpoints_query
type: array
description: query a list of avaialble endpoints
items:
type: string
16 changes: 16 additions & 0 deletions docs/swagger/models/error_response.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
title: error_response
type: object
properties:
error:
type: object
required:
- code
- message
properties:
code:
type: integer
description: HTML error code
message:
type: string
required:
- error
3 changes: 3 additions & 0 deletions docs/swagger/models/exists_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
title: exists_query
type: boolean
description: query if an object exists
5 changes: 5 additions & 0 deletions docs/swagger/models/federate_map_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
title: federate_map_query
type: object
properties:
id:
type: string
5 changes: 5 additions & 0 deletions docs/swagger/models/federates_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
title: federates_query
type: array
items:
type: string
description: return a list of federates under an object
5 changes: 5 additions & 0 deletions docs/swagger/models/filters_query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
title: filters_query
type: array
description: return a list of filters contained in an object
items:
type: string
Loading

0 comments on commit 3901e8a

Please sign in to comment.