NOTE: If you do not have a DynID, or login to Internet Intelligence with Renesys credentials, you will have to access the API via a different URL.
Build and Manage Your Portfolio
VERB | RESOURCE | REQUEST FIELDS | DESCRIPTION |
GET | /portfolio | None | Retrieve a list of all inventories and assets. |
DELETE | /portfolio | None | Delete all inventories and assets in a portfolio. |
GET | /portfolio/inventories | None | Retrieve all inventories in a portfolio. |
POST | /portfolio/inventories |
|
Creates an inventory. |
DELETE | /portfolio/inventories/{inventory} | None | Delete a specified inventory. |
PUT | /portfolio/inventories/{inventory} |
|
Enable or disable monitoring for an inventory. |
GET | /portfolio/inventories/id/assets | None | Retrieve details about one asset. |
GET | /portfolio/assets | None | Retrieves a list of assets. |
POST | /portfolio/assets (one prefix) | (see below) | Add one or multiple assets to one or more inventories. |
DELETE | /portfolio/assets | None | Delete an asset from an inventory. |
Configure Routing Monitoring
API Requests
VERB | RESOURCE | PARAMETERS (TYPE) | DESCRIPTION |
GET | portfolio/routing/plot/{prefix} |
|
Retrieves a routing plot for the given prefix. |
GET | /portfolio/settings | None | Retrieve the email alert settings. |
PUT | /portfolio/settings (email alerts on) | None | Turn on email alerts. |
PUT | /portfolio/settings (change email address) | None | Change the email address that receives the alerts. |
DELETE | /portfolio/settings | None | Delete the previously set email account that receives the alert emails. |
GET | /portfolio/assets/{asset}/options | None | Retrieves the options for the indicated asset. |
PUT | /portfolio/assets/{asset}/options (suppress all) | (see below) | Updates options identified for the given asset. |
PUT | /portfolio/inventories/{inventory} (suppress inventory) | (see below) | Suppress assets at the inventory level. |
PUT | /portfolio/assets/{asset}/options (suppress ASN) | (see below) | Suppresses alerts for the specified ASN. |
PUT | /portfolio/assets/{asset}/options | None | Manually authorize upstream and origin ASNs (transit providers or peers). |
Manage Your Alerts
VERB | RESOURCE | PARAMETERS (TYPE) | DESCRIPTION |
GET | /portfolio/monitoring/alerts (all alerts) |
|
Retrieve a list of alerts using specified parameters. |
GET | /portfolio/monitoring/alerts (since given time) |
|
Retrieve a list of all alerts since a given time. |
GET | /portfolio/monitoring/alerts (unacknowledged alerts) |
|
Retrieve a list of all unacknowledged alerts. |
GET | /portfolio/monitoring/alerts (all alerts, one asset) |
|
Retrieve all alerts for one asset. |
GET | /portfolio/monitoring/types | None | Retrieves a list of alert types. |
GET | /portfolio/monitoring/alerts/{alert id} | None | Retrieves the details for the alert identified. |
POST | /portfolio/monitoring/bulkAcknowledge (all) | None | Acknowledge all alerts. |
POST | /portfolio/monitoring/bulkAcknowledge (one asset) | None | Acknowledge alerts for one asset. |
POST | /portfolio/monitoring/bulkAcknowledge (one type) | None | Acknowledge all alerts of one type. |
POST | /portfolio/monitoring/bulkAcknowledge (one type, one asset) | None | Acknowledge one type of alert for one asset. |
PUT | /portfolio/inventories/{id} (suppress alert) |
|
Enable or disable alerts for an inventory. |
Build and Manage Your Portfolio
GET /portfolio/
You can get a list of all assets and inventories included in your entire portfolio. These assets may be the IP prefixes and ASNs for Internet Routing Alerts and/or the IP Addresses for Internet Performance Alerts. The command to retrieve all the assets of the Portfolio is the same for both Internet Routing Alerts and Internet Performance Alerts APIs.
URI: https://dii.dynapis.com/portfolio
Legacy URI: https://api.renesys.com/portfolio
Request Body Fields (JSON):
- None
Example Response (JSON):
[ { "comment": null, "suppressed": { "all": false, "categories": [] }, "monitoring": false, "assets": [ { "comment": "Amsterdam Beacon", "assetType": "prefix", "info": { "geolocation": { "city": "Amsterdam", "country_code": "NL", "admindiv": "Provincie Noord-Holland", "adminsubdiv": null }, "label": "Reseaux IP Europeens Network Coordination Centre (RIPE NCC)" }, "name": "Beacon Prefix", "inventories": [ "dan3" ], "payload": null, "id": "84.205.64.0/24" } ], "id": "dan3" } ]
DELETE /portfolio/
You can delete all inventories, monitoring configurations, and the portfolio itself. The command is the same for Internet Routing Alerts and Internet Performance Alerts APIs.
NOTE: If you have both Internet Routing Alerts and Internet Performance Alerts, there is only one portfolio for your account. All items for both products will be removed with this command.
URI: https://dii.dynapis.com/portfolio
Legacy URI: https://api.renesys.com/portfolio
Request Body Fields (JSON):
- None
Example Response:
HTTP/1.1 204 No Content
GET /portfolio/inventories
You can get a list of all inventories in your entire portfolio. These inventories may be used by Internet Routing Alerts, Internet Performance Alerts, or both. The command to retrieve all the inventories of the Portfolio is the same for both Internet Routing Alerts and Internet Performance Alerts APIs.
URI: https://dii.dynapis.com/portfolio/inventories
Legacy URI: https://api.renesys.com/portfolio/inventories
Request Body Fields (JSON):
- None
Example Response (JSON):
[ { "comment": null, "monitoring": false, "domain_count": 0, "asn_count": 0, "prefix_count": 1, "ip_count": 0, "cdn_count": 0, "suppressed": { "all": false, "categories": [] }, "id": "example inventory", "cloudzone_count": 0 } ]
POST /portfolio/inventories
Creates an inventory. Monitoring is enabled and disabled per inventory. IP addresses, ASNs, and prefixes need to be added into an inventory in order to be monitored. An object can belong to one or more inventories simultaneously. Creating an inventory is the first step.
URI: https://dii.dynapis.com/portfolio/inventories
Legacy URI: https://api.renesys.com/portfolio/inventories
Example Request Body (JSON):
Request to create one inventory named Example Inventory:
[ { "id": "example inventory" } ]
Request Body Fields:
- id – The name of the inventory to be created in the format
"id":"inventoryname"
.
Example Response:
HTTP/1.1 201 Created
DELETE /portfolio/inventories/{inventory}
When you no longer want an inventory and its assets in your portfolio, you need to delete the inventory and the assets it contains. The command is the same for Internet Routing Alerts and Internet Performance Alerts APIs.
NOTE:
If you have both Internet Routing Alerts and Internet Performance Alerts, inventories are shared between the two products. If you delete an inventory, neither the inventory nor its contained assets will be available for either product.
URI: https://dii.dynapis.com/portfolio/{inventory}
Sample URI removing one inventory named your inventory from the portfolio:
https://dii.dynapis.com/portfolio/your%20inventory
Legacy URI: https://api.renesys.com/portfolio/{inventory}
Request Body Fields:
- None.
Example Response:
HTTP/1.1 204 No Content
PUT /portfolio/inventories/{inventory} (enable monitoring)
Enable monitoring and add a comment to an inventory. Updating the contents of an inventory is the same request for Internet Routing Alerts and Internet Performance Alerts APIs.
NOTE: If you have both Internet Routing Alerts and Internet Performance Alerts, inventories are shared between the two products. If you update an inventory, the new inventory contents will be available for both products.
URI: https://dii.dynapis.com/portfolio/inventories/{inventory}
A sample URI for an inventory named “example inventory”: https://dii.dynapis.com/portfolio/example%20inventory
Legacy URI: https://api.renesys.com/portfolio/inventories/{inventory}
Example Request (JSON):
Must be a JSON object.
{"monitoring": true, "comment": "This is your comment"}
Request Body Fields (JSON):
- monitoring – Enable alerts for this asset. Values can be either
true
orfalse
. - comment – User supplied description of the asset.
Example Response:
HTTP/1.1 204 No Content
GET /portfolio/inventories/{inventory}/assets
You can get a list of all inventory assets. The command is the same for Internet Routing Alerts and Internet Performance Alerts APIs.
URI: https://dii.dynapis.com/portfolio/inventories/{inventory}/assets
Example URI retrieving the assets in an inventory named “example inventory”:
https://dii.dynapis.com/portfolio/inventories/example%20inventory/assets
Legacy URI: https://api.renesys.com/portfolio/inventories/{inventory}/assets
Request Body Fields (JSON):
- None.
Example Response (JSON):
The asset list is included in the response in JSON format and contained in the HTTP body of the response. This example shows a specific IP prefix. ASN and IP address assets are included in the response in a similar way.
[ { "comment": "London Beacon", "assetType": "prefix", "name": "Beacon Prefix", "info": { "geolocation": { "adminsubdiv": "null", "country_code": "GB", "admindiv": "England", "city": "City of London" }, "label": "Reseaux IP Europeens Network Coordination Centre (RIPE NCC)" }, "inventories": ["example inventory"], "id": "84.205.65.0/24" }, { Similar information for another asset in the inventory }, { Similar information for another asset in the inventory } ]
GET /portfolio/assets
You can get a list of all assets included in your entire portfolio. These assets may be the IP Prefixes and ASNs for Internet Routing Alerts and/or the IP Addresses for Internet Performance Alerts. The command to retrieve all the assets of the portfolio is the same for both Internet Routing Alerts and Internet Performance Alerts APIs.
URI: https://dii.dynapis.com/portfolio/assets
Legacy URI: https://api.renesys.com/portfolio/assets
Request Body Fields (JSON):
- None.
Example Response (JSON):
The asset list is included in the response in JSON format and contained in the HTTP body of the response.
[ { "comment": "London Beacon", "assetType": "prefix", "name": "Beacon Prefix", "info": { "geolocation": { "adminsubdiv": "null", "country_code": "GB", "admindiv": "England", "city": "City of London" }, "label": "Reseaux IP Europeens Network Coordination Centre (RIPE NCC)" }, "inventories": ["example inventory"], "id": "84.205.65.0/24" }, { Similar information for another asset in the portfolio }, { Similar information for another asset in the portfolio } ]
POST /portfolio/assets (add one or multiple assets to an inventory)
Adds one or more assets into an inventory. For an asset to be monitored, it must be added to an inventory. If the inventory does not already exist, it will be created when you add the asset to it. If the inventory already contains the IP address you are adding, your request will be successful even though no action was taken.
URI: https://dii.dynapis.com/portfolio/assets
Legacy URI: https://api.renesys.com/portfolio/assets
Sample Request Body (JSON):
Where add_asset.json contains a JSON array of objects. Both IPv4 and IPv6 samples are shown here. The “name” field is optional.
IPv4 Address Example:
[ { "id": "84.205.64.0/24", "name": "Beacon Prefix", "comment": "Amsterdam Beacon", "inventories": ["example inventory"] } ]
Sample request body for to add multiple assets to multiple inventories:
[ { "id": "84.205.71.100",, "name": "Sample IP Address 1", "inventories": ["example inventory", "second inventory"] }, { "id": "2010:500:45:1::1", "name": "Sample IPv6 Address", "inventories": ["second inventory"] }, { "id": "12654", "name": "Sample ASN", "inventories": ["example inventory"] } ]
Request Body Fields (JSON)
id
– The ASN, IP prefix, or IP address to be monitored.name
– A user defined name for the asset.comment
– A user comment.inventories
– The inventories the asset will be added.
Example Response:
HTTP/1.1 201 Created
DELETE /portfolio/inventories/{inventory}/assets/{asset}
When you no longer want to monitor an asset, it needs to be removed from the inventory. If the asset belongs to more than one inventory, you can remove it from one inventory, or from all inventories where the asset is found. The command is the same for Internet Routing Alerts and Internet Performance Alerts APIs.
NOTE: If you have both Internet Routing Alerts and Internet Performance Alerts, assets are shared between the two products. Deleting an asset from all inventories will make the asset unavailable for both products.
URI to remove one {asset} from one {Inventory}: https://dii.dynapis.com/portfolio/inventories/{Inventory}/assets/{asset}
Legacy URI: https://api.renesys.com/portfolio/inventories/{Inventory}/assets/{asset}
URI to remove one asset {asset} from ALL inventories: https://dii.dynapis.com/portfolio/assets/{asset}
Legacy URI: https://api.renesys.com/portfolio/assets/{asset}
URI remove ALL assets from one {Inventory}: https://dii.dynapis.com/portfolio/inventories/{Inventory}/assets
Legacy URI: https://api.renesys.com/portfolio/inventories/{Inventory}/assets
Request Body Fields (JSON):
None.
Example Response:
HTTP/1.1 204 No Content
Configure Routing Monitoring
GET /portfolio/routing/alert/plot/{alarm_id}
Retrieves a routing plot for the given alarm ID. This API call allows you to generate images showing either Origination or Upstream Provider connections for any IP prefix you are monitoring in your Portfolio. These plots complement our Routing Alerts notifications and can be used to look back over recent routing history for the last hour, last day, last 3 days or last 6 days.
To generate a plot, the prefix must be monitored in your portfolio, otherwise, you will receive an error response (400 Bad Request).
URI: https://dii.dynapis.com/portfolio/routing/plot/{alarm_id}
Legacy URI: https://api.renesys.com/portfolio/routing/plot/{alarm_id}
Sample URI retrieving the routing plot for a prefix:
https://dii.dynapis.com/portfolio/routing/plot/24631168
Request Body Field (JSON):
- None
Example Response:
The origin and upstream plot of an IP address. Default format is png, but you can choose the format by using the format parameter in the request.
GET /portfolio/routing/plot/{prefix}
Retrieves a routing plot for the given prefix. This API call allows you to generate images showing either Origination or Upstream Provider connections for any IP prefix you are monitoring in your Portfolio. These plots complement our Routing Alerts notifications and can be used to look back over recent routing history for the last hour, last day, last 3 days or last 6 days.
To generate a plot, the prefix must be monitored in your portfolio, otherwise, you will receive an error response (400 Bad Request).
URI: https://dii.dynapis.com/portfolio/routing/plot/{prefix}
Legacy URI: https://api.renesys.com/portfolio/routing/plot/{prefix}
Optional Parameters:
format
– Set the format for the response body data to png (default), pdf, or svg.time
– The time range of the plot.
Valid values:
6d = 6 days
3d = 3 days
1d = 1 day
1h = 1 hourupstream
– Optional. The number of upstream ASNs in the route path to plot. The default setting (0) displays only the Origin. Enter the number of ASNs to include, maximum 2.
Valid values:
0 = plot the origin only
1 = plot the origin and 1 upstream ASN
2 = plot the origin and 2 upstream ASNs
Sample URI retrieving the routing plot for a prefix:
https://dii.dynapis.com/portfolio/routing/plot/84.205.64.0/24?format=pdf&time=1h&upstream=2
Request Body Field (JSON):
- None
Example Response:
The origin and upstream plot of the prefix. Default format is png, but you can choose the format by using the format parameter in the request.
GET /portfolio/settings
Retrieve the email alert settings. Use this command to determine whether your email alert settings are on or off and where the email notification alerts are sent.
URI: https://dii.dynapis.com/portfolio/settings
Legacy URI: https://api.renesys.com/portfolio/settings
Request Body Fields (JSON):
- None
Example Response (JSON):
{ "alert_email": false, "alert_email_override": null, "daily_report": false }
Response Fields (JSON):
alert_email
– Indicates whether or not email alerts are set for this account. Valid values: true, false.
alert_email_override
– Lists an alternate email address where the alerts are sent. By default, email alerts are sent to the user’s email address on file.
daily_report
– Indicates if the email alerts are sent as a daily report. Valid values: true, false.
notificationEmail
– Legacy field that lists an alternate email address where the alerts are sent. This field is deprecated. Use alert_email_override field instead.
PUT /portfolio/settings (turn email alerts on or off)
Toggle alert notification emails on or off using this request.
URI: https://dii.dynapis.com/portfolio/settings
Legacy URI: https://api.renesys.com/portfolio/settings
Example Request Body (JSON):
{"alert_email": true}
Request Body Fields (JSON):
alert_email
– Toggles email alerts on or off. Accepted values:true
orfalse
Example Response:
HTTP/1.1 204 No Content
PUT /portfolio/settings (change email settings)
Change the email address used to receive alerts. When a Routing alert occurs, you can have the email notification sent to your email account, or any email account you designate. For example, you could send the email alerts to an internal Network Operations Center for analysis.
URI: https://dii.dynapis.com/portfolio/settings
Legacy URI: https://api.renesys.com/portfolio/settings
Example Request Body (JSON):
{"alert_email_override": "noc@company.com"}
Request Body Fields:
alert_email_override
– Add or update the email address that will receive Routing Alerts.
Example Response (JSON)
HTTP/1.1 204 No Content
DELETE /portfolio/settings
Delete the previously set email account that receives the alert emails. This resets the email settings to their default, which is the user’s email address.
URI: https://dii.dynapis.com/portfolio/settings
Legacy URI: https://api.renesys.com/portfolio/settings
Request Body Fields (JSON):
- None
Example Response:
HTTP/1.1 204 No Content
GET /portfolio/assets/{asset}/options
Retrieves the options for the indicated asset. One asset can belong to more than one inventory. Query the database for the monitoring options of the asset.
URI: https://dii.dynapis.com/portfolio/assets/{asset}/options
Where {asset} is the ASN, Prefix, IP address, domain, CDN, or CloudZone.
Legacy URI: https://api.renesys.com/portfolio/assets/{asset}/options
Example for getting the options for the CDN Fastly asset:
https://dii.dynapis.com/portfolio/assets/Fastly/options
Request Body Fields (JSON):
- None
Example Response (JSON):
The monitoring options are included in the response in JSON format and contained in the HTTP body of the response.
This example shows the monitoring options for the prefix 171.192.0.0/13:
{ "lastChanged": 1469102953, "userId": 5874, "asset": "171.192.0.0/13", "optionsId": 154527, "configuration": { "auto": true, "allowedASNs": {}, "abbynormal": { "research-routes": [], "autoAllowedASNs": {}, "routed_prefix": null, "timestamp": 1469102942 } }, "suppressed": { "all": false, "categories": [] } }
PUT /assets/{asset}/options (suppress all alerts)
You can suppress all alert categories for an asset. Any future alerts for that asset will be acknowledged automatically. These suppressed, automatically acknowledged alerts will appear in the results of Get a List of all Alerts and Get Alert List for one Asset.
URI: https://dii.dynapis.com/portfolio/assets/{asset}/options
Where {asset} represents the specific asset. Valid asset types are: ASN, Prefix, IP Address, Domain, CDN, or CloudZone.
Legacy URI: https://api.renesys.com/portfolio/assets/{asset}/options
Example for suppressing alerts for a specific prefix:
https://dii.dynapis.com/portfolio/assets/84.205.64.0/24/options
Example Request Body (JSON):
suppress_all.json:
{ "suppressed": { "all": true, "categories": [ ] } }
Request Body Fields (JSON):
all
– Toggles alert suppression for an inventory. Valid values: True or False.
categories
– Which alert categories to suppress. Leave field blank to suppress all categories of alerts for an inventory.
See Alert Categories and Types for a listing of available alert categories.
Example Response:
HTTP/1.1 204 No Content
PUT /inventories/id (suppress alerts for an inventory)
You can choose to suppress alerts at the inventory level. When you have an asset in more than one inventory, the suppression rules change a bit for that asset. See Alert Suppression by Inventory Explained for more information on how inventory suppression impacts alerts in more than one inventory.
URI: https://dii.dynapis.com/portfolio/inventories/{inventory}
Legacy URI: https://api.renesys.com/portfolio/inventories/{inventory}
Example for suppressing upstream alerts for an inventory named “example inventory”:
https://dii.dynapis.com/portfolio/inventories/example%20inventory
Example Request (JSON):
suppress_inventory.json:
{ "suppressed": { "all": false, "categories": ["upstream"] } }
Request Body Fields (JSON):
all
– Toggles alert suppression for an inventory. Valid values: True or False.
categories
– Which alert categories to suppress. Leave field blank to suppress all categories of alerts for an inventory.
See Alert Categories and Types for a listing of available alert categories.
Example Response:
HTTP/1.1 204 No Content
PUT /portfolio/assets/{asset}/options (suppress alerts for an asset)
Suppresses alerts for the identified asset. Any future alerts for that asset will be acknowledged automatically. These suppressed, automatically acknowledged, alerts will appear in the results of Get a List of all Alerts and Get Alert List for one Asset.
URI: https://dii.dynapis.com/portfolio/assets/{asset}/options
Legacy URI: https://api.renesys.com/portfolio/assets/{asset}/options
Example for suppressing leak alerts for an ASN:
https://dii.dynapis.com/portfolio/assets/12654/options
Example Request Body (JSON):
Suppressing alerts for an ASN can be done using one of two formats. Both are valid.
Format 1: suppress the category “leak” as this is the only category that applies to ASNs.
suppress_leaks.json:
{ "suppressed": { "all": false, "categories": ["leak"] } }
Format 2: suppress all alerts for the ASN as “leak” is the only category that applies to ASNs.
suppress_leaks.json:
{ "suppressed": { "all": true, "categories": [ ] } }
Request Body Fields (JSON):
all
– Toggles alert suppression for an inventory. Valid values: True or False.
categories
– Which alert categories to suppress. Leave field blank to suppress all categories of alerts for an inventory.
See Alert Categories and Types for a listing of available alert categories.
Example Response
HTTP/1.1 204 No Content
PUT /portfolio/assets/{asset}/options (manually authorize upstream and origin ASNs)
By default, when hijack or upstream monitoring is enabled for a prefix, the system automatically determines the expected origin and provider ASNs based on recent BGP history, and stores it in configuration.allowedASNs
(see example request body). If you prefer to override the automatically-determined origin and provider ASNs and manually specify which ASNs are allowed to announce or originate your prefix, you can use this call. In other words, you can use this endpoint to prevent false alerting on expected behavior from trusted transit providers or expected changes in prefix origination.
The configuration.allowedASNs
field is expected to be a dictionary. To use this call, override allowedASNs
with a dictionary where each key is an allowed origin ASN, and each value is a list of allowed upstreams.
To revert to the default (automatically-determined origin and provider ASN) set configuration.auto
back to true
.
URI: https://dii.dynapis.com/portfolio/assets/{asset}/options
Legacy URI: https://api.renesys.com/portfolio/assets/{asset}/options
Example for authorizing a specific ASN:
https://dii.dynapis.com/portfolio/assets/68.233.64.0/21/options
Example Request Body (JSON):
{ "configuration":{ "auto":false, "allowedASNs": { "7160" : [3257, 174, 3356, 3549] } } }
Example Response
HTTP/1.1 204 No Content
Manage Your Alerts
GET /portfolio/monitoring/alerts
You can get a list of all Internet Routing Alerts and Internet Performance Alerts. Each Internet Alert has its own output content. See Alerts Output for information on the output for the various Internet Alert types. See Alert Categories and Types for a listing of available alert categories.
NOTE: Alerts will be deleted 180 days after they were raised.
URI: https://dii.dynapis.com/portfolio/monitoring/alerts
Legacy URI: https://api.renesys.com/portfolio/monitoring/alerts
Request Parameters:
fields
– List of fields to include in the search of your alerts. You can specify multiple fields either in a comma-separated list, or with multiple occurrences of parameter:fields=a,b,c
is equivalent tofields=a&fields=b&fields=c
orfields=a,b&fields=c
alarmId
– The specific ID number given to an alert.type
– Type of asset being monitored.asset.assetName
– Name of asset.asset.assetType
– The type of asset.asset.inventories
– Inventories the asset resides in.
limit
– Retrieve no more than a specified number of alerts, up to 1000 alerts.alarmId
– Request a specific alert via itsalarmId
.type
– Request the alerts by a specific type. Learn more about alert category and types.category
– Request the alerts by a specific category. Learn more about alert category and types.firstEvidenceAt
– Request alerts whose first evidence was seen at the specified time (POSIX timestamp).raisedAt
– Request alerts that were raised at a specified time (POSIX timestamp).loweredAt
– Get alerts lowered at a specific time (POSIX timestamp).acknowledgedAt
– Get alerts that were acknowledged at a specific time (POSIX timestamp).acknowledgeType
– Get alerts that were acknowledged by a specified means. Valid acknowledgement types:user
,suppress
.asset
– Get alerts for a specified asset within your Portfolio.prefix
– Get alerts for a specified IP prefix.origin
– Get alerts for a specified ASN.ip
– Get alerts for a specified IP address.cloudzone
– Get alerts for a specified cloudzone.cdn
– Get alerts for a specified CDN.
Sample URI that searches for alerts of a specific type from a specific user ID and asset: https://dii.dynapis.com/portfolio/monitoring/alerts?type=latency-fixed&ip=54.43.32.21
Request Body:
- None
NOTE: If you do not include the limit
request parameter, this response will be truncated to the first 1000 matching alerts. Truncated responses are accompanied by a “303 See Other” status code. The response includes a Link
header (defined by RFC 5988) that lets you retrieve the next batch of 1000 matching alerts. If you want to retrieve all matching alerts, you will need to page through them by following successive the Link
headers.
Example Request Using “next” Link:
Example of a truncated response:
GET /portfolio/monitoring/alerts?fields=alarmId HTTP/1.1 HTTP/1.1 303 See Other Content-Type: application/json Link: <!--?fields=alarmId&alarmId.lt=23676227 >; rel="next" Location: ?fields=alarmId&alarmId.lte=28639336&limit=1000 [...JSON array of the first 1000 matching alarms...] </pre> <p>To retrieve the next page of results, look for the <code>Link</code> header with <code>rel="next"</code>. Extract the relative URI reference from inside the angle brackets ("<>"). Resolve it according to <a href="https://tools.ietf.org/html/rfc3986#section-5">RFC 3986 section 5</a>, using the retrieval URI ("/monitoring/alerts?fields=alarmId") as the base URI. The request to retrieve the next page will then look like:</p> <pre class="prettyprint"> GET /portfolio/monitoring/alerts?fields=alarmId&alarmId.lt=23676227 HTTP/1.1 303 See Other Content-Type: application/json Link: <?fields=alarmId&alarmId.lt=19937864>; rel="next" Location: ?fields=alarmId&alarmId.lte=23676223&limit=1000 [...JSON array of the next 1000 matching alerts...] </pre> <p>When you reach the last page of results, you will receive a "200 OK" response with no <code>Link</code> header:</p> <pre class="prettyprint"> GET /portfolio/monitoring/alerts?fields=alarmId&alarmId.lt=1056246 HTTP/1.1 HTTP/1.1 200 OK Content-Type: application/json [...JSON array of < 1000 remaining alerts...] </pre> <p><br></br><br ?--> <strong>Example Response (JSON): </strong> See <a href="https://help.dyn.com/alerts-output-by-type/">Alerts Output</a> for information on the output for each type of alert.
Example of an outage alert response:
[ { "acknowledgeType":"archived", "loweredAt":1411023217, "peerCount":210, "firstEvidenceAt":1410756954, "prefix":"23.53.192.0/20", "updatedAt":1435764223, "acknowledgedAt":1435764223, "category":"outage", "raisedAt":1410776838, "alarmId":85688, "asset":"23.53.192.0/20", "type":"outage", "userName":"example@sample.com", "typeName":"outage" } ]
GET /portfolio/monitoring/alerts (alerts since given time)
Use this command to retrieve all alerts from the Unix timestamp entered. This is the same information received from the Get All Alerts command except, in this command, you request the most recent alerts.
URI:
https://dii.dynapis.com/portfolio/monitoring/alerts/alerts?raisedAt.gt={unix timestamp}
Legacy URI: https://api.renesys.com/portfolio/monitoring/alerts/alerts?raisedAt.gt={unix timestamp}
Where {unix timestamp} is replaced with the Unix timestamp for the time and date of the earliest alert you want to receive.
Request Body Fields (JSON):
- None
Example Response (JSON):
Here is an example response for raisedAt.gt=1463672279
{ "origin": 10794, "acknowledgeType": null, "loweredAt": null, "peerCount": 373, "firstEvidenceAt": 1468933449, "prefix": "171.128.0.0/10", "updatedAt": 1468933864, "acknowledgedAt": null, "category": "unexpected-activity", "raisedAt": 1468933449, "validOrigins": [], "alarmId": 13796613, "asset": "171.128.0.0/10", "type": "unexpected-subprefix-activity", "subprefix": "171.161.53.0/24", "userName": "example@sample.com", "typeName": "unexpected-subprefix-activity", "previousOrigin": null }
GET /portfolio/monitoring/alerts (unacknowledged)
You can get a list of all unacknowledged alerts, both from Internet Routing Alerts and Internet Performance Alerts. Each alert’s output format is basically the same, but the output fields vary by the alert type. See Alerts Output for information on the output fields for the various alert types.
URI:
Retrieve all unacknowledged Monitoring alerts:
https://dii.dynapis.com/portfolio/monitoring/alerts?acknowledgedAt.is_null=
Legacy URI: https://api.renesys.com/portfolio/monitoring/alerts?acknowledgedAt.is_null=
Retrieve all unacknowledged Performance alerts:
https://dii.dynapis.com/portfolio/monitoring/alerts?acknowledgedAt.is_null=&category=performance
Legacy URI: https://api.renesys.com/
NOTE: See Alert Categories and Types for the valid values to retrieve unacknowledged alerts of any specific category.
Request Body Fields (JSON):
- None
Example Response (JSON)
See Alerts Output for information on the output for each type of alert.
Here is an example of an unacknowledged alert of unexpected subprefix activity:
{ "origin": 10794, "acknowledgeType": null, "loweredAt": null, "peerCount": 373, "firstEvidenceAt": 1468933449, "prefix": "171.128.0.0/10", "updatedAt": 1468933864, "acknowledgedAt": null, "category": "unexpected-activity", "raisedAt": 1468933449, "validOrigins": [], "alarmId": 13796613, "asset": "171.128.0.0/10", "type": "unexpected-subprefix-activity", "subprefix": "171.161.53.0/24", "userName": "example@email.com", "typeName": "unexpected-subprefix-activity", "previousOrigin": null },
GET /portfolio/monitoring/alerts (for a specific asset)
You can get a list of all monitoring alerts for a single asset. Each alert has its own output content. See Alerts Output for information on the output for each type of alert.
URI: https://dii.dynapis.com/portfolio/monitoring/alerts?asset={asset}
Legacy URI: https://api.renesys.com/portfolio/monitoring/alerts?asset={asset}
Example request to retrieve alerts for a specific IP prefix:
https://dii.dynapis.com/portfolio/monitoring/alerts?asset=84.205.69.0/24
Example request to retrieve alerts for a specific ASN:
https://dii.dynapis.com/portfolio/monitoring/alerts?asset=12654
Request Body Fields (JSON):
- None
Example Response (JSON):
Here is an example of retrieving alerts for the prefix asset: 171.181.112.0/24
{ "origin": 19886, "acknowledgeType": "archived", "loweredAt": 1432318734, "peerCount": 0, "firstEvidenceAt": 1432247096, "prefix": "171.181.112.0/24", "updatedAt": 1435764223, "acknowledgedAt": 1435764223, "category": "unexpected-activity", "raisedAt": 1432247096, "validOrigins": [], "alarmId": 769458, "asset": "171.181.112.0/24", "type": "unexpected-prefix-activity", "userName": "example@sample.com", "typeName": "unexpected-prefix-activity", "previousOrigin": null }
GET /portfolio/monitoring/types
Retrieves a list of alert types. See Alerts Output by Type for more information on the information contained in each alert.
URI: https://dii.dynapis.com/portfolio/monitoring/types
Legacy URI: https://api.renesys.com/portfolio/monitoring/types
Request Body Fields (JSON):
- None
Example Response (JSON):
[ "hijack", "outage", "instability", "leak", "unexpected-activity", "upstream", "performance", "cloudzone", "cdn" ]
GET /portfolio/monitoring/alerts/{alarmid} (details by alert ID)
Retrieves the details for the identified alert. When you receive a Routing or Performance Alert notification email, you can use the Alert’s Alarm ID (inside the email) to retrieve the details about the alert through the API, including information on when the issue was first seen, the time the alert was raised, and the current monitoring threshold that was crossed. This information can be used to better understand the context around the alert notification. See Alerts Output for information on the output for the various Internet Alert types.
URI https://dii.dynapis.com/portfolio/monitoring/alerts/{alarmid}
Legacy URI: https://api.renesys.com/portfolio/monitoring/alerts/{alarmid}
Request Body Fields (JSON):
- None
Example Response (JSON):
See Alerts Output for information on the output for each type of alert.
{ "acknowledgeType": null, "loweredAt": 1480514730, "peerCount": 46, "firstEvidenceAt": 1480514470, "prefix": "84.205.64.0/24", "updatedAt": 1480514764, "acknowledgedAt": null, "category": "instability", "raisedAt": 1480514460, "alarmId": 24631168, "asset": "84.205.64.0/24", "type": "instability", "userName": "7a002f3b-16d1-4e3b-aff6-b078beb14f9c", "typeName": "instability" }
POST /portfolio/monitoring/bulkAcknowledge (all)
Acknowledge all alerts. Alerts remain active until acknowledged. You can all acknowledge alerts at once using this command. See Alert Categories and Types for a listing of available alert categories.
URI https://dii.dynapis.com/portfolio/monitoring/bulkAcknowledge
Legacy URI: https://api.renesys.com/portfolio/monitoring/bulkAcknowledge
Request Body Fields (JSON):
- None
Example Response:
HTTP/1.1 204 No Content
POST /portfolio/monitoring/bulkAcknowledge (one asset)
Acknowledge an alert from one asset. Alerts remain active until acknowledged. See Alert Categories and Types for a listing of available alert categories.
URI: https://dii.dynapis.com/portfolio/monitoring/bulkAcknowledge?asset={asset}
Legacy URI: https://api.renesys.com/portfolio/monitoring/bulkAcknowledge?asset={asset}
Example for acknowledging alerts for an ASN:
https://dii.dynapis.com/portfolio/monitoring/bulkAcknowledge?asset=12654
Request Body Fields (JSON):
- None
Example Response:
HTTP/1.1 204 No Content
POST /portfolio/monitoring/bulkAcknowledge (one type)
Acknowledge all alerts of one type. Alerts remain active until acknowledged. See Alert Categories and Types for a listing of available alert categories.
URI: https://dii.dynapis.com/portfolio/monitoring/bulkAcknowledge?typeName={alarm type}
Legacy URI: https://api.renesys.com/portfolio/monitoring/bulkAcknowledge?typeName={alarm type}
Example URI acknowledging one type of alert (outage):
https://dii.dynapis.com/portfolio/monitoring/bulkAcknowledge?typeName=outage
Response Body Fields (JSON):
- None
Example Response:
HTTP/1.1 204 No Content
POST /portfolio/monitoring/bulkAcknowledge (one type, one asset)
Acknowledge one type of alert for one asset. Alerts remain active until acknowledged. See Alert Categories and Types for a listing of available alert categories.
URI: https://dii.dynapis.com/portfolio/monitoring/bulkAcknowledge?{asset type}={prefix}&typeName={alert type}
Legacy URI: https://api.renesys.com/portfolio/monitoring/bulkAcknowledge?{asset type}={prefix}&typeName={alert type}
Example URI acknowledging outage on a specific IP prefix:
https://dii.dynapis.com/portfolio/monitoring/bulkAcknowledge?prefix=84.205.64.0/24&typeName=outage
Example URI acknowledging instability on a specific IP prefix:
https://dii.dynapis.com/portfolio/monitoring/bulkAcknowledge?asn=84.205.64.0/24&typeName=instability
Response Body Fields (JSON):
- None
Example Response:
HTTP/1.1 204 No Content
PUT /portfolio/inventories/{inventory} (enable or disable alerts)
Enable or disable alerts for an inventory. Updating the contents of an inventory is the same request for Internet Routing Alerts and Internet Performance Alerts APIs.
NOTE: If you have both Internet Routing Alerts and Internet Performance Alerts, inventories are shared between the two products. If you update an inventory, the new inventory contents will be available for both products.
URI: https://dii.dynapis.com/portfolio/{inventory}
Legacy URI: https://api.renesys.com/portfolio/{inventory}
A sample URI for an inventory named “example inventory”: https://dii.dynapis.com/portfolio/example%20inventory
Example Request (JSON):
Must be a JSON object.
{"monitoring": true, "comment": "This is your comment"}
Request Body Fields (JSON):
- monitoring – Enable alerts for this asset. Values can be either
true
orfalse
. - comment – User supplied description of the asset.
Example Response:
HTTP/1.1 204 No Content