Firewall Rules Notification API Resources

The following lists unique concepts for this API:

  • Activation date in the Luna application is the same thing as the effective date in the API.

  • CIDRs with a status of Deleted are still visible and returned in response objects. Deleted for this API means that CIDR block is no longer in use and no longer serves traffic to your origin. You can remove that CIDR block from your firewall rules.

API Summary

Operation Method Endpoint
Firewall Rules   (download RAML)
List Services GET /firewall-rules-manager/v1/services
Get a Service GET /firewall-rules-manager/v1/services/{serviceId}
List CIDR Blocks GET /firewall-rules-manager/v1/cidr-blocks{?effectiveDateGt,lastAction}
List Subscriptions GET /firewall-rules-manager/v1/subscriptions
Update Subscriptions PUT /firewall-rules-manager/v1/subscriptions

List Services

Get a list of services you are subscribed to. To see additional services, subscribe to them first and then run the operation again.

GET /firewall-rules-manager/v1/services

Status 200 application/json

Response Body:

[
    {
        "serviceId": 3,
        "serviceName": "TestIP",
        "description": "Test IPs"
    },
    {
        "serviceId": 4,
        "serviceName": "TestIP again",
        "description": "Test IPs"
    }
]
  1. Make a GET request to /firewall-rules-manager/v1/services.

  2. The response is an array of Service objects. Locate a serviceID and save it for later use.

Get a Service

Get a specific service.

GET /firewall-rules-manager/v1/services/{serviceId}

Sample: /firewall-rules-manager/v1/services/3

Parameter Type Sample Description
URL Parameters
serviceId Integer 3 A unique identifier for a service.

Status 200 application/json

Response Body:

{
    "serviceId": 3,
    "serviceName": "TestIP",
    "description": "Test IPs"
}
  1. Run List Services and choose a service from the array. Store the serviceId for later use.

  2. Make a GET request to /firewall-rules-manager/v1/services/{serviceId}.

  3. The response is a Service object

List CIDR Blocks

List all CIDR blocks for all services you are subscribed to. To see additional CIDR blocks, subscribe yourself to more services and run this operation again.

GET /firewall-rules-manager/v1/cidr-blocks{?effectiveDateGt,lastAction}

Sample: /firewall-rules-manager/v1/cidr-blocks?effectiveDateGt=2017–02–21&lastAction=add

Parameter Type Sample Description
Optional Query Parameters
effectiveDateGt String 2017-02-21 The ISO 8601 date the CIDR block starts serving traffic to your origin. Please ensure your firewall rules are updated to allow this traffic to pass through before the effective date.
lastAction Enumeration add Whether a CIDR block was added, updated, or removed from service. You can use this parameter as a sorting mechanism and return only CIDR blocks with a change status of add, update, or delete. Note that a status of delete means the CIDR block is no longer in service, and you can remove it from your firewall rules.

Status 200 application/json

Response Body:

[
    {
        "cidrId": 13742,
        "effectiveDate": "2017-02-21",
        "port": "80,443",
        "maxIp": "66.171.230.134",
        "serviceId": 9,
        "serviceName": "PERF_ANALYTICS",
        "lastAction": "add",
        "cidrMask": "/32",
        "minIp": "66.171.230.134",
        "creationDate": "2017-02-21",
        "cidr": "66.171.230.134",
        "changeDate": "2017-02-21"
    }
]

List Subscriptions

List subscriptions you created for yourself and other users. You can only see subscription information based on what you created yourself, so if someone else subscribed you to a service, you will not see that subscription returned by this operation.

GET /firewall-rules-manager/v1/subscriptions

Status 200 application/json

Response Body:

{
    "subscriptions": [
        {
            "signupDate": "2017-03-28",
            "serviceName": "Test IPs",
            "serviceId": 13,
            "email": "mp@mail.com"
        },
        {
            "signupDate": "2017-10-11",
            "serviceName": "CCUAPI",
            "serviceId": 15,
            "email": "abcd@akamai.com"
        }
    ]
}
  1. Make a GET request to /firewall-rules-manager/v1/subscriptions.

  2. The response is an array of Subscription objects.

Update Subscriptions

Subscribe or unsubscribe users to services.

PUT /firewall-rules-manager/v1/subscriptions

Content-Type: application/json

Request Body:

{
    "subscriptions": [
        {
            "serviceId": 13,
            "email": "mp@mail.com"
        },
        {
            "serviceId": 15,
            "email": "abcd@akamai.com"
        }
    ]
}

Status 200 application/json

Response Body:

{
    "subscriptions": [
        {
            "signupDate": "2017-03-28",
            "serviceName": "Test IPs",
            "serviceId": 13,
            "email": "mp@mail.com"
        },
        {
            "signupDate": "2017-10-11",
            "serviceName": "CCUAPI",
            "serviceId": 15,
            "email": "abcd@akamai.com"
        }
    ]
}
  1. Run List Subscriptions.

  2. The response is an array of Subscription objects. Modify the array of objects.

  3. PUT the modified object back to /firewall-rules-manager/v1/subscriptions.


Last modified: 6/1/2017