Post Vnf Instances

Post Vnf Instances

Create VNF Identifier. The POST method creates a new VNF instance resource. This method shall follow the provisions specified in the tables 5.4.2.3.1-1 and 5.4.2.3.1-2 for URI query parameters, request and response data structures, and response codes. As the result of successfully executing this method, a new "Individual VNF instance" resource as defined in clause 5.4.3 shall have been created, and the value of the "instantiationState" attribute in the representation of that resource shall be "NOT_INSTANTIATED". A notification of type VnfIdentifierCreationNotification shall be triggered as part of successfully executing this method as defined in clause 5.5.2.18.

Request
URI
POST
https://{api_host}/telco/api/vnflcm/v2/vnf_instances
COPY
Header Parameters
string
Accept
Required

Content-Types that are acceptable for the response. Reference: IETF RFC 7231

string
Authorization
Optional

The authorization token for the request. Reference: IETF RFC 7235

string
Content-Type
Required

The MIME type of the body of the request. Reference: IETF RFC 7231

string
Version
Required

Version of the API requested to use when responding to this request.


Request Body

The VNF creation parameters

InlineVnf_instancesRequestBody of type(s) application/json
Required
{
    "vnfdId": "string",
    "vnfInstanceName": "string",
    "vnfInstanceDescription": "string",
    "metadata": {
        "tags": [
            {
                "name": "string",
                "autoCreated": false
            }
        ],
        "extensionId": "string"
    }
}
string
vnfdId
Required

Identifier that identifies the VNFD which defines the VNF instance to be created.

string
vnfInstanceName
Optional

Human-readable name of the VNF instance to be created.

string
vnfInstanceDescription
Optional

Human-readable description of the VNF instance to be created.

object
metadata
Optional

If present, this attribute provides values for the "metadata" attribute in "VnfInstance", as defined in clause 5.5.2.2. If a "metadata" entry in this CreateVnfRequest data structure has a corresponding default value declared in the VNFD, the value in the "metadata" entry in the CreateVnfRequest structure takes precedence.

Authentication
This operation uses the following authentication methods.
Responses
201

201 CREATED Shall be returned when a new "Individual VNF instance" resource and the associated VNF instance identifier washas been created successfully. The response body shall contain a representation of the created VNF instance, as defined in clause 5.5.2.2. The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created VNF instance.

