diff options
author | MatthieuGeerebaert <matthieu.geerebaert@orange.com> | 2019-03-12 18:30:33 +0100 |
---|---|---|
committer | MatthieuGeerebaert <matthieu.geerebaert@orange.com> | 2019-03-12 18:30:33 +0100 |
commit | cf469f63cb490d90b55508efa331073a17297999 (patch) | |
tree | 4cbb6daff2e14d30d2f4d745ec5e8cd8a15f5e5c /docs/offeredapis/serviceOrder/markDown.md | |
parent | 66403a1729296f9d90ce61a4d4cb0d102e03cd1e (diff) |
Update Swagger files
Change-Id: I02a375b4998fdf23bd7c4eb391011a8e37a1c8e2
Issue-ID: EXTAPI-211
Signed-off-by: MatthieuGeerebaert <matthieu.geerebaert@orange.com>
Diffstat (limited to 'docs/offeredapis/serviceOrder/markDown.md')
-rw-r--r-- | docs/offeredapis/serviceOrder/markDown.md | 890 |
1 files changed, 0 insertions, 890 deletions
diff --git a/docs/offeredapis/serviceOrder/markDown.md b/docs/offeredapis/serviceOrder/markDown.md deleted file mode 100644 index 0c11b20..0000000 --- a/docs/offeredapis/serviceOrder/markDown.md +++ /dev/null @@ -1,890 +0,0 @@ -# API ServiceOrder - - -<a name="overview"></a> -## Overview - -### Api URL - -[Swagger UI](https://api-designer.sso.infra.ftgroup/swagger-ui/?url=https://api-designer.sso.infra.ftgroup/api/1.0/apis/Ve1zj3V1gj/swagger.json) - - -[plant UML UI](https://plantuml.rd.francetelecom.fr/proxy?fmt=svg&src=https://api-designer.sso.infra.ftgroup/api/1.0/apis/Ve1zj3V1gj/plantuml&noCache=366455.0) - -serviceOrder API designed for ONAP. -This API is build from TMF open API18.0 (applying TMF Guideline 3.0); -Only operations GET (by id and list) and POST are available. - - -### Version information -*Version* : 3.0.0_inProgress - - -### URI scheme -*Host* : serverRoot -*BasePath* : /nbi/api/v3 -*Schemes* : HTTPS - - -### Tags - -* Hub -* Notification -* ServiceOrder : A Service Order is a type of order which can be used to describe a group of operations on service – one service order item per service. An action at the level of the service order item describe the operation to be done on a service (add, terminate for example). The service order is triggered from the BSS system in charge of the product order management to ONAP that will manage the service fulfillment. - - -### Produces - -* `application/json;charset=utf-8` - - -<a name="paths"></a> -## Resources - -<a name="hub_resource"></a> -### Hub - -<a name="hubcreate"></a> -#### Create Hub -``` -POST /hub -``` - - -##### Description -Specific business errors for current operation will be encapsulated in - -HTTP Response 422 Unprocessable entity - - -##### Parameters - -|Type|Name|Schema| -|---|---|---| -|**Body**|**Hub** <br>*required*|[CreateHub](#createhub)| - - -##### Responses - -|HTTP Code|Description|Schema| -|---|---|---| -|**201**|Success <br>**Headers** : <br>`location` (string)|file| -|**400**|Bad Request<br><br>List of supported error codes:<br>- 20: Invalid URL parameter value<br>- 21: Missing body<br>- 22: Invalid body<br>- 23: Missing body field<br>- 24: Invalid body field<br>- 25: Missing header<br>- 26: Invalid header value<br>- 27: Missing query-string parameter<br>- 28: Invalid query-string parameter value|[ErrorRepresentation](#errorrepresentation)| -|**401**|Unauthorized<br><br>List of supported error codes:<br>- 40: Missing credentials<br>- 41: Invalid credentials<br>- 42: Expired credentials|[ErrorRepresentation](#errorrepresentation)| -|**403**|Forbidden<br><br>List of supported error codes:<br>- 50: Access denied<br>- 51: Forbidden requester<br>- 52: Forbidden user<br>- 53: Too many requests|[ErrorRepresentation](#errorrepresentation)| -|**404**|Not Found<br><br>List of supported error codes:<br>- 60: Resource not found|[ErrorRepresentation](#errorrepresentation)| -|**422**|Unprocessable entity<br><br>Functional error|[ErrorRepresentation](#errorrepresentation)| -|**500**|Internal Server Error<br><br>List of supported error codes:<br>- 1: Internal error|[ErrorRepresentation](#errorrepresentation)| -|**503**|Service Unavailable<br><br>List of supported error codes:<br>- 5: The service is temporarily unavailable<br>- 6: Orange API is over capacity, retry later !|[ErrorRepresentation](#errorrepresentation)| - - -##### Consumes - -* `application/json;charset=utf-8` - - -<a name="hubfind"></a> -#### Retrieve a lits of hub -``` -GET /hub -``` - - -##### Description -Specific business errors for current operation will be encapsulated in - -HTTP Response 422 Unprocessable entity - - -##### Parameters - -|Type|Name|Schema| -|---|---|---| -|**Query**|**eventType** <br>*optional*|enum (ServiceOrderCreationNotification, ServiceOrderStateChangeNotification, ServiceOrderItemStateChangeNotification)| -|**Query**|**id** <br>*optional*|string| - - -##### Responses - -|HTTP Code|Description|Schema| -|---|---|---| -|**200**|Success|< [Hub](#hub) > array| -|**400**|Bad Request<br><br>List of supported error codes:<br>- 20: Invalid URL parameter value<br>- 21: Missing body<br>- 22: Invalid body<br>- 23: Missing body field<br>- 24: Invalid body field<br>- 25: Missing header<br>- 26: Invalid header value<br>- 27: Missing query-string parameter<br>- 28: Invalid query-string parameter value|[ErrorRepresentation](#errorrepresentation)| -|**401**|Unauthorized<br><br>List of supported error codes:<br>- 40: Missing credentials<br>- 41: Invalid credentials<br>- 42: Expired credentials|[ErrorRepresentation](#errorrepresentation)| -|**403**|Forbidden<br><br>List of supported error codes:<br>- 50: Access denied<br>- 51: Forbidden requester<br>- 52: Forbidden user<br>- 53: Too many requests|[ErrorRepresentation](#errorrepresentation)| -|**404**|Not Found<br><br>List of supported error codes:<br>- 60: Resource not found|[ErrorRepresentation](#errorrepresentation)| -|**422**|Unprocessable entity<br><br>Functional error|[ErrorRepresentation](#errorrepresentation)| -|**500**|Internal Server Error<br><br>List of supported error codes:<br>- 1: Internal error|[ErrorRepresentation](#errorrepresentation)| -|**503**|Service Unavailable<br><br>List of supported error codes:<br>- 5: The service is temporarily unavailable<br>- 6: Orange API is over capacity, retry later !|[ErrorRepresentation](#errorrepresentation)| - - -##### Produces - -* `application/json;charset=utf-8` - - -<a name="hubget"></a> -#### Retrieve an HUB by id -``` -GET /hub/{hubId} -``` - - -##### Description -Retrieve an HUB by id - -Specific business errors for current operation will be encapsulated in - -HTTP Response 422 Unprocessable entity - - -##### Parameters - -|Type|Name|Schema| -|---|---|---| -|**Path**|**hubId** <br>*required*|string| - - -##### Responses - -|HTTP Code|Description|Schema| -|---|---|---| -|**200**|Success|[Hub](#hub)| -|**400**|Bad Request<br><br>List of supported error codes:<br>- 20: Invalid URL parameter value<br>- 21: Missing body<br>- 22: Invalid body<br>- 23: Missing body field<br>- 24: Invalid body field<br>- 25: Missing header<br>- 26: Invalid header value<br>- 27: Missing query-string parameter<br>- 28: Invalid query-string parameter value|[ErrorRepresentation](#errorrepresentation)| -|**401**|Unauthorized<br><br>List of supported error codes:<br>- 40: Missing credentials<br>- 41: Invalid credentials<br>- 42: Expired credentials|[ErrorRepresentation](#errorrepresentation)| -|**403**|Forbidden<br><br>List of supported error codes:<br>- 50: Access denied<br>- 51: Forbidden requester<br>- 52: Forbidden user<br>- 53: Too many requests|[ErrorRepresentation](#errorrepresentation)| -|**404**|Not Found<br><br>List of supported error codes:<br>- 60: Resource not found|[ErrorRepresentation](#errorrepresentation)| -|**422**|Unprocessable entity<br><br>Functional error|[ErrorRepresentation](#errorrepresentation)| -|**500**|Internal Server Error<br><br>List of supported error codes:<br>- 1: Internal error|[ErrorRepresentation](#errorrepresentation)| -|**503**|Service Unavailable<br><br>List of supported error codes:<br>- 5: The service is temporarily unavailable<br>- 6: Orange API is over capacity, retry later !|[ErrorRepresentation](#errorrepresentation)| - - -##### Produces - -* `application/json;charset=utf-8` - - -<a name="hubdelete"></a> -#### delete hub -``` -DELETE /hub/{hubId} -``` - - -##### Description -Specific business errors for current operation will be encapsulated in - -HTTP Response 422 Unprocessable entity - - -##### Parameters - -|Type|Name|Schema| -|---|---|---| -|**Path**|**hubId** <br>*required*|string| - - -##### Responses - -|HTTP Code|Description|Schema| -|---|---|---| -|**204**|Success|No Content| -|**400**|Bad Request<br><br>List of supported error codes:<br>- 20: Invalid URL parameter value<br>- 21: Missing body<br>- 22: Invalid body<br>- 23: Missing body field<br>- 24: Invalid body field<br>- 25: Missing header<br>- 26: Invalid header value<br>- 27: Missing query-string parameter<br>- 28: Invalid query-string parameter value|[ErrorRepresentation](#errorrepresentation)| -|**401**|Unauthorized<br><br>List of supported error codes:<br>- 40: Missing credentials<br>- 41: Invalid credentials<br>- 42: Expired credentials|[ErrorRepresentation](#errorrepresentation)| -|**403**|Forbidden<br><br>List of supported error codes:<br>- 50: Access denied<br>- 51: Forbidden requester<br>- 52: Forbidden user<br>- 53: Too many requests|[ErrorRepresentation](#errorrepresentation)| -|**404**|Not Found<br><br>List of supported error codes:<br>- 60: Resource not found|[ErrorRepresentation](#errorrepresentation)| -|**422**|Unprocessable entity<br><br>Functional error|[ErrorRepresentation](#errorrepresentation)| -|**500**|Internal Server Error<br><br>List of supported error codes:<br>- 1: Internal error|[ErrorRepresentation](#errorrepresentation)| -|**503**|Service Unavailable<br><br>List of supported error codes:<br>- 5: The service is temporarily unavailable<br>- 6: Orange API is over capacity, retry later !|[ErrorRepresentation](#errorrepresentation)| - - -<a name="notification_resource"></a> -### Notification - -<a name="notificationserviceordercreationnotification"></a> -#### Service order creation notification -``` -POST /notification/serviceOrderCreationNotification -``` - - -##### Description -Service order creation notification - -Specific business errors for current operation will be encapsulated in - -HTTP Response 422 Unprocessable entity - - -##### Parameters - -|Type|Name|Schema| -|---|---|---| -|**Body**|**serviceOrderCreationNotification** <br>*required*|[ServiceOrderCreationNotification](#serviceordercreationnotification)| - - -##### Responses - -|HTTP Code|Description|Schema| -|---|---|---| -|**204**|Success|No Content| -|**400**|Bad Request<br><br>List of supported error codes:<br>- 20: Invalid URL parameter value<br>- 21: Missing body<br>- 22: Invalid body<br>- 23: Missing body field<br>- 24: Invalid body field<br>- 25: Missing header<br>- 26: Invalid header value<br>- 27: Missing query-string parameter<br>- 28: Invalid query-string parameter value|[ErrorRepresentation](#errorrepresentation)| -|**401**|Unauthorized<br><br>List of supported error codes:<br>- 40: Missing credentials<br>- 41: Invalid credentials<br>- 42: Expired credentials|[ErrorRepresentation](#errorrepresentation)| -|**403**|Forbidden<br><br>List of supported error codes:<br>- 50: Access denied<br>- 51: Forbidden requester<br>- 52: Forbidden user<br>- 53: Too many requests|[ErrorRepresentation](#errorrepresentation)| -|**404**|Not Found<br><br>List of supported error codes:<br>- 60: Resource not found|[ErrorRepresentation](#errorrepresentation)| -|**422**|Unprocessable entity<br><br>Functional error|[ErrorRepresentation](#errorrepresentation)| -|**500**|Internal Server Error<br><br>List of supported error codes:<br>- 1: Internal error|[ErrorRepresentation](#errorrepresentation)| -|**503**|Service Unavailable<br><br>List of supported error codes:<br>- 5: The service is temporarily unavailable<br>- 6: Orange API is over capacity, retry later !|[ErrorRepresentation](#errorrepresentation)| - - -##### Consumes - -* `application/json;charset=utf-8` - - -<a name="notificationserviceorderitemstatechangenotification"></a> -#### ServiceOrder Item State Change Notification description -``` -POST /notification/serviceOrderItemStateChangeNotification -``` - - -##### Description -Specific business errors for current operation will be encapsulated in - -HTTP Response 422 Unprocessable entity - - -##### Parameters - -|Type|Name|Schema| -|---|---|---| -|**Body**|**serviceOrderItemStateChangeNotification** <br>*required*|[ServiceOrderItemStateChangeNotification](#serviceorderitemstatechangenotification)| - - -##### Responses - -|HTTP Code|Description|Schema| -|---|---|---| -|**204**|Success|No Content| -|**400**|Bad Request<br><br>List of supported error codes:<br>- 20: Invalid URL parameter value<br>- 21: Missing body<br>- 22: Invalid body<br>- 23: Missing body field<br>- 24: Invalid body field<br>- 25: Missing header<br>- 26: Invalid header value<br>- 27: Missing query-string parameter<br>- 28: Invalid query-string parameter value|[ErrorRepresentation](#errorrepresentation)| -|**401**|Unauthorized<br><br>List of supported error codes:<br>- 40: Missing credentials<br>- 41: Invalid credentials<br>- 42: Expired credentials|[ErrorRepresentation](#errorrepresentation)| -|**403**|Forbidden<br><br>List of supported error codes:<br>- 50: Access denied<br>- 51: Forbidden requester<br>- 52: Forbidden user<br>- 53: Too many requests|[ErrorRepresentation](#errorrepresentation)| -|**404**|Not Found<br><br>List of supported error codes:<br>- 60: Resource not found|[ErrorRepresentation](#errorrepresentation)| -|**422**|Unprocessable entity<br><br>Functional error|[ErrorRepresentation](#errorrepresentation)| -|**500**|Internal Server Error<br><br>List of supported error codes:<br>- 1: Internal error|[ErrorRepresentation](#errorrepresentation)| -|**503**|Service Unavailable<br><br>List of supported error codes:<br>- 5: The service is temporarily unavailable<br>- 6: Orange API is over capacity, retry later !|[ErrorRepresentation](#errorrepresentation)| - - -##### Consumes - -* `application/json;charset=utf-8` - - -<a name="notificationserviceorderstatechangenotification"></a> -#### Service order state change notification description -``` -POST /notification/serviceOrderStateChangeNotification -``` - - -##### Description -Specific business errors for current operation will be encapsulated in - -HTTP Response 422 Unprocessable entity - - -##### Parameters - -|Type|Name|Schema| -|---|---|---| -|**Body**|**serviceOrderstateChangeNotification** <br>*required*|[ServiceOrderStateChangeNotification](#serviceorderstatechangenotification)| - - -##### Responses - -|HTTP Code|Description|Schema| -|---|---|---| -|**204**|Success|No Content| -|**400**|Bad Request<br><br>List of supported error codes:<br>- 20: Invalid URL parameter value<br>- 21: Missing body<br>- 22: Invalid body<br>- 23: Missing body field<br>- 24: Invalid body field<br>- 25: Missing header<br>- 26: Invalid header value<br>- 27: Missing query-string parameter<br>- 28: Invalid query-string parameter value|[ErrorRepresentation](#errorrepresentation)| -|**401**|Unauthorized<br><br>List of supported error codes:<br>- 40: Missing credentials<br>- 41: Invalid credentials<br>- 42: Expired credentials|[ErrorRepresentation](#errorrepresentation)| -|**403**|Forbidden<br><br>List of supported error codes:<br>- 50: Access denied<br>- 51: Forbidden requester<br>- 52: Forbidden user<br>- 53: Too many requests|[ErrorRepresentation](#errorrepresentation)| -|**404**|Not Found<br><br>List of supported error codes:<br>- 60: Resource not found|[ErrorRepresentation](#errorrepresentation)| -|**422**|Unprocessable entity<br><br>Functional error|[ErrorRepresentation](#errorrepresentation)| -|**500**|Internal Server Error<br><br>List of supported error codes:<br>- 1: Internal error|[ErrorRepresentation](#errorrepresentation)| -|**503**|Service Unavailable<br><br>List of supported error codes:<br>- 5: The service is temporarily unavailable<br>- 6: Orange API is over capacity, retry later !|[ErrorRepresentation](#errorrepresentation)| - - -##### Consumes - -* `application/json;charset=utf-8` - - -<a name="serviceorder_resource"></a> -### ServiceOrder -A Service Order is a type of order which can be used to describe a group of operations on service – one service order item per service. An action at the level of the service order item describe the operation to be done on a service (add, terminate for example). The service order is triggered from the BSS system in charge of the product order management to ONAP that will manage the service fulfillment. - - -<a name="serviceordercreate"></a> -#### Create a service order -``` -POST /serviceOrder -``` - - -##### Description -This operation creates a service order entity. -The TMF Open API specification document provides the list of mandatory and non mandatory attributes when creating a ServiceOrder, including any possible rule conditions and applicable default values. -POST should be used without specifying the id and the href, the Service Order Management system is in charge of generating the id + href for the ServiceOrder. - -In Beijing Release, NBI will use only POST {{url}}/ecomp/mso/infra/serviceInstances/v4 SO API. This mean that only the 'service-instance' level will be created in AAI. Additional resource like VNF and/OR VF are not created. - -In Casablanca release, NBI has been improved to also be able to use POST {{url}}/e2eServiceInstances/v3 SO API. This API is able to instantiate in ONAP E2E service; This is useful for CCVPN and VoLTE UC. -Depending on the service category defined in SDC, NBI will use one or the other SO API. If category starts with e2e, NBI will use {url}}/e2eServiceInstances/v3 SO API - else it will use {{url}}/ecomp/mso/infra/serviceInstances/v4 SO API. - -Specific business errors for current operation will be encapsulated in - -HTTP Response 422 Unprocessable entity - - - 100: OrderItem with 'add' action but serviceSpecification id missing - - - 101: OrderItem with 'change'/'noChange'/'remove' but service id missing - - - 102: OrderItem with 'add' action - serviceSpecification id provided but not existing - - - 103: OrderItem with 'add' action but service id already existing in the inventory - - - 104: A customer for existing service(s) is provided but he did not exist - - - 105: OrderItem with 'change'/'noChange'/'remove' - Service id provided but it is not existing in the inventory - - - 106: [Not managed for current Relese] Issue with lcpCloudRegionId and tenantId provided - - -##### Parameters - -|Type|Name|Schema| -|---|---|---| -|**Body**|**serviceOrder** <br>*required*|[CreateServiceOrder](#createserviceorder)| - - -##### Responses - -|HTTP Code|Description|Schema| -|---|---|---| -|**201**|Success|[ServiceOrder](#serviceorder)| -|**400**|Bad Request<br><br>List of supported error codes:<br>- 20: Invalid URL parameter value<br>- 21: Missing body<br>- 22: Invalid body<br>- 23: Missing body field<br>- 24: Invalid body field<br>- 25: Missing header<br>- 26: Invalid header value<br>- 27: Missing query-string parameter<br>- 28: Invalid query-string parameter value|[ErrorRepresentation](#errorrepresentation)| -|**401**|Unauthorized<br><br>List of supported error codes:<br>- 40: Missing credentials<br>- 41: Invalid credentials<br>- 42: Expired credentials|[ErrorRepresentation](#errorrepresentation)| -|**403**|Forbidden<br><br>List of supported error codes:<br>- 50: Access denied<br>- 51: Forbidden requester<br>- 52: Forbidden user<br>- 53: Too many requests|[ErrorRepresentation](#errorrepresentation)| -|**404**|Not Found<br><br>List of supported error codes:<br>- 60: Resource not found|[ErrorRepresentation](#errorrepresentation)| -|**422**|Unprocessable entity<br><br>Functional error<br><br>Specific encapsulated business errors for current operation<br><br> - 100: OrderItem with 'add' action but serviceSpecification id missing<br> <br> - 101: OrderItem with 'change'/'noChange'/'remove' but service id missing<br> <br> - 102: OrderItem with 'add' action - serviceSpecification id provided but not existing<br> <br> - 103: OrderItem with 'add' action but service id already existing in the inventory<br> <br> - 104: A customer for existing service(s) is provided but he did not exist<br> <br> - 105: OrderItem with 'change'/'noChange'/'remove' - Service id provided but it is not existing in the inventory<br> <br> - 106: [Not managed for current Relese] Issue with lcpCloudRegionId and tenantId provided|[ErrorRepresentation](#errorrepresentation)| -|**500**|Internal Server Error<br><br>List of supported error codes:<br>- 1: Internal error|[ErrorRepresentation](#errorrepresentation)| -|**503**|Service Unavailable<br><br>List of supported error codes:<br>- 5: The service is temporarily unavailable<br>- 6: Orange API is over capacity, retry later !|[ErrorRepresentation](#errorrepresentation)| - - -##### Consumes - -* `application/json;charset=utf-8` - - -##### Produces - -* `application/json;charset=utf-8` - - -<a name="serviceorderfind"></a> -#### List service orders -``` -GET /serviceOrder -``` - - -##### Description -Retrieve and list service order entities according to given criteria. -Only a predefined set of attribute is proposed. -Attribute selection could be described in the fields attribute. - -Specific business errors for current operation will be encapsulated in - -HTTP Response 422 Unprocessable entity - - -##### Parameters - -|Type|Name|Description|Schema| -|---|---|---|---| -|**Query**|**description** <br>*optional*||string| -|**Query**|**externalId** <br>*optional*||string| -|**Query**|**fields** <br>*optional*|this attribute could be used to filter retrieved attribute(s) and/or sort SO.|string| -|**Query**|**limit** <br>*optional*|The maximum number of elements to retrieve (it can be greater than the actual available number of items).|integer (int32)| -|**Query**|**offset** <br>*optional*|The index of the first element to retrieve. Zero is the first element of the collection.|integer (int32)| -|**Query**|**orderDate.gt** <br>*optional*|order date greather than|string| -|**Query**|**orderDate.lt** <br>*optional*|order date lower than|string| -|**Query**|**state** <br>*optional*|state of the order(s) to be retrieved|string| - - -##### Responses - -|HTTP Code|Description|Schema| -|---|---|---| -|**200**|Success <br>**Headers** : <br>`X-Total-Count` (integer (int32)) <br>`X-Result-Count` (integer (int32))|< [ServiceOrder](#serviceorder) > array| -|**400**|Bad Request<br><br>List of supported error codes:<br>- 20: Invalid URL parameter value<br>- 21: Missing body<br>- 22: Invalid body<br>- 23: Missing body field<br>- 24: Invalid body field<br>- 25: Missing header<br>- 26: Invalid header value<br>- 27: Missing query-string parameter<br>- 28: Invalid query-string parameter value|[ErrorRepresentation](#errorrepresentation)| -|**401**|Unauthorized<br><br>List of supported error codes:<br>- 40: Missing credentials<br>- 41: Invalid credentials<br>- 42: Expired credentials|[ErrorRepresentation](#errorrepresentation)| -|**403**|Forbidden<br><br>List of supported error codes:<br>- 50: Access denied<br>- 51: Forbidden requester<br>- 52: Forbidden user<br>- 53: Too many requests|[ErrorRepresentation](#errorrepresentation)| -|**404**|Not Found<br><br>List of supported error codes:<br>- 60: Resource not found|[ErrorRepresentation](#errorrepresentation)| -|**422**|Unprocessable entity<br><br>Functional error|[ErrorRepresentation](#errorrepresentation)| -|**500**|Internal Server Error<br><br>List of supported error codes:<br>- 1: Internal error|[ErrorRepresentation](#errorrepresentation)| -|**503**|Service Unavailable<br><br>List of supported error codes:<br>- 5: The service is temporarily unavailable<br>- 6: Orange API is over capacity, retry later !|[ErrorRepresentation](#errorrepresentation)| - - -##### Produces - -* `application/json;charset=utf-8` - - -<a name="serviceorderget"></a> -#### Retrieve a service order -``` -GET /serviceOrder/{id} -``` - - -##### Description -This operation retrieves a service order entity. -Attribute selection is enabled for all first level attributes. - -Specific business errors for current operation will be encapsulated in - -HTTP Response 422 Unprocessable entity - - -##### Parameters - -|Type|Name|Description|Schema| -|---|---|---|---| -|**Path**|**id** <br>*required*||string| -|**Query**|**fields** <br>*optional*|Attribute selection|string| - - -##### Responses - -|HTTP Code|Description|Schema| -|---|---|---| -|**200**|Success|[ServiceOrder](#serviceorder)| -|**400**|Bad Request<br><br>List of supported error codes:<br>- 20: Invalid URL parameter value<br>- 21: Missing body<br>- 22: Invalid body<br>- 23: Missing body field<br>- 24: Invalid body field<br>- 25: Missing header<br>- 26: Invalid header value<br>- 27: Missing query-string parameter<br>- 28: Invalid query-string parameter value|[ErrorRepresentation](#errorrepresentation)| -|**401**|Unauthorized<br><br>List of supported error codes:<br>- 40: Missing credentials<br>- 41: Invalid credentials<br>- 42: Expired credentials|[ErrorRepresentation](#errorrepresentation)| -|**403**|Forbidden<br><br>List of supported error codes:<br>- 50: Access denied<br>- 51: Forbidden requester<br>- 52: Forbidden user<br>- 53: Too many requests|[ErrorRepresentation](#errorrepresentation)| -|**404**|Not Found<br><br>List of supported error codes:<br>- 60: Resource not found|[ErrorRepresentation](#errorrepresentation)| -|**422**|Unprocessable entity<br><br>Functional error|[ErrorRepresentation](#errorrepresentation)| -|**500**|Internal Server Error<br><br>List of supported error codes:<br>- 1: Internal error|[ErrorRepresentation](#errorrepresentation)| -|**503**|Service Unavailable<br><br>List of supported error codes:<br>- 5: The service is temporarily unavailable<br>- 6: Orange API is over capacity, retry later !|[ErrorRepresentation](#errorrepresentation)| - - -##### Produces - -* `application/json;charset=utf-8` - - -<a name="definitions"></a> -## Definitions - -<a name="actiontype"></a> -### ActionType -Action type to be describer on the order item. -modify is not managed in Beijing release - -*Type* : enum (add, modify, delete, noChange) - - -<a name="createhub"></a> -### CreateHub -This structure is used as a request for POST Hub operation - - -|Name|Description|Schema| -|---|---|---| -|**callback** <br>*required*|Address where notification must be send|string| -|**query** <br>*required*|The query must have an eventType=notificationName information.<br>Optionally a ? could be added to reduce hub.<br>query”:”eventType = ServiceOrderStateChangeNotification”&serviceOrder.state=COMPLETED|string| - - -<a name="createserviceorder"></a> -### CreateServiceOrder -This structure is used in the operation POST for a serviceOrder request. -Attribute description is not accurate and should be find in the serviceOrder class. - - -|Name|Description|Schema| -|---|---|---| -|**@baseType** <br>*optional*||string| -|**@schemaLocation** <br>*optional*||string| -|**@type** <br>*optional*||string| -|**category** <br>*optional*|Used to categorize the order that can be useful for the OM system (e.g. “broadband”, “TVOption”, ...)|string| -|**description** <br>*optional*|A free-text description of the service order|string| -|**externalId** <br>*optional*|ID given by the consumer and only understandable by him (to facilitate his searches)|string| -|**orderItem** <br>*optional*||< [CreateServiceOrderItem](#createserviceorderitem) > array| -|**orderRelationship** <br>*optional*||< [OrderRelationship](#orderrelationship) > array| -|**priority** <br>*optional*|A way that can be used by consumers to prioritize orders in Service Order Management system (from 0 to 4 : 0 is the highest priority, and 4 the lowest)|string| -|**relatedParty** <br>*optional*||< [RelatedParty](#relatedparty) > array| -|**requestedCompletionDate** <br>*optional*|Requested delivery date from the requestor perspective|string (date-time)| -|**requestedStartDate** <br>*optional*|Order start date wished by the requestor|string (date-time)| - - -<a name="createserviceorderitem"></a> -### CreateServiceOrderItem -This structure is used in the operation POST for a serviceOrder request to describe an item. -Attribute description is not accurate and should be find in the serviceOrderItem class. - - -|Name|Description|Schema| -|---|---|---| -|**@baseType** <br>*optional*|Indicates the base type of the resource.|string| -|**@schemaLocation** <br>*optional*|A link to the schema describing this REST resource|string| -|**@type** <br>*optional*|Indicates the type of resource.|string| -|**action** <br>*optional*||[ActionType](#actiontype)| -|**id** <br>*required*|Identifier of the line item (generally it is a sequence number 01, 02, 03, …)|string| -|**orderItemRelationship** <br>*optional*||< [OrderItemRelationship](#orderitemrelationship) > array| -|**service** <br>*required*||[Service](#service)| - - -<a name="errorrepresentation"></a> -### ErrorRepresentation -Representation of an error. - - -|Name|Description|Schema| -|---|---|---| -|**@schemaLocation** <br>*optional*|it provides a link to the schema describing a REST resource|string| -|**@type** <br>*optional*|The class type of a REST resource|string| -|**code** <br>*required*|Application related code (as defined in the API or from a common list)|integer (int32)| -|**message** <br>*optional*|Text that provide more details and corrective actions related to the error. This can be shown to a client user|string| -|**reason** <br>*required*|Text that explains the reason for error. This can be shown to a client user.|string| -|**referenceError** <br>*optional*|url pointing to documentation describing the error|string| -|**status** <br>*optional*|http error code extension like 400-2|string| - - -<a name="eventtype"></a> -### EventType -*Type* : enum (ServiceOrderCreationNotification, ServiceOrderStateChangeNotification, ServiceOrderItemStateChangeNotification) - - -<a name="hub"></a> -### Hub -An HUB resource is used by client side to subscribe to notification. -Not managed in the Beijing release. - - -|Name|Description|Schema| -|---|---|---| -|**callback** <br>*required*|Address where notification must be send|string| -|**id** <br>*optional*|Hub Id|string| -|**query** <br>*required*||string| - - -<a name="notification"></a> -### Notification -Used to describe notification for this API - -*Type* : object - - -<a name="orderitemrelationship"></a> -### OrderItemRelationship -Linked order item to the one containing this attribute. -nbi component used this relationship to sort request to ONAP. - - -|Name|Description|Schema| -|---|---|---| -|**id** <br>*required*|Unique identifier of an order item|string| -|**type** <br>*required*||[RelationshipType](#relationshiptype)| - - -<a name="ordermessage"></a> -### OrderMessage -An optional array of messages associated with the Order - - -|Name|Description|Schema| -|---|---|---| -|**code** <br>*optional*|A code associated to this message|string| -|**correctionRequired** <br>*required*|Indicator that an action is required to allow service order fullfilment to follow up|boolean| -|**field** <br>*optional*|Service Order attribute related to this error message|string| -|**messageInformation** <br>*optional*|Message related to this order|string| -|**severity** <br>*required*||[SeverityMessage](#severitymessage)| - - -<a name="orderrelationship"></a> -### OrderRelationship -Linked order to the one containing this attribute. -This relationship is not used to sort ONAP request. - - -|Name|Description|Schema| -|---|---|---| -|**@referredType** <br>*optional*|Type of the referred order.|string| -|**href** <br>*optional*|A hyperlink to the related order|string| -|**id** <br>*required*|The id of the related order|string| -|**type** <br>*optional*|The type of related order, can be : “dependency” if the order needs to be “not started” until another order item is complete (a service order in this case) or “cross-ref” to keep track of the source order (a productOrder)|string| - - -<a name="relatedparty"></a> -### RelatedParty -A related party defines party which are involved in this order and the role they are playing. -for Beijing release: -With the current version of APIs used from SO and AAI we need to manage a ‘customer’. This customer concept is confusing with Customer BSS concept. We took the following rules to manage the ‘customer’ information: -o It could be provided through a serviceOrder in the service Order a relatedParty with role ‘ONAPcustomer’ should be provided in the serviceOrder header (we will not consider in this release the party at item level); External API component will check if this customer exists and create it in AAI if not. -o If no relatedParty are provided the service will be affected to ‘generic’ customer (dummy customer) – we assume this ‘generic’ customer always exists. - - -|Name|Description|Schema| -|---|---|---| -|**@referredType** <br>*optional*||string| -|**href** <br>*optional*|An hyperlink to the party - not used in Beijnig release|string| -|**id** <br>*required*|Unique identifier of a related party|string| -|**name** <br>*optional*|Name of the related party|string| -|**role** <br>*required*|The role of the related party (e.g. Owner, requester, fullfiller etc).<br>ONLY 'ONAPcustomer' is considered|string| - - -<a name="relationshiptype"></a> -### RelationshipType -Relationship type; -Only reliesOn is managed in Beijing release. - -*Type* : enum (reliesOn) - - -<a name="service"></a> -### Service -Service (to be added, modified, deleted) description - - -|Name|Description|Schema| -|---|---|---| -|**@schemaLocation** <br>*optional*|The URL to get the resource schema.<br>Not managed in Beijing Release|string| -|**@type** <br>*optional*|To define the service type<br>Not managed in Beijing Release|string| -|**href** <br>*optional*|Reference to the Service (useful for delete or modify command).<br>Not managed in Beijing release.|string| -|**id** <br>*required*|Identifier of a service instance.<br>It must be valued if orderItem action is 'delete' and corresponds to a AAI service.id|string| -|**name** <br>*optional*|Name of the service - When orderItem action is 'add' this name will be used in ONAP/SO request as InstaceName.|string| -|**relatedParty** <br>*optional*||< [RelatedParty](#relatedparty) > array| -|**serviceCharacteristic** <br>*optional*||< [ServiceCharacteristic](#servicecharacteristic) > array| -|**serviceRelationship** <br>*optional*||< [ServiceRelationship](#servicerelationship) > array| -|**serviceSpecification** <br>*optional*||[ServiceSpecificationRef](#servicespecificationref)| -|**serviceState** <br>*optional*|The lifecycle state of the service requested;<br>Not managed in Beijing release.|string| - - -<a name="servicecharacteristic"></a> -### ServiceCharacteristic -ServiceCharacteristic - - -|Name|Description|Schema| -|---|---|---| -|**name** <br>*required*|Name of characteristic|string| -|**value** <br>*optional*||[Value](#value)| -|**valueType** <br>*optional*||string| - - -<a name="serviceorder"></a> -### ServiceOrder -A Service Order is a type of order which can be used to place an order between a customer and a service provider or between a service provider and a partner and vice versa - - -|Name|Description|Schema| -|---|---|---| -|**@baseType** <br>*optional*||string| -|**@schemaLocation** <br>*optional*||string| -|**@type** <br>*optional*||string| -|**category** <br>*optional*|Used to categorize the order that can be useful for the OM system (e.g. “broadband”, “TVOption”, ...)|string| -|**completionDateTime** <br>*optional*|Date when the order was completed|string (date-time)| -|**description** <br>*optional*|A free-text description of the service order|string| -|**expectedCompletionDate** <br>*optional*||string (date-time)| -|**externalId** <br>*optional*|ID given by the consumer and only understandable by him (to facilitate his searches)|string| -|**href** <br>*optional*|Hyperlink to access the order|string| -|**id** <br>*required*|ID created on repository side|string| -|**orderDate** <br>*optional*||string (date-time)| -|**orderItem** <br>*optional*||< [ServiceOrderItem](#serviceorderitem) > array| -|**orderMessage** <br>*optional*||< [OrderMessage](#ordermessage) > array| -|**orderRelationship** <br>*optional*||< [OrderRelationship](#orderrelationship) > array| -|**priority** <br>*optional*|A way that can be used by consumers to prioritize orders in Service Order Management system (from 0 to 4 : 0 is the highest priority, and 4 the lowest)|string| -|**relatedParty** <br>*optional*||< [RelatedParty](#relatedparty) > array| -|**requestedCompletionDate** <br>*optional*|Requested delivery date from the requestor perspective|string (date-time)| -|**requestedStartDate** <br>*optional*|Order start date wished by the requestor|string (date-time)| -|**startDate** <br>*optional*|Date when the order was started for processing|string (date-time)| -|**state** <br>*optional*||[StateType](#statetype)| - - -<a name="serviceordercreationnotification"></a> -### ServiceOrderCreationNotification -Notification structure for a service order creation notification - - -|Name|Description|Schema| -|---|---|---| -|**event** <br>*required*||[ServiceOrderSummary](#serviceordersummary)| -|**eventDate** <br>*required*||string (date-time)| -|**eventId** <br>*required*||string| -|**eventType** <br>*required*|**Default** : `"ServiceOrderCreationNotification"`|string| - - -<a name="serviceorderitem"></a> -### ServiceOrderItem -An identified part of the order. A service order is decomposed into one or more order items. - - -|Name|Description|Schema| -|---|---|---| -|**@baseType** <br>*optional*|not used in Beijing relase|string| -|**@schemaLocation** <br>*optional*|not used in Beijing relase|string| -|**@type** <br>*optional*|Used to extend the order item.<br>not used in Beijing relase|string| -|**action** <br>*optional*||[ActionType](#actiontype)| -|**id** <br>*required*|Identifier of the line item (generally it is a sequence number 01, 02, 03, …)|string| -|**orderItemMessage** <br>*optional*||< [OrderMessage](#ordermessage) > array| -|**orderItemRelationship** <br>*optional*||< [OrderItemRelationship](#orderitemrelationship) > array| -|**percentProgress** <br>*optional*|Progress of the delivery in percentage.|string| -|**service** <br>*required*||[Service](#service)| -|**state** <br>*optional*||[StateType](#statetype)| - - -<a name="serviceorderitemstatechangenotification"></a> -### ServiceOrderItemStateChangeNotification - -|Name|Description|Schema| -|---|---|---| -|**event** <br>*required*||[ServiceOrderSummaryWithItem](#serviceordersummarywithitem)| -|**eventDate** <br>*required*||string (date-time)| -|**eventId** <br>*required*||string| -|**eventType** <br>*required*|**Default** : `"ServiceOrderStateChangeNotification"`|string| - - -<a name="serviceorderitemsummary"></a> -### ServiceOrderItemSummary -Service Order item summary to be used for notification - - -|Name|Description|Schema| -|---|---|---| -|**action** <br>*optional*||[ActionType](#actiontype)| -|**id** <br>*required*|Identifier of the line item (generally it is a sequence number 01, 02, 03, …)|string| -|**service** <br>*required*||[Service](#service)| -|**state** <br>*optional*||[StateType](#statetype)| - - -<a name="serviceorderstatechangenotification"></a> -### ServiceOrderStateChangeNotification -Service order state change notification description - - -|Name|Description|Schema| -|---|---|---| -|**event** <br>*required*||[ServiceOrderSummary](#serviceordersummary)| -|**eventDate** <br>*required*||string (date-time)| -|**eventId** <br>*required*||string| -|**eventType** <br>*required*|**Default** : `"ServiceOrderStateChangeNotification"`|string| - - -<a name="serviceordersummary"></a> -### ServiceOrderSummary -This structure is used to provide a subset of serviceOrder attributes to be provided in particular for notification messages - - -|Name|Description|Schema| -|---|---|---| -|**completionDateTime** <br>*optional*|Date when the order was completed|string (date-time)| -|**externalId** <br>*optional*|ID given by the consumer and only understandable by him (to facilitate his searches)|string| -|**href** <br>*optional*|Hyperlink to access the order|string| -|**id** <br>*required*|ID created on repository side|string| -|**orderDate** <br>*optional*||string (date-time)| -|**state** <br>*optional*||[StateType](#statetype)| - - -<a name="serviceordersummarywithitem"></a> -### ServiceOrderSummaryWithItem -Service order item summary with item description - - -|Name|Description|Schema| -|---|---|---| -|**completionDateTime** <br>*optional*|Date when the order was completed|string (date-time)| -|**externalId** <br>*optional*|ID given by the consumer and only understandable by him (to facilitate his searches)|string| -|**href** <br>*optional*|Hyperlink to access the order|string| -|**id** <br>*required*|ID created on repository side|string| -|**orderDate** <br>*optional*||string (date-time)| -|**orderItem** <br>*optional*||< [ServiceOrderItemSummary](#serviceorderitemsummary) > array| -|**state** <br>*optional*||[StateType](#statetype)| - - -<a name="serviceref"></a> -### ServiceRef -Service references - - -|Name|Description|Schema| -|---|---|---| -|**href** <br>*optional*|Reference of the service|string| -|**id** <br>*required*|Unique identifier of the service|string| - - -<a name="servicerelationship"></a> -### ServiceRelationship -Linked Services to the one instantiate -nbi component used this relationship to sort request to ONAP. - - -|Name|Schema| -|---|---| -|**service** <br>*required*|[Service](#service)| -|**type** <br>*required*|[RelationshipType](#relationshiptype)| - - -<a name="servicespecificationref"></a> -### ServiceSpecificationRef -The service specification (these attributes are fetched from the catalogue). - - -|Name|Description|Schema| -|---|---|---| -|**@baseType** <br>*optional*|Not used in Beijing release|string| -|**@schemaLocation** <br>*optional*|Not used in Beijing release|string| -|**@type** <br>*optional*|Not used in Beijing release|string| -|**href** <br>*optional*|Reference of the service specification<br>Not used in Beijing release.|string| -|**id** <br>*required*|Unique identifier of the service specification<br>This information will be used to retrieve SDC information + mapped to SO ModelNameVersionIdin the request.|string| -|**name** <br>*optional*|Name of the service specification<br>Not used in Beijing release|string| -|**targetServiceSchema** <br>*optional*||[TargetServiceSchema](#targetserviceschema)| -|**version** <br>*optional*|Version of the service Specification<br>Not used in Beijing release|string| - - -<a name="severitymessage"></a> -### SeverityMessage -*Type* : enum (information, error) - - -<a name="statetype"></a> -### StateType -List of possible state for the order and the orderItem. - -*Type* : enum (acknowledged, rejected, pending, held, inProgress, cancelled, completed, failed, partial) - - -<a name="targetserviceschema"></a> -### TargetServiceSchema -Target to the schema describing the service spec resource - - -|Name|Description|Schema| -|---|---|---| -|**@schemaLocation** <br>*required*|This field provided a link to the schema describing this REST resource.|string| -|**@type** <br>*required*|Indicates the (class) type of resource.|string| - - -<a name="value"></a> -### Value -Value is a descriptive structure for service characteristic; -For Beijing we only manage 'basic' attribute - the serviceCharacteristicValue must be used. - - -|Name|Description|Schema| -|---|---|---| -|**@schemaLocation** <br>*optional*|This field provided a link to the schema describing this REST resource.<br>Not used in Beijing Release|string| -|**@type** <br>*optional*|Indicates the (class) type of resource.<br>Not used in Beijing Release|string| -|**serviceCharacteristicValue** <br>*optional*|Value of the characteristic.<br>This attribute must be used in Beijing Release to provide characteristic value.|string| - |