DNS iRule

Overview

This document describes the API to configure DNS iRules.

REST Endpoint: /mgmt/cm/dns/working-config/rule

Requests

GET /mgmt/cm/dns/working-config/rule/<id>

Request Parameters

None

Query Parameters

None

Response

HTTP/1.1 200 OK

Name Type Description
apiAnonymous string Specifies the code that defines the conditions, behavior, and actions of the iRule
partition string The BIG-IP partition in which the configuration for this object is placed
name string Displays the name of the iRule
description string A description of the iRule
deviceGroupReference reference DNS Sync Group on which this object is deployed
     name string Name of the resource
     link string URI link of the reference.

Permissions

Role Allow
Application_Editor Yes
DNS_Viewer Yes
DNS_Deployer Yes
Service_Catalog_Viewer Yes
DNS_Editor Yes
Service_Catalog_Editor Yes
Application_Manager Yes
Application_Viewer Yes
Trust_Discovery_Import Yes
DNS_Manager Yes

POST /mgmt/cm/dns/working-config/rule

Request Parameters

Name Type Required Description
apiAnonymous string False Specifies the code that defines the conditions, behavior, and actions of the iRule
partition string False The BIG-IP partition in which the configuration for this object is placed
name string False Displays the name of the iRule
description string False A description of the iRule
deviceGroupReference reference False DNS Sync Group on which this object is deployed
     link string True URI link of the reference.

Query Parameters

None

Response

HTTP/1.1 200 OK

Name Type Description
apiAnonymous string Specifies the code that defines the conditions, behavior, and actions of the iRule
partition string The BIG-IP partition in which the configuration for this object is placed
name string Displays the name of the iRule
description string A description of the iRule
deviceGroupReference reference DNS Sync Group on which this object is deployed
     name string Name of the resource
     link string URI link of the reference.

Permissions

Role Allow
Application_Editor No
DNS_Viewer No
DNS_Deployer No
Service_Catalog_Viewer No
DNS_Editor Yes
Service_Catalog_Editor No
Application_Manager No
Application_Viewer No
Trust_Discovery_Import No
DNS_Manager Yes

PATCH /mgmt/cm/dns/working-config/rule/<id>

Request Parameters

Name Type Required Description
apiAnonymous string False Specifies the code that defines the conditions, behavior, and actions of the iRule
description string False A description of the iRule

Query Parameters

None

Response

HTTP/1.1 200 OK

Name Type Description
apiAnonymous string Specifies the code that defines the conditions, behavior, and actions of the iRule
partition string The BIG-IP partition in which the configuration for this object is placed
name string Displays the name of the iRule
description string A description of the iRule
deviceGroupReference reference DNS Sync Group on which this object is deployed
     name string Name of the resource
     link string URI link of the reference.

Permissions

Role Allow
Application_Editor No
DNS_Viewer No
DNS_Deployer No
Service_Catalog_Viewer No
DNS_Editor Yes
Service_Catalog_Editor No
Application_Manager No
Application_Viewer No
Trust_Discovery_Import No
DNS_Manager Yes

DELETE /mgmt/cm/dns/working-config/rule/<id>

Request Parameters

None

Query Parameters

None

Response

HTTP/1.1 200 OK

Name Type Description
apiAnonymous string Specifies the code that defines the conditions, behavior, and actions of the iRule
partition string The BIG-IP partition in which the configuration for this object is placed
name string Displays the name of the iRule
description string A description of the iRule
deviceGroupReference reference DNS Sync Group on which this object is deployed
     name string Name of the resource
     link string URI link of the reference.

Permissions

Role Allow
Application_Editor No
DNS_Viewer No
DNS_Deployer No
Service_Catalog_Viewer No
DNS_Editor Yes
Service_Catalog_Editor No
Application_Manager No
Application_Viewer No
Trust_Discovery_Import No
DNS_Manager Yes

Examples

Get an iRule

GET /mgmt/cm/dns/working-config/rule/<id>

Response

HTTP/1.1 200 OK
{
    "apiAnonymous": "when DNS_REQUEST { host 10.20.20.20 }"    ,
    "partition": No example value specified    ,
    "name": "iRule1"    ,
    "description": "example iRule"    ,
    "deviceGroupReference": {
        "name": "resourceName"    ,
        "link": "https://localhost/mgmt/shared/foo/bar/866cfd8a-4d03-48e9-ba94-bb21a4bc2346"
    }
}

Get all iRules

GET /mgmt/cm/dns/working-config/rule

Response

HTTP/1.1 200 OK
{
    "apiAnonymous": "when DNS_REQUEST { host 10.20.20.20 }"    ,
    "partition": No example value specified    ,
    "name": "iRule1"    ,
    "description": "example iRule"    ,
    "deviceGroupReference": {
        "name": "resourceName"    ,
        "link": "https://localhost/mgmt/shared/foo/bar/866cfd8a-4d03-48e9-ba94-bb21a4bc2346"
    }
}

Create new iRule

POST /mgmt/cm/dns/working-config/rule
{
    "apiAnonymous": "when DNS_REQUEST { host 10.20.20.20 }"    ,
    "partition": No example value specified    ,
    "name": "iRule1"    ,
    "description": "example iRule"    ,
    "deviceGroupReference": {
        "link": "https://localhost/mgmt/shared/foo/bar/866cfd8a-4d03-48e9-ba94-bb21a4bc2346"
    }
}

Response

HTTP/1.1 200 OK
{
    "apiAnonymous": "when DNS_REQUEST { host 10.20.20.20 }"    ,
    "partition": No example value specified    ,
    "name": "iRule1"    ,
    "description": "example iRule"    ,
    "deviceGroupReference": {
        "name": "resourceName"    ,
        "link": "https://localhost/mgmt/shared/foo/bar/866cfd8a-4d03-48e9-ba94-bb21a4bc2346"
    }
}

Update iRule

PATCH /mgmt/cm/dns/working-config/rule/<id>
{
    "apiAnonymous": "when DNS_REQUEST { host 10.20.20.20 }"    ,
    "description": "example iRule"
}

Response

HTTP/1.1 200 OK
{
    "apiAnonymous": "when DNS_REQUEST { host 10.20.20.20 }"    ,
    "partition": No example value specified    ,
    "name": "iRule1"    ,
    "description": "example iRule"    ,
    "deviceGroupReference": {
        "name": "resourceName"    ,
        "link": "https://localhost/mgmt/shared/foo/bar/866cfd8a-4d03-48e9-ba94-bb21a4bc2346"
    }
}

Delete iRule

DELETE /mgmt/cm/dns/working-config/rule/<id>

Response

HTTP/1.1 200 OK
{
    "apiAnonymous": "when DNS_REQUEST { host 10.20.20.20 }"    ,
    "partition": No example value specified    ,
    "name": "iRule1"    ,
    "description": "example iRule"    ,
    "deviceGroupReference": {
        "name": "resourceName"    ,
        "link": "https://localhost/mgmt/shared/foo/bar/866cfd8a-4d03-48e9-ba94-bb21a4bc2346"
    }
}