Returns InlineVnf_instances201Response of type(s) */*
{
    "id": "string",
    "vnfInstanceName": "string",
    "vnfInstanceDescription": "string",
    "vnfdId": "string",
    "vnfProvider": "string",
    "vnfProductName": "string",
    "vnfSoftwareVersion": "string",
    "vnfdVersion": "string",
    "vimConnectionInfo": [
        {
            "id": "string",
            "vimId": "string",
            "vimType": "string",
            "extra": {
                "deploymentProfileId": "string",
                "nodeProfileName": "string",
                "nodePoolId": "string",
                "nodePoolName": "string",
                "vimName": "string",
                "nodePoolBatchSize": 0,
                "nodePools": [
                    "string"
                ]
            }
        }
    ],
    "instantiationState": "string",
    "instantiatedVnfInfo": {
        "flavourId": "string",
        "vnfState": "string",
        "scaleStatus": [
            {
                "aspectId": "string",
                "scaleLevel": 0
            }
        ],
        "maxScaleLevels": [
            {
                "aspectId": "string",
                "scaleLevel": 0
            }
        ],
        "extCpInfo": [
            {
                "id": "string",
                "cpdId": "string",
                "cpProtocolInfo": [
                    {
                        "layerProtocol": "string",
                        "ipOverEthernet": {
                            "macAddress": "string",
                            "ipAddresses": [
                                {
                                    "type": "string",
                                    "addresses": [
                                        "string"
                                    ],
                                    "isDynamic": false,
                                    "addressRange": {
                                        "minAddress": "string",
                                        "maxAddress": "string"
                                    },
                                    "subnetId": "string"
                                }
                            ]
                        }
                    }
                ],
                "extLinkPortId": "string",
                "associatedVnfcCpId": "string",
                "associatedVnfVirtualLinkId": "string"
            }
        ],
        "extVirtualLinkInfo": [
            {
                "id": "string",
                "resourceHandle": {
                    "vimConnectionId": "string",
                    "resourceProviderId": "string",
                    "resourceId": "string",
                    "vimLevelResourceType": "string"
                },
                "extLinkPorts": [
                    {
                        "id": "string",
                        "resourceHandle": {
                            "vimConnectionId": "string",
                            "resourceProviderId": "string",
                            "resourceId": "string",
                            "vimLevelResourceType": "string"
                        },
                        "cpInstanceId": "string"
                    }
                ]
            }
        ],
        "extManagedVirtualLinkInfo": [
            {
                "id": "string",
                "vnfVirtualLinkDescId": "string",
                "networkResource": {
                    "vimConnectionId": "string",
                    "resourceProviderId": "string",
                    "resourceId": "string",
                    "vimLevelResourceType": "string"
                },
                "vnfLinkPorts": [
                    {
                        "id": "string",
                        "resourceHandle": {
                            "vimConnectionId": "string",
                            "resourceProviderId": "string",
                            "resourceId": "string",
                            "vimLevelResourceType": "string"
                        },
                        "cpInstanceId": "string",
                        "cpInstanceType": "string"
                    }
                ]
            }
        ],
        "monitoringParameters": [
            {
                "id": "string",
                "name": "string",
                "performanceMetric": "string"
            }
        ],
        "localizationLanguage": "string",
        "vnfcResourceInfo": [
            {
                "id": "string",
                "vduId": "string",
                "computeResource": {
                    "vimConnectionId": "string",
                    "resourceProviderId": "string",
                    "resourceId": "string",
                    "vimLevelResourceType": "string"
                },
                "zoneId": "string",
                "storageResourceIds": [
                    "string"
                ],
                "reservationId": "string",
                "vnfcCpInfo": [
                    {
                        "id": "string",
                        "cpdId": "string",
                        "vnfExtCpId": "string",
                        "cpProtocolInfo": [
                            {
                                "layerProtocol": "string",
                                "ipOverEthernet": {
                                    "macAddress": "string",
                                    "ipAddresses": [
                                        {
                                            "type": "string",
                                            "addresses": [
                                                "string"
                                            ],
                                            "isDynamic": false,
                                            "addressRange": {
                                                "minAddress": "string",
                                                "maxAddress": "string"
                                            },
                                            "subnetId": "string"
                                        }
                                    ]
                                }
                            }
                        ],
                        "vnfLinkPortId": "string"
                    }
                ],
                "metadata": {
                    "dispatchType": "string",
                    "namespace": "string",
                    "chartName": "string",
                    "chartVersion": "string",
                    "repoUrl": "string",
                    "username": "string",
                    "helmVersion": "string",
                    "instantiationState": "string"
                }
            }
        ],
        "virtualLinkResourceInfo": [
            {
                "id": "string",
                "vnfVirtualLinkDescId": "string",
                "networkResource": {
                    "vimConnectionId": "string",
                    "resourceProviderId": "string",
                    "resourceId": "string",
                    "vimLevelResourceType": "string"
                },
                "zoneId": "string",
                "reservationId": "string",
                "vnfLinkPorts": [
                    {
                        "id": "string",
                        "resourceHandle": {
                            "vimConnectionId": "string",
                            "resourceProviderId": "string",
                            "resourceId": "string",
                            "vimLevelResourceType": "string"
                        },
                        "cpInstanceId": "string",
                        "cpInstanceType": "string"
                    }
                ]
            }
        ],
        "virtualStorageResourceInfo": [
            {
                "id": "string",
                "virtualStorageDescId": "string",
                "storageResource": {
                    "vimConnectionId": "string",
                    "resourceProviderId": "string",
                    "resourceId": "string",
                    "vimLevelResourceType": "string"
                },
                "zoneId": "string",
                "reservationId": "string"
            }
        ]
    },
    "metadata": {
        "vnfPkgId": "string",
        "vnfCatalogName": "string",
        "managedBy": {
            "extensionSubtype": "string",
            "extensionName": "string"
        },
        "nfType": "string",
        "lcmOperation": "string",
        "lcmOperationState": "string",
        "isUsedByNS": "string",
        "attachedNSCount": 0,
        "isolationMode": "string",
        "creationUser": "string",
        "creationTenantId": "string",
        "extVirtualLinks": [
            {
                "id": "string",
                "vimConnectionId": "string",
                "resourceProviderId": "string",
                "resourceId": "string",
                "extCps": [
                    {
                        "cpdId": "string",
                        "cpConfig": [
                            {
                                "cpInstanceId": "string",
                                "linkPortId": "string",
                                "cpProtocolData": [
                                    {
                                        "layerProtocol": "string",
                                        "ipOverEthernet": {
                                            "macAddress": "string",
                                            "ipAddresses": [
                                                {
                                                    "type": "string",
                                                    "fixedAddresses": [
                                                        "string"
                                                    ],
                                                    "numDynamicAddresses": 0,
                                                    "addressRange": {
                                                        "minAddress": "string",
                                                        "maxAddress": "string"
                                                    },
                                                    "subnetId": "string"
                                                }
                                            ]
                                        }
                                    }
                                ]
                            }
                        ]
                    }
                ],
                "extLinkPorts": [
                    {
                        "id": "string",
                        "resourceHandle": {
                            "vimConnectionId": "string",
                            "resourceProviderId": "string",
                            "resourceId": "string",
                            "vimLevelResourceType": "string"
                        }
                    }
                ]
            }
        ],
        "tags": [
            {
                "name": "string",
                "autoCreated": false
            }
        ]
    },
    "_links": {
        "self": {
            "href": "string"
        },
        "indicators": {
            "href": "string"
        },
        "instantiate": {
            "href": "string"
        },
        "terminate": {
            "href": "string"
        },
        "scale": {
            "href": "string"
        },
        "scaleToLevel": {
            "href": "string"
        },
        "changeFlavour": {
            "href": "string"
        },
        "heal": {
            "href": "string"
        },
        "operate": {
            "href": "string"
        },
        "changeExtConn": {
            "href": "string"
        }
    }
}

Response Headers

string
Content-Type

The MIME type of the body of the response.

string
Location

The resource URI of the created VNF instance.

string
WWW-Authenticate

Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.

string
Version

Version of the API used in the response.


400

400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4.

Returns InlineVnf_instances400Response of type(s) */*
{
    "type": "string",
    "title": "string",
    "status": 0,
    "detail": "string",
    "instance": "string"
}

Response Headers

string
Content-Type

The MIME type of the body of the response.

string
WWW-Authenticate

Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.

string
Version

Version of the API used in the response.


401

401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided.

Returns InlineVnf_instances401Response of type(s) */*
{
    "type": "string",
    "title": "string",
    "status": 0,
    "detail": "string",
    "instance": "string"
}

Response Headers

string
Content-Type

The MIME type of the body of the response.

string
WWW-Authenticate

Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.

string
Version

Version of the API used in the response.


403

403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it.

Returns InlineVnf_instances403Response of type(s) */*
{
    "type": "string",
    "title": "string",
    "status": 0,
    "detail": "string",
    "instance": "string"
}

Response Headers

string
Content-Type

The MIME type of the body of the response.

string
WWW-Authenticate

Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.

string
Version

Version of the API used in the response.


404

404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array.

Returns InlineVnf_instances404Response of type(s) */*
{
    "type": "string",
    "title": "string",
    "status": 0,
    "detail": "string",
    "instance": "string"
}

Response Headers

string
Content-Type

The MIME type of the body of the response.

string
WWW-Authenticate

Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.

string
Version

Version of the API used in the response.


405

405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted.

Returns InlineVnf_instances405Response of type(s) */*
{
    "type": "string",
    "title": "string",
    "status": 0,
    "detail": "string",
    "instance": "string"
}

Response Headers

string
Content-Type

The MIME type of the body of the response.

string
WWW-Authenticate

Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.

string
Version

Version of the API used in the response.


406

406 NOT ACCEPTABLE If the "Accept" HTTP header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted.

Returns InlineVnf_instances406Response of type(s) */*
{
    "type": "string",
    "title": "string",
    "status": 0,
    "detail": "string",
    "instance": "string"
}

Response Headers

string
Content-Type

The MIME type of the body of the response.

string
WWW-Authenticate

Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.

string
Version

Version of the API used in the response.


422

422 UNPROCESSABLE ENTITY If the payload body of a request contains syntactically correct data (e.g. well-formed JSON) but the data cannot be processed (e.g. because it fails validation against a schema), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. This error response code is only applicable for methods that have a request body.

Returns InlineVnf_instances422Response of type(s) */*
{
    "type": "string",
    "title": "string",
    "status": 0,
    "detail": "string",
    "instance": "string"
}

Response Headers

string
Content-Type

The MIME type of the body of the response.

string
WWW-Authenticate

Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.

string
Version

Version of the API used in the response.


500

500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem.

Returns InlineVnf_instances500Response of type(s) */*
{
    "type": "string",
    "title": "string",
    "status": 0,
    "detail": "string",
    "instance": "string"
}

Response Headers

string
Content-Type

The MIME type of the body of the response.

string
WWW-Authenticate

Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.

string
Version

Version of the API used in the response.


503

503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted.

Returns InlineVnf_instances503Response of type(s) */*
{
    "type": "string",
    "title": "string",
    "status": 0,
    "detail": "string",
    "instance": "string"
}

Response Headers

string
Content-Type

The MIME type of the body of the response.

string
WWW-Authenticate

Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.

string
Version

Version of the API used in the response.


504

504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code.

Returns InlineVnf_instances504Response of type(s) */*
{
    "type": "string",
    "title": "string",
    "status": 0,
    "detail": "string",
    "instance": "string"
}

Response Headers

string
Content-Type

The MIME type of the body of the response.

string
WWW-Authenticate

Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.

string
Version

Version of the API used in the response.