Skip to content

Commit be55cc0

Browse files
committed
[rpc api] Add GetApplications method
1 parent 5b16b76 commit be55cc0

1 file changed

Lines changed: 151 additions & 0 deletions

File tree

api/csolution-openapi.yml

Lines changed: 151 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -208,6 +208,17 @@ paths:
208208
'200':
209209
description: OK
210210
content: {application/json: {schema: {$ref: '#/components/schemas/GetLogMessagesResponse'}}}
211+
/rpc/GetApplications:
212+
post:
213+
summary: Get applications
214+
description: Get reference applications, examples and solution templates
215+
tags: [/rpc]
216+
requestBody:
217+
content: {application/json: {schema: {$ref: '#/components/schemas/GetApplicationsRequest'}}}
218+
responses:
219+
'200':
220+
description: OK
221+
content: {application/json: {schema: {$ref: '#/components/schemas/GetApplicationsResponse'}}}
211222

212223
components:
213224
schemas:
@@ -638,6 +649,125 @@ components:
638649
items:
639650
type: string
640651

652+
ApplicationsFilter:
653+
type: object
654+
properties:
655+
board:
656+
type: string
657+
description: Board Identifier
658+
device:
659+
type: string
660+
description: Device Identifier
661+
environment:
662+
type: string
663+
description: Name of the environment
664+
Environment:
665+
type: object
666+
properties:
667+
name:
668+
type: string
669+
description: Name of the environment
670+
file:
671+
type: string
672+
description: Project file to be loaded
673+
folder:
674+
type: string
675+
description: Folder containing all example files
676+
required:
677+
- name
678+
- file
679+
- folder
680+
Example:
681+
type: object
682+
properties:
683+
name:
684+
type: string
685+
description: Name of the example
686+
description:
687+
type: string
688+
description: Brief description
689+
doc:
690+
type: string
691+
description: Document that describes the example
692+
version:
693+
type: string
694+
description: Example version number
695+
archive:
696+
type: string
697+
description: Archive file containing all files and sub-folders
698+
pack:
699+
type: string
700+
description: Pack identifier
701+
environments:
702+
type: array
703+
items:
704+
$ref: '#/components/schemas/Environment'
705+
description: List of environments
706+
components:
707+
type: array
708+
items:
709+
type: string
710+
description: List of related components
711+
categories:
712+
type: array
713+
items:
714+
type: string
715+
description: List of categories
716+
keywords:
717+
type: array
718+
items:
719+
type: string
720+
description: List of keywords
721+
required:
722+
- name
723+
- description
724+
- doc
725+
- environments
726+
- pack
727+
SolutionTemplate:
728+
type: object
729+
properties:
730+
name:
731+
type: string
732+
description: Name of the template
733+
description:
734+
type: string
735+
description: Brief description
736+
file:
737+
type: string
738+
description: Name of the *.csolution.yml file
739+
folder:
740+
type: string
741+
description: Folder containing the template
742+
copyTo:
743+
type: string
744+
description: Path to copy the template into the csolution project
745+
pack:
746+
type: string
747+
description: Pack identifier
748+
required:
749+
- name
750+
- description
751+
- file
752+
- folder
753+
- pack
754+
ApplicationsInfo:
755+
allOf:
756+
- $ref: '#/components/schemas/SuccessResult'
757+
- properties:
758+
examples:
759+
type: array
760+
items:
761+
$ref: '#/components/schemas/Example'
762+
refApps:
763+
type: array
764+
items:
765+
$ref: '#/components/schemas/Example'
766+
templates:
767+
type: array
768+
items:
769+
$ref: '#/components/schemas/SolutionTemplate'
770+
641771
GetVersionRequest:
642772
allOf:
643773
- $ref: '#/x-jsonrpc-envelope-request'
@@ -1017,6 +1147,27 @@ components:
10171147
result:
10181148
$ref: '#/components/schemas/LogMessages'
10191149

1150+
GetApplicationsRequest:
1151+
allOf:
1152+
- $ref: '#/x-jsonrpc-envelope-request-with-params'
1153+
- properties:
1154+
method:
1155+
type: string
1156+
const: GetApplications
1157+
params:
1158+
type: object
1159+
properties:
1160+
filter:
1161+
$ref: '#/components/schemas/ApplicationsFilter'
1162+
required:
1163+
- filter
1164+
GetApplicationsResponse:
1165+
allOf:
1166+
- $ref: '#/x-jsonrpc-envelope-response'
1167+
- properties:
1168+
result:
1169+
$ref: '#/components/schemas/ApplicationsInfo'
1170+
10201171
x-jsonrpc-envelope-request:
10211172
allOf:
10221173
- $ref: '#/x-jsonrpc-envelope'

0 commit comments

Comments
 (0)