Cloud Co Publique Standard - Create
Le corps JSON est requis par le Swagger, mais aucune propriété individuelle n'y est indiquée comme obligatoire. Les étapes de recherche ci-dessous aident à trouver des valeurs Azure ; il n’est pas nécessaire de récupérer un identifiant VPN technique avant la création.
1. Récupérer l'identifiant du credential Azure
GET https://ope-obs.apibackbone.orange.com/evolutionplatform/azure/api/v1/projects/{projectId}/azure/credentials?limit=20&offset=0
Paramètres URI
| Nom | Dans | Obligatoire | Type | Description |
|---|---|---|---|---|
| project | path | true | string | Identifiant unique du projet dans Evolution Platform. |
| limit | query | false | integer | Le paramètre de requête `limit` spécifie le nombre de ressources contenues dans une seule page de réponse. |
| offset | query | false | integer | Le paramètre de requête `offset` est utilisé pour exclure de la réponse les N premiers éléments d'une collection de ressources. |
Réponses
| Nom | Type | Description |
|---|---|---|
| 200 OK | Identifiant | Opération réussie |
| Autres Codes | Réponse d'erreur | Réponse d’erreur décrivant pourquoi l’opération a échoué. |
Exemple de réponse
[
{
"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} est associé à l'un des champs "id" de la liste des credentials Azure de la réponse.
Exemple : {azureCredentialId} = "b1c3d7b8-f249-4a25-9f26-02682bbad4f3"
2. Récupérer la région Azure
GET https://ope-obs.apibackbone.orange.com/evolutionplatform/azure/api/v1/projects/{projectId}/azure/regions?azureCspCredentialId={azureCredentialId}
Paramètres URI
| Nom | Dans | Obligatoire | Type | Description |
|---|---|---|---|---|
| project | path | true | string | Identifiant unique du projet dans Evolution Platform. |
| azureCredential | query | true | string | Identifant du credential Azure dans Evolution Platform. |
Réponses
| Nom | Type | Description |
|---|---|---|
| 200 OK | Region | Opération réussie |
| Autres Codes | Réponse d'erreur | Réponse d’erreur décrivant pourquoi l’opération a échoué. |
Exemple de réponse
[
{
"name": "asia",
"displayName": "Asia"
},
{
"name": "asiapacific",
"displayName": "Asia Pacific"
},
{
"name": "australia",
"displayName": "Australia"
},
{
"name": "australiacentral",
"displayName": "Australia Central"
},
{
"name": "northeurope",
"displayName": "North Europe"
},
...
]
La valeur du champ name dans la liste des régions Azure de la réponse est liée à {azureRegion}.
Exemple : {azureRegion} = "northeurope"
3. Récupérer le groupe de ressources Azure
GET https://ope-obs.apibackbone.orange.com/evolutionplatform/azure/api/v1/projects/{projectId}/azure/resourcegroups?azureCspCredentialId={azureCredentialId}&azureRegion={azureRegion}
Paramètres URI
| Nom | Dans | Obligatoire | Type | Description |
|---|---|---|---|---|
| project | path | true | string | Identifiant unique du projet dans Evolution Platform. |
| azureCredential | query | true | string | Identifant du credential Azure dans Evolution Platform. |
| azureRegion | query | true | string | Identifiant unique de région Azure dans Evolution Platform qui a été récupéré lors d'une étape précédente. |
Réponses
| Nom | Type | Description |
|---|---|---|
| 200 OK | Resource Group | Opération réussie |
| Autres Codes | Réponse d'erreur | Réponse d’erreur décrivant pourquoi l’opération a échoué. |
Exemple de réponse
[
{
"name": "rg-1",
"location": "northeurope"
},
{
"name": "rg-2",
"location": "northeurope"
},
{
"name": "rg-3",
"location": "northeurope"
},
{
"name": "rg-4",
"location": "northeurope"
}
]
La valeur du champ name dans la liste des groupes de ressources Azure de la réponse est liée à {azureResourceGroup}.
Exemple : {azureResourceGroup} = "rg-3"
4. Récupérer le réseau virtuel Azure
GET https://ope-obs.apibackbone.orange.com/evolutionplatform/azure/api/v1/projects/{projectId}/azure/vnets?azureCspCredentialId={azureCredentialId}&azureResourceGroup={azureResourceGroup}
Cet endpoint nécessite l’identifiant du credential Azure et le nom du groupe de ressources. Il retourne des objets de réseau virtuel ; utilisez le champ name du réseau sélectionné comme valeur de vnetName dans la requête de création.
5. Récupérer les localisations Azure
GET https://ope-obs.apibackbone.orange.com/evolutionplatform/azure/api/v1/projects/{projectId}/azure/locations?azureCspCredentialId={azureCredentialId}
Le Swagger exige projectId et azureCspCredentialId et décrit une réponse réussie sous forme de tableau de chaînes. Utilisez une valeur renvoyée par cet endpoint pour primaryPopLocalization. Le Swagger ne fournit pas de valeurs d’exemple.
6. Créer le connecteur cloud
POST https://ope-obs.apibackbone.orange.com/evolutionplatform/azure/api/v1/projects/{projectId}/azure/cloudconnectors/publicstandarddynamics
Paramètres URI
| Nom | Dans | Obligatoire | Type | Description |
|---|---|---|---|---|
| project | path | true | string | Identifiant unique du projet dans Evolution Platform. |
Corps de la demande
| Nom | Obligatoire | Type | Description |
|---|---|---|---|
| name | false | string | Cloud connector name. |
| state | false | string | Cloud connector state. Allowed values: DESIGNING, DESIGNED, BOOKING, RESERVED, PROVISIONING, ACTIVE, STOPPING, SUSPENDING, INACTIVE, REPAIRING, TERMINATED, ERROR. |
| technicalVpn | false | string (UUID) | Identifier of the network connector. |
| azureCredential | false | string (UUID) | Identifier of the Azure credential used to manage the connector in Azure. |
| customerPurchase | false | string | Customer purchase order number. |
| externalBilling | false | string | External billing reference. |
| bandwidth | false | integer (int32) | Cloud connector bandwidth. |
| maxBandwidth | false | integer (int32) | Maximum cloud connector bandwidth. |
| primaryPop | false | string | Primary point-of-presence localization. |
| azureRegion | false | string | Azure region. |
| resourceGroup | false | string | Azure resource group name. |
| vnetName | false | string | Virtual network name. |
| azureGateway | false | string | Azure gateway subnet. |
| azureAsn | false | integer (int64) | Azure autonomous system number. |
| networkSide | false | integer (int64) | Network-side autonomous system number. |
| networkSide | false | string | Network-side gateway subnet. |
Réponses
| Nom | Type | Description |
|---|---|---|
| 201 Created | Cloud connector | Création réussie. L'opération retourne la ressource créée. |
| Autres Codes | Réponse d'erreur | Réponse d’erreur décrivant pourquoi l’opération a échoué. |
Contenu de la réponse
| Nom | Type | Description |
|---|---|---|
| id | string (UUID) | Cloud connector identifier. |
| name | string | Cloud connector name. |
| state | string | Connector state: DESIGNING, DESIGNED, BOOKING, RESERVED, PROVISIONING, ACTIVE, STOPPING, SUSPENDING, INACTIVE, REPAIRING, TERMINATED, or ERROR. |
| projectId | string (UUID) | Identifier of the owning project. |
| bandwidth | integer (int32) | Cloud connector bandwidth. |
| maxBandwidth | integer (int32) | Maximum cloud connector bandwidth. |
| technicalVpn | string (UUID) | Associated network connector identifier. |
| azureCredential | string (UUID) | Azure credential identifier. |
| azureRegion | string | Azure region. |
| resourceGroup | string | Azure resource group name. |
| workflowExecution | string (UUID) | Most recent workflow execution identifier. |
| workflowExecution | string | Workflow status: CREATED, IN_PROGRESS, SUCCEEDED, FAILED, or CLEARED. |
| operationalStatus | string | Operational status: N/A, Up, Down, or Unknown. |
| lastTimeOperational | string (date-time) | Time when the operational status was last known. |
| customerPurchase | string | Customer purchase order number. |
| externalBilling | string | External billing reference. |
| primaryPop | string | Primary point-of-presence localization. |
| vnetName | string | Virtual network name. |
| azureGateway | string | Azure gateway subnet. |
| azureAsn | integer (int64) | Azure autonomous system number. |
| networkSide | integer (int64) | Network-side autonomous system number. |
| networkSide | string | Network-side gateway subnet. |
Exemple : créer un connecteur en mode actif
Requête
POST https://ope-obs.apibackbone.orange.com/evolutionplatform/azure/api/v1/projects/{projectId}/azure/cloudconnectors/publicstandarddynamics
{
"name": "Connection to PARIS",
"azureCredentialId": "b1c3d7b8-f249-4a25-9f26-02682bbad4f3",
"azureRegion": "northeurope",
"resourceGroupName": "rg-3",
"vnetName": "vnet-02",
"primaryPopLocalization": "YOUR_RETURNED_AZURE_LOCATION",
"bandwidth": 50,
"azureAsn": 64512,
"networkSideAsn": 64513,
"networkSideGatewaySubnet":"59.23.124.12/29",
"azureGatewaySubnet":"69.45.47.145/27",
"state":"ACTIVE"
}
Réponse
HTTP 201
Content: application/json
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"name": "Connection to PARIS",
"state": "PROVISIONING",
"projectId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"bandwidth": 50,
"technicalVpnId": "93b22b3c-fd7e-4c04-87cb-52df45fe6beb",
"azureCredentialId": "b1c3d7b8-f249-4a25-9f26-02682bbad4f3",
"primaryPopLocalization": "YOUR_RETURNED_AZURE_LOCATION",
"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"
}
La réponse contient l’état du connecteur. Le Swagger énumère les valeurs autorisées, mais ne précise pas à quel moment l’état change pendant le provisionnement.
Allez au tutoriel Get pour vérifier le statut du connecteur cloud :
Exemple : créer un connecteur en mode "designed"
Requête
POST https://ope-obs.apibackbone.orange.com/evolutionplatform/azure/api/v1/projects/{projectId}/azure/cloudconnectors/publicstandarddynamics
{
"name": "Connection to PARIS",
"azureCredentialId": "b1c3d7b8-f249-4a25-9f26-02682bbad4f3",
"azureRegion": "northeurope",
"resourceGroupName": "rg-3",
"vnetName": "vnet-02",
"primaryPopLocalization": "YOUR_RETURNED_AZURE_LOCATION",
"bandwidth": 50,
"azureAsn": 64512,
"networkSideAsn": 64513,
"networkSideGatewaySubnet":"59.23.124.12/29",
"azureGatewaySubnet":"69.45.47.145/27",
"state":"DESIGNED"
}
Réponse
HTTP 201
Content: application/json
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"name": "Connection to PARIS",
"state": "DESIGNING",
"projectId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"bandwidth": 50,
"technicalVpnId": "93b22b3c-fd7e-4c04-87cb-52df45fe6beb",
"azureCredentialId": "b1c3d7b8-f249-4a25-9f26-02682bbad4f3",
"primaryPopLocalization": "YOUR_RETURNED_AZURE_LOCATION",
"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"
}
La réponse contient l’état du connecteur. Le Swagger énumère les valeurs autorisées, mais ne précise pas à quel moment l’état change pendant le provisionnement.
Allez au tutoriel Get pour vérifier le statut du connecteur cloud :