Standard Public Cloud Co - Create
To instantiate a cloud connector, you must follow the above steps in the order described.
1. Retrieve technical VPN Id (vpnId)
GET https://{envUri}/api/v1/projects/{projectId}/network/virtualprivatenetworks
URI Parameters
Name | In | Required | Type | Description |
---|---|---|---|---|
envUri | path | true | string | Url of the target platform. |
projectId | path | true | string | The project identifier which uniquely identify your project in Evolution Platform. |
Responses
Name | Type | Description |
---|---|---|
200 OK | VPN | OK |
Other Status Codes | Error | Unexpected error. |
Response body example
[
{
"id": "2846fd1f-75f6-4e79-94af-368be950e79c",
"name": "VPNName1",
"description": "VPN Name 1",
"networkType": "BVPN"
},
{
"id": "351cd244-37b3-41b4-8b7a-a8576862820d",
"name": "VPNName1",
"description": "VPN Name 2",
"networkType": "BVPN"
},
{
"id": "93b22b3c-fd7e-4c04-87cb-52df45fe6beb",
"name": "VPNName3,
"description": "VPN Name 3",
"networkType": "BVPN"
}
]
{technicalVpnId}
is associated to one of the "id" field inside list of the Technical VPN of the response.
Example : {technicalVpnId}
= "93b22b3c-fd7e-4c04-87cb-52df45fe6beb"
2. Retrieve Point Of Presence Id (popId)
GET https://{envUri}/api/v1/network/pointsofpresence/ipsec?limit=20&offset=0
URI Parameters
Name | In | Required | Type | Description |
---|---|---|---|---|
envUri | path | true | string | Url of the target platform. |
limit | query | false | integer | The limit query parameter specifies the number of resources that a single response page contains. |
offset | query | false | integer | The offset query parameter is used to exclude from a response the first N items of a resource collection. |
Responses
Name | Type | Description |
---|---|---|
200 OK | POP | OK |
Other Status Codes | Error | Unexpected error. |
Response body example
[
{
"popDisplayname": "Pop 1",
"popName": "POP-1",
"popId": "P1",
"popCountryCode": "FR"
},
{
"popDisplayname": "Pop 2",
"popName": "POP-2",
"popId": "P2",
"popCountryCode": "UK"
},
{
"popDisplayname": "Pop 3",
"popName": "DE-3",
"popId": "DE3",
"popCountryCode": "DE"
},
{
"popDisplayname": "Pop 4",
"popName": "POP-4",
"popId": "POP4",
"popCountryCode": "NL"
},
{
"popDisplayname": "Pop 5",
"popName": "POP-5",
"popId": "P5",
"popCountryCode": "US"
}
]
{popId}
is associated to one of the "popId" field inside list of the POP of the response.
Example : {popId}
= "POP4"
3. Retrieve Azure Credentials Id
GET https://{envUri}/api/v1/projects/{projectId}/azure/credentials?limit=20&offset=0
URI Parameters
Name | In | Required | Type | Description |
---|---|---|---|---|
envUri | path | true | string | Url of the target platform. |
projectId | path | true | string | The project identifier which uniquely identify your project in Evolution Platform. |
Responses
Name | Type | Description |
---|---|---|
200 OK | Credential | OK |
Other Status Codes | Error | Unexpected error. |
Response body example
[
{
"id": "b1c3d7b8-f249-4a25-9f26-02682bbad4f3",
"projectId": "{projectId}",
"name": "Azure_Credential_1",
"csp": "AZURE",
"description": "My Azure credentials 1",
"projectName": "MyAzureProjectName 1",
"expirationDate": "YYYY-MM-DD"
},
{
"id": "a2b3d7b8-f249-4a25-9f26-02682bbad4f3",
"projectId": "{projectId}",
"name": "Azure_Credential_2",
"csp": "AZURE",
"description": "My Azure credentials 2",
"projectName": "MyAzureProjectName 2",
"expirationDate": "YYYY-MM-DD"
}
]
{azureCredentialId}
is associated to one of the "id" field inside list of the Azure Credential of the response.
Example : {azureCredentialId}
= "b1c3d7b8-f249-4a25-9f26-02682bbad4f3"
4. Retrieve the Azure Region
GET https://{envUri}/api/v1/projects/{projectId}/azure/regions?azureCspCredentialId={azureCredentialId}
URI Parameters
Name | In | Required | Type | Description |
---|---|---|---|---|
envUri | path | true | string | Url of the target platform. |
projectId | path | true | string | The project identifier which uniquely identify your project in Evolution Platform. |
azureCredentialId | query | true | string | The Azure Credential Identifier, which uniquely identifies your credentials in Evolution Platform and was retrieved in a previous step. |
Responses
Name | Type | Description |
---|---|---|
200 OK | Region | OK |
Other Status Codes | Error | Unexpected error. |
Response body example
[
{
"name": "asia",
"displayName": "Asia"
},
{
"name": "asiapacific",
"displayName": "Asia Pacific"
},
{
"name": "australia",
"displayName": "Australia"
},
{
"name": "australiacentral",
"displayName": "Australia Central"
},
{
"name": "northeurope",
"displayName": "North Europe"
},
...
]
The value of the name
field in the Azure Region list of the response is linked to the {azureRegion}
.
Example : {azureRegion}
= "northeurope"
5. Retrieve the Azure resource group
GET https://{envUri}/api/v1/projects/{projectId}/azure/resourcegroups?azureCspCredentialId={azureCredentialId}&azureRegion={azureRegion}
URI Parameters
Name | In | Required | Type | Description |
---|---|---|---|---|
envUri | path | true | string | Url of the target platform. |
projectId | path | true | string | The project identifier which uniquely identify your project in Evolution Platform. |
azureCredentialId | query | true | string | The Azure Credential Identifier which uniquely identify your credentials in Evolution Platform and was retrieved in a previous step. |
azureRegion | query | true | string | The Azure Region Identifier which uniquely identify the Azure Region in Evolution Platform and was retrieved in a previous step. |
Responses
Name | Type | Description |
---|---|---|
200 OK | Resource Group | OK |
Other Status Codes | Error | Unexpected error. |
Response body example
[
{
"name": "rg-1",
"location": "northeurope"
},
{
"name": "rg-2",
"location": "northeurope"
},
{
"name": "rg-3",
"location": "northeurope"
},
{
"name": "rg-4",
"location": "northeurope"
}
]
The value of the name
field in the Azure Resource Group list of the response is linked to the {azureResourceGroup}
.
Example : {azureResourceGroup}
= "rg-3"
6. Retrieve the Azure Virtual Network
GET https://{envUri}/api/v1/projects/{projectId}/network/virtualprivatenetworks
URI Parameters
Name | In | Required | Type | Description |
---|---|---|---|---|
envUri | path | true | string | Url of the target platform. |
projectId | path | true | string | The project identifier which uniquely identify your project in Evolution Platform. |
Responses
Name | Type | Description |
---|---|---|
200 OK | Virtual network | OK |
Other Status Codes | Error | Unexpected error. |
Response body example
[
{
"id": "f6072903-de58-4435-bd01-515e6b28f452",
"name": "vnet-01",
"description": "vnet-01",
"networkType": "BVPN"
},
{
"id": "c9afb3f8-b080-4323-b374-71214d0e0e0a",
"name": "vnet-02",
"description": "vnet-02",
"networkType": "BVPN"
},
{
"id": "64e9af24-738a-4e94-84ee-15131432b246",
"name": "vnet-03",
"description": "vnet-03",
"networkType": "BVPN"
},
...
]
The value of the name
field in the Azure Virtual Network list of the response is linked to the {vnetName}
.
Example : {vnetName}
= "vnet-02"
7. Create the cloud connector
POST https://{envUri}/api/v1/projects/{projectId}/azure/cloudconnectors/publicstandarddynamics
URI Parameters
Name | In | Required | Type | Description |
---|---|---|---|---|
envUri | path | true | string | Url of the target platform. |
projectId | path | true | string | The project identifier which uniquely identify your project in Evolution Platform. |
Body content
Name | Required | Type | Description |
---|---|---|---|
name | true | String | Name of the cloud connector |
state | true | String | Expected state of Cloud connector. Set value to ACTIVE to create cloud connector in active state |
bandWidth | true | String | Bandwidth of the cloud connector. Value must be: 10, 20, 50, 100, 200, 500 or 1000 |
technicalVpnId | true | uuid | Identifier of the Orange Business Technical VPN |
azureCredentialId | true | uuid | Identifier of the Azure Credential in Evolution Plaform |
primaryPopLocalization | true | String | Localization of the primary Point Of Presence associated with the cloud connectorr |
azureRegion | true | String | Identifier of the Azure Region |
resourceGroupName | true | String | Name of the Azure Resource Group |
vnetName | true | String | Name of the Orange Business Virtual Network |
azureGatewaySubnet | true | String | Value of the Azure Gateway Subnet |
azureAsn | true | Integer | Value of the Azure AS Number. The parameter range is between is 64512 to 65534, Azure AS Number 65515 to 65520 are excluded as they are used by Microsoft Azure for internal purpose. |
networkSideAsn | true | Integer | Value of the Orange Business Network AS Number. The parameter range is between is 64512 to 65534, Azure AS Number 65515 to 65520 are excluded as they are used by Microsoft Azure for internal purpose. |
networkSideGatewaySubnet | true | Integer | Value of the Orange Business Network Gateway Subnet |
Responses
Name | Type | Description |
---|---|---|
200 OK | Cloud Connector | OK |
Other Status Codes | Error | Unexpected error. |
Content:
Name | Type | Description |
---|---|---|
name | String | Name of the cloud connector |
state | String | Expected state of Cloud connector. Set value to ACTIVE to create cloud connector in active state |
projectName | String | Name of the project in Evolution Platform |
projectId | uuid | Identifier of the project in Evolution Platform |
bandWidth | String | Bandwidth of the cloud connector. Value must be: 10, 20, 50, 100, 200, 500 or 1000 |
technicalVpnId | uuid | Identifier of the Orange Business Technical VPN |
azureCredentialId | uuid | Identifier of the Azure Credential in Evolution Plaform |
primaryPopLocalization | String | Primary pop localization of the cloud connector |
azureRegion | String | Identifier of the Azure Region |
resourceGroupName | String | Name of the Azure Resource Group |
vnetName | String | Name of the Orange Business Virtual Network |
azureGatewaySubnet | String | Value of the Azure Gateway Subnet |
azureAsn | Integer | Value of the Azure AS Number. The parameter range is between is 64512 to 65534, Azure AS Number 65515 to 65520 are excluded as they are used by Microsoft Azure for internal purpose. |
networkSideAsn | Integer | Value of the Orange Business Network AS Number. The parameter range is between is 64512 to 65534, Azure AS Number 65515 to 65520 are excluded as they are used by Microsoft Azure for internal purpose. |
networkSideGatewaySubnet | Integer | Value of the Orange Business Network Gateway Subnet |
workflowExecutionId | Integer | Identifier of the workflow |
workflowExecutionStatus | String | Status of the workflow |
Example : create connector in active mode
Request:
POST https://{envUri}/api/v1/projects/{projectId}/azure/cloudconnectors/publicstandarddynamics
{
"name": "Connection to PARIS",
"projectId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"azureCredentialId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"azureRegion": "northeurope",
"resourceGroupName": "rg-3",
"vnetName": "vnet-02",
"primaryPopLocalization": "POP4",
"bandWidth": 50,
"technicalVpnId":"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"azureAsn": 64512,
"networkSideAsn": 64513,
"networkSideGatewaySubnet":"59.23.124.12/29",
"azureGatewaySubnet":"69.45.47.145/27",
"state":"ACTIVE"
}
Response:
HTTP 200
Content: application/json
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"name": "Connection to PARIS",
"state": "PROVISIONING",
"projectName": "Demo",
"projectId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"bandWidth": 50,
"technicalVpnId": "93b22b3c-fd7e-4c04-87cb-52df45fe6beb",
"azureCredentialId": "b1c3d7b8-f249-4a25-9f26-02682bbad4f3",
"primaryPopLocalization": "POP4",
"azureRegion": "northeurope",
"resourceGroupName": "rg-3",
"vnetName": "vnet-02",
"azureGatewaySubnet": "69.45.47.145/27",
"azureAsn": 64512,
"networkSideAsn": 64513,
"networkSideGatewaySubnet": "59.23.124.12/29",
"workflowExecutionId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"workflowExecutionStatus": "CREATED"
}
The field state
will be PROVISIONING
during the creation phase, when the cloud connector is ready the state
will be ACTIVE
.
Go to Get tutorial to check the status of the cloud connector:
Example : create connector in designed mode
Request:
POST https://{envUri}/api/v1/projects/{projectId}/azure/cloudconnectors/publicstandarddynamics
{
"name": "Connection to PARIS",
"projectId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"azureCredentialId": "b1c3d7b8-f249-4a25-9f26-02682bbad4f3",
"azureRegion": "northeurope",
"resourceGroupName": "rg-3",
"vnetName": "vnet-02",
"primaryPopLocalization": "POP4",
"bandWidth": 50,
"technicalVpnId":"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"azureAsn": 64512,
"networkSideAsn": 64513,
"networkSideGatewaySubnet":"59.23.124.12/29",
"azureGatewaySubnet":"69.45.47.145/27",
"state":"DESIGNED"
}
Response:
HTTP 200
Content: application/json
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"name": "Connection to PARIS",
"state": "DESIGNING",
"projectName": "Demo",
"projectId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"bandWidth": 50,
"technicalVpnId": "93b22b3c-fd7e-4c04-87cb-52df45fe6beb",
"azureCredentialId": "b1c3d7b8-f249-4a25-9f26-02682bbad4f3",
"primaryPopLocalization": "POP4",
"azureRegion": "northeurope",
"resourceGroupName": "rg-3",
"vnetName": "vnet-02",
"azureGatewaySubnet": "69.45.47.145/27",
"azureAsn": 64512,
"networkSideAsn": 64513,
"networkSideGatewaySubnet": "59.23.124.12/29",
"workflowExecutionId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"workflowExecutionStatus": "CREATED"
}
The field state
will be DESIGNING
during the creation phase, when the cloud connector is ready the state
will be DESIGNED
.
Go to Get tutorial to check the status of the cloud connector: