update link to upper-constraints.txt
[modeling/etsicatalog.git] / docs / offeredapis.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3 .. _offeredapis:
4
5 ============
6 Offered APIs
7 ============
8 Etsicatalog provides the followed APIs:
9
10 -  **NS package management interface**
11
12   Provides runtime NS package management interface
13
14 .. list-table::
15    :widths: 50 10 40
16    :header-rows: 1
17
18    * - URL
19      - Method
20      - Description
21    * - /api/nsd/v1/ns_descriptors
22      - POST
23      - Create a new NS descriptor resource.
24    * - /api/nsd/v1/ns_descriptors
25      - GET
26      - Query information about multiple NS descriptor resources.
27    * - /api/nsd/v1/ns_descriptors/{{nsdInfoId}}
28      - GET
29      - Read information about an individual NS descriptor resource.
30    * - /api/nsd/v1/ns_descriptors/{{nsdInfoId}}/nsd_content
31      - PUT
32      - Upload the content of a NSD.
33    * - /api/nsd/v1/ns_descriptors/{{nsdInfoId}}/nsd_content
34      - GET
35      - Fetch the content of a NSD.
36    * - /api/nsd/v1/ns_descriptors/{{nsdInfoId}}
37      - DELETE
38      - Delete an individual NS descriptor resource.
39    * - /api/nsd/v1/pnf_descriptors
40      - POST
41      - Create a new PNF descriptor resource.
42    * - /api/nsd/v1/pnf_descriptors
43      - GET
44      - Query information about multiple PNF descriptor resources.
45    * - /api/nsd/v1/pnf_descriptors/{{pnfdInfoId}}
46      - GET
47      - Read an individual PNFD resource.
48    * - /api/nsd/v1/pnf_descriptors/{{pnfdInfoId}}/pnfd_content
49      - PUT
50      - Upload the content of a PNFD.
51    * - /api/nsd/v1/pnf_descriptors/{{pnfdInfoId}}/pnfd_content
52      - GET
53      - Fetch the content of a PNFD.
54    * - /api/nsd/v1/pnf_descriptors/{{pnfdInfoId}}
55      - DELETE
56      - Delete an individual PNF descriptor resource.
57
58 -  **VNF package management interface**
59
60   Provides runtime VNF package management interface
61
62 .. list-table::
63    :widths: 50 10 40
64    :header-rows: 1
65
66    * - URL
67      - Method
68      - Description
69    * - /api/vnfpkgm/v1/vnf_packages
70      - POST
71      - Create a new individual VNF package resource
72    * - /api/vnfpkgm/v1/vnf_packages
73      - GET
74      - Query VNF packages information
75    * - /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}}
76      - GET
77      - Read information about an individual VNF package
78    * - /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}}/package_content
79      - PUT
80      - Upload a VNF package by providing the content of the VNF package
81    * - /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}}/package_content/upload_from_uri
82      - PUT
83      - Upload a VNF package by providing the address information of the VNF package
84    * - /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}}/package_content
85      - GET
86      - Fetch an on-boarded VNF package
87    * - /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}}/vnfd
88      - GET
89      - Read VNFD of an on-boarded VNF package
90    * - /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}}/artifacts/{{artifactPath}}
91      - GET
92      - Fetch individual VNF package artifact
93    * - /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}}
94      - DELETE
95      - Delete an individual VNF package
96    * - /api/vnfpkgm/v1/subscriptions
97      - POST
98      - Subscribe to notifications related to on-boarding and/or changes of VNF packages
99    * - /api/vnfpkgm/v1/subscriptions
100      - GET
101      - Query multiple subscriptions
102    * - /api/vnfpkgm/v1/subscriptions/{{subscriptionId}}
103      - GET
104      - Read an individual subscription resource
105    * - /api/vnfpkgm/v1/subscriptions/{{subscriptionId}}
106      - DELETE
107      - Terminate a subscription
108
109 -  **Catalog interface**
110
111   Provides APIs to query/fetch package from SDC catalog
112
113 .. list-table::
114    :widths: 50 10 40
115    :header-rows: 1
116
117    * - URL
118      - Method
119      - Description
120    * - /api/catalog/v1/nspackages
121      - POST
122      - Fetch NS package from SDC catalog
123    * - /api/catalog/v1/vnfpackages
124      - POST
125      - Fetch NVF package from SDC catalog
126    * - /api/catalog/v1/service_packages
127      - POST
128      - Fetch Service package from SDC catalog
129
130 -  **Parser interface**
131
132   Provide APIs to parser VNF/PNF/NS/Service package
133
134 .. list-table::
135    :widths: 50 10 40
136    :header-rows: 1
137
138    * - URL
139      - Method
140      - Description
141    * - /api/parser/v1/parserpnfd
142      - POST
143      - Parse PNF package
144    * - /api/parser/v1/parservnfd
145      - POST
146      - Parse VNF package
147    * - /api/parser/v1/parsernsd
148      - POST
149      - Parse NS package
150    * - /api/parser/v1/parser
151      - POST
152      - Parse package
153
154 You can download the following API yaml file and paste the content into the swagger tool: https://editor.swagger.io to view more detail of APIs.
155
156 :download:`etsicatalog_API_v1.yaml <swagger/etsicatalog_API_v1.yaml>`