Legacy Application Service¶
Overview¶
Use the Legacy Application Service API to create a task to create, delete or modify a Legacy Application Service. A legacy application is an application which was not deployed using a template. Without a Legacy Application Service, the objects of a legacy application are only visible in the BIG-IQ’s configuration view. A Legacy Application Service can provide a legacy application with visibility in the application-centric view. Although you can perform basic actions, such as enable, disable, and forceOffline virtual server and pool members, the ability to modify the legacy application in the application-centric view requires that the application be deployed using BIG-IQ and an AS3 template.
For information about the compatibility of BIG-IQ and BIG-IP with F5 Application Services 3 Extension (AS3) releases, please refer to the support article: K54909607: BIG-IQ Centralized Management compatibility with F5 Application Services 3 Extension and F5 Declarative Onboarding .
REST Endpoint: /mgmt/cm/global/tasks/classic-app-service¶
Requests¶
POST /mgmt/cm/global/tasks/classic-app-service¶
To create a Legacy Application Service, you can send a POST request to the classic-app-service endpoint.
Request Parameters¶
The request parameters in the POST request can include the following.
Name | Type | Required | Description |
---|---|---|---|
legacyApplicationServiceRequests | objects | True | A list of Legacy Application Service task requests. |
applicationServiceType | string | True | The type of Legacy Application Service. Possible values: “HTTP” or “TCP”. |
configSetName | string | True | The name of the Legacy Application Service. |
currentConfigVirtualServerReferences | object | False | A list of link objects for the virtual server. |
link | string | False | Url of a reference. |
deviceReference | object | False | A link object for the BIG-IP. You can use the Device Reference Helper API to query for the value of deviceReference. |
link | string | False | Url of deviceReference. |
mode | string | True | The kind of task to create. Possible values: “CREATE”, “DELETE”, “REFRESH” or “UPDATE”. “REFRESH” means update any changes to virtual servers or their sub-collections and there is no change in the number of virtual servers. “UPDATE” means there is a change in number of virtual servers in currentConfigVirtualServerReferences. Use “UPDATE” when adding more virtual servers or removing virtual servers. |
Query Parameters¶
None
Response¶
HTTP/1.1 200 OK
Name | Type | Description |
---|---|---|
legacyApplicationServiceRequests | objects | A list of Legacy Application Service task requests. |
applicationServiceType | string | The type of Legacy Application Service. Possible values: “HTTP” or “TCP”. |
configSetName | string | The name of the Legacy Application Service. |
currentConfigVirtualServerReferences | object | A list of link objects for the virtual server. |
link | string | Url of a reference. |
deviceReference | object | A link object for the BIG-IP. |
link | string | Url of deviceReference. |
mode | string | The kind of task to create. Possible values: “CREATE”, “DELETE”, “REFRESH” or “UPDATE”. “REFRESH” means update any changes to virtual servers or their sub-collections and there is no change in the number of virtual servers. “UPDATE” means there is a change in number of virtual servers in currentConfigVirtualServerReferences. Use “UPDATE” when adding more virtual servers or removing virtual servers. |
selfLink | string | A url to the task’s endpoint. You can poll selfLink for the state of this task by sending GET requests to this url. |
Permissions¶
Role | Allow |
---|---|
Application_Manager | Yes |
Application_Viewer | Yes |
Application_Service_Manager | Yes |
Application_Service_Viewer | Yes |
After creating the task, you can poll the task’s state by sending GET requests to selfLink to confirm when the task completes.
Examples¶
POST to create a Legacy Application Service¶
You can send a POST to the classic-app-service endpoint to create a task to create a Legacy Application Service.
POST https://<BIG-IQ>/mgmt/cm/global/tasks/classic-app-service
The JSON in the body of the POST can be similar to the following. You can use the Device Reference Helper API to query for the value of deviceReference.
{
"legacyApplicationServiceRequests": [{
"configSetName": "legacyAppSvcs01",
"mode": "CREATE",
"deviceReference": {
"link": "https://localhost/mgmt/shared/resolver/device-groups/cm-adccore-allbigipDevices/devices/6696dff3-510c-484b-ba09-5e3dad3a1a2c"
},
"applicationServiceType": "HTTP",
"currentConfigVirtualServerReferences": [{
"link": "https://localhost/mgmt/cm/adc-core/current-config/ltm/virtual/89c496ad-5b8e-373b-8140-9be774bb4de0"
}]
}]
}
Response¶
The JSON in the response to the POST can look similar to the body of the POST request. The response can include a selfLink. The status can be “STARTED” initially, which means the task has been started. The value of selfLink is the url for the task. You can send repeated GET requests to check the status of the task. You can send the GET request to the task’s url, returned as the value of selfLink in the response to the initial POST.
POST to delete a Legacy Application Service¶
You can send a POST to the classic-app-service endpoint to create a task to delete a Legacy Application Service.
POST https://<BIG-IQ>/mgmt/cm/global/tasks/classic-app-service
The JSON in the body of the POST can be similar to the following.
{
"legacyApplicationServiceRequests": [{
"configSetName": "legacyAppSvcs01",
"mode": "DELETE"
}]
}
Response¶
The JSON in the response to the POST can look similar to the body of the POST request. The response can include a selfLink. The status can be “STARTED” initially, which means the task has been started. The value of selfLink is the url for the task. You can send repeated GET requests to check the status of the task. You can send the GET request to the task’s url, returned as the value of selfLink in the response to the initial POST.
POST to refresh a Legacy Application Service¶
You can send a POST to the classic-app-service endpoint to create a task to refresh a Legacy Application Service. REFRESH means to update any changes to the virtual servers or their sub-collections and there is no change in the number of virtual servers.
POST https://<BIG-IQ>/mgmt/cm/global/tasks/classic-app-service
The JSON in the body of the POST can be similar to the following.
{
"legacyApplicationServiceRequests": [{
"configSetName": "legacyAppSvcs01",
"mode": "REFRESH"
}]
}
Response¶
The JSON in the response to the POST can look similar to the body of the POST request. The response can include a selfLink. The status can be “STARTED” initially, which means the task has been started. The value of selfLink is the url for the task. You can send repeated GET requests to check the status of the task. You can send the GET request to the task’s url, returned as the value of selfLink in the response to the initial POST.
GET to check the status of the Legacy Application task¶
You can send repeated GET requests to check the status of the task. You can send the GET request to the task’s url, returned as the value of selfLink in the response to the initial POST.
GET https://<BIG-IQ>/mgmt/cm/global/tasks/classic-app-service/<id>
Response¶
The status in the GET response can eventually update to “DONE” and “FINISHED”.
GET to retrieve Legacy Application Services¶
You can send a GET request to check the classic-configs endpoint to retrieve a list of legacy configurations.
GET https://<BIG-IQ>/mgmt/cm/global/classic-configs
Response¶
The body of the response can contain a list of legacy configuration objects.