LookingGlass scoutINSPECT Developer v2
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
This is the developer api for LookingGlass scoutINSPECT
Base URLs:
Authentication
- HTTP Authentication, scheme: basic The authorization token uses Basic auth consisting of your username and password joined by a colon and base64 encoded. See this article for more information
Inventory
Search inventory
search all inventory
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/inventory", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/inventory \
--header 'accept: application/json'
GET /inventory
The inventory endpoint allows you to access all of your inventory
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
after | query | string | false | return results after date (ex:2020-09-15) |
before | query | string | false | return results before date (ex:2020-09-15) |
name | query | string | false | return results matching asset name |
type | query | string | false | return results matching asset type |
Example responses
200 Response
[
{
"type": "CNAME",
"value": "www.domain.com"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
search all new inventory
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/inventory/new", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/inventory/new \
--header 'accept: application/json'
GET /inventory/new
The inventory endpoint allows you to access all new discovered inventory
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
after | query | string | false | return results after date (ex:2020-09-15) |
before | query | string | false | return results before date (ex:2020-09-15) |
name | query | string | false | return results matching asset name |
type | query | string | false | return results matching asset type |
Example responses
200 Response
[
{
"type": "CNAME",
"value": "www.domain.com"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
search inventory by id
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/inventory/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/inventory/ \
--header 'accept: application/json'
GET /inventory/{id}
Example responses
200 Response
{
"type": "CNAME",
"value": "www.domain.com"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Domains
Search for Domains inventory
search all domains
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/domains", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/domains \
--header 'accept: application/json'
GET /domains
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"type": "CNAME",
"value": "www.domain.com"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [DnsRecord] | false | none | none |
» type | string | true | none | none |
» value | string | true | none | none |
search domains by id
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/domains/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/domains/ \
--header 'accept: application/json'
GET /domains/{id}
Example responses
200 Response
{
"type": "CNAME",
"value": "www.domain.com"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | DnsRecord |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
search domains by fqdn
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/domains/name/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/domains/name/ \
--header 'accept: application/json'
GET /domains/name/{fqdn}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
{
"type": "CNAME",
"value": "www.domain.com"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | DnsRecord |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
search domains by record type
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/domains/type/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/domains/type/ \
--header 'accept: application/json'
GET /domains/type/{type}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
{
"type": "CNAME",
"value": "www.domain.com"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | DnsRecord |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Software
search for Software inventory
search all software
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/software", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/software \
--header 'accept: application/json'
GET /software
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.111Z",
"updated": "2022-02-25T19:32:58.111Z",
"active": true
},
"category": "framework",
"license": "oss",
"vendor": "React",
"developer": "React",
"name": "react",
"versions": [
"16.13.1"
],
"lastVersion": "16.13.1",
"website": "https://www.reactjs.org"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [Software] | false | none | none |
» metadata | InventoryMetadata | true | none | none |
»» id | string(uuid) | true | none | none |
»» typeInfo | InventoryTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» category | string | true | none | none |
» license | string | true | none | none |
» vendor | string | true | none | none |
» developer | string | true | none | none |
» name | string | true | none | none |
» versions | [string] | true | none | none |
» lastVersion | string | true | none | none |
» website | string | true | none | none |
search software by id
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/software/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/software/ \
--header 'accept: application/json'
GET /software/{id}
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.116Z",
"updated": "2022-02-25T19:32:58.116Z",
"active": true
},
"category": "framework",
"license": "oss",
"vendor": "React",
"developer": "React",
"name": "react",
"versions": [
"16.13.1"
],
"lastVersion": "16.13.1",
"website": "https://www.reactjs.org"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Software |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
search software by vendor name
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/software/vendor/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/software/vendor/ \
--header 'accept: application/json'
GET /software/vendor/{name}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.118Z",
"updated": "2022-02-25T19:32:58.118Z",
"active": true
},
"category": "framework",
"license": "oss",
"vendor": "React",
"developer": "React",
"name": "react",
"versions": [
"16.13.1"
],
"lastVersion": "16.13.1",
"website": "https://www.reactjs.org"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [Software] | false | none | none |
» metadata | InventoryMetadata | true | none | none |
»» id | string(uuid) | true | none | none |
»» typeInfo | InventoryTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» category | string | true | none | none |
» license | string | true | none | none |
» vendor | string | true | none | none |
» developer | string | true | none | none |
» name | string | true | none | none |
» versions | [string] | true | none | none |
» lastVersion | string | true | none | none |
» website | string | true | none | none |
search software by product name
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/software/product/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/software/product/ \
--header 'accept: application/json'
GET /software/product/{name}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.120Z",
"updated": "2022-02-25T19:32:58.120Z",
"active": true
},
"category": "framework",
"license": "oss",
"vendor": "React",
"developer": "React",
"name": "react",
"versions": [
"16.13.1"
],
"lastVersion": "16.13.1",
"website": "https://www.reactjs.org"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Software |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
search software by product version
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/software/product/version/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/software/product/version/ \
--header 'accept: application/json'
GET /software/product/version/{version}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.122Z",
"updated": "2022-02-25T19:32:58.122Z",
"active": true
},
"category": "framework",
"license": "oss",
"vendor": "React",
"developer": "React",
"name": "react",
"versions": [
"16.13.1"
],
"lastVersion": "16.13.1",
"website": "https://www.reactjs.org"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Software |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
search software by product category
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/software/category/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/software/category/ \
--header 'accept: application/json'
GET /software/category/{name}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.125Z",
"updated": "2022-02-25T19:32:58.125Z",
"active": true
},
"category": "framework",
"license": "oss",
"vendor": "React",
"developer": "React",
"name": "react",
"versions": [
"16.13.1"
],
"lastVersion": "16.13.1",
"website": "https://www.reactjs.org"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [Software] | false | none | none |
» metadata | InventoryMetadata | true | none | none |
»» id | string(uuid) | true | none | none |
»» typeInfo | InventoryTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» category | string | true | none | none |
» license | string | true | none | none |
» vendor | string | true | none | none |
» developer | string | true | none | none |
» name | string | true | none | none |
» versions | [string] | true | none | none |
» lastVersion | string | true | none | none |
» website | string | true | none | none |
Networks
Search for Networks inventory
search all networks
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/networks", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/networks \
--header 'accept: application/json'
GET /networks
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.128Z",
"updated": "2022-02-25T19:32:58.128Z",
"active": true
},
"parent": "123456789012",
"description": "Cloudflare, Inc",
"asn": 13335,
"address": "8.6.112.22/32",
"lat": "32.7787,",
"long": -96.8217
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [NetworkRecord] | false | none | none |
» metadata | InventoryMetadata | true | none | none |
»» id | string(uuid) | true | none | none |
»» typeInfo | InventoryTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» parent | string | true | none | none |
» description | string | true | none | none |
» asn | number | true | none | none |
» address | string | true | none | none |
» lat | number(float) | true | none | none |
» long | number(float) | true | none | none |
search network by id
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/networks/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/networks/ \
--header 'accept: application/json'
GET /networks/{id}
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.131Z",
"updated": "2022-02-25T19:32:58.131Z",
"active": true
},
"parent": "123456789012",
"description": "Cloudflare, Inc",
"asn": 13335,
"address": "8.6.112.22/32",
"lat": "32.7787,",
"long": -96.8217
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | NetworkRecord |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
search networks by ip address
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/networks/address/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/networks/address/ \
--header 'accept: application/json'
GET /networks/address/{address}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.135Z",
"updated": "2022-02-25T19:32:58.135Z",
"active": true
},
"parent": "123456789012",
"description": "Cloudflare, Inc",
"asn": 13335,
"address": "8.6.112.22/32",
"lat": "32.7787,",
"long": -96.8217
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | NetworkRecord |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Resources
Search for Resources inventory
search all resources
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/resources", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/resources \
--header 'accept: application/json'
GET /resources
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.137Z",
"updated": "2022-02-25T19:32:58.137Z",
"active": true
},
"serial": "7:0C:71:A0:CC:C2:CB:A4:41:39:E3:18:25:C9:E3:25:05:BC:F9",
"hash": "ikPc65n7WM7U9sU95JXy+pJrOLku5yfugNd1i+E4cB4=",
"validFrom": "2022-02-25T19:32:58.137Z",
"validTo": "2022-02-25T19:32:58.137Z",
"subject": "C=US, O=Company.com, LLC, L=Miami Beach, ST=Florida, CN=*.company.com",
"issuer": "C=US, O=Trustwave Holdings, Inc., L=Chicago, ST=Illinois, CN=Trustwave OV SHA256 Pre-Certificate CA",
"altNames": [
"hyperoffice.company.com"
]
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» metadata | InventoryMetadata | true | none | none |
»» id | string(uuid) | true | none | none |
»» typeInfo | InventoryTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» serial | string | true | none | none |
» hash | string | true | none | none |
» validFrom | string(date-time) | true | none | none |
» validTo | string(date-time) | true | none | none |
» subject | string | true | none | none |
» issuer | string | true | none | none |
» altNames | [string] | true | none | none |
search resources by id
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/resources/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/resources/ \
--header 'accept: application/json'
GET /resources/{id}
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.139Z",
"updated": "2022-02-25T19:32:58.139Z",
"active": true
},
"serial": "7:0C:71:A0:CC:C2:CB:A4:41:39:E3:18:25:C9:E3:25:05:BC:F9",
"hash": "ikPc65n7WM7U9sU95JXy+pJrOLku5yfugNd1i+E4cB4=",
"validFrom": "2022-02-25T19:32:58.139Z",
"validTo": "2022-02-25T19:32:58.139Z",
"subject": "C=US, O=Company.com, LLC, L=Miami Beach, ST=Florida, CN=*.company.com",
"issuer": "C=US, O=Trustwave Holdings, Inc., L=Chicago, ST=Illinois, CN=Trustwave OV SHA256 Pre-Certificate CA",
"altNames": [
"hyperoffice.company.com"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» metadata | InventoryMetadata | true | none | none |
»» id | string(uuid) | true | none | none |
»» typeInfo | InventoryTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» serial | string | true | none | none |
» hash | string | true | none | none |
» validFrom | string(date-time) | true | none | none |
» validTo | string(date-time) | true | none | none |
» subject | string | true | none | none |
» issuer | string | true | none | none |
» altNames | [string] | true | none | none |
search resources by security certificate
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/resources/security/certificate", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/resources/security/certificate \
--header 'accept: application/json'
GET /resources/security/certificate
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.142Z",
"updated": "2022-02-25T19:32:58.142Z",
"active": true
},
"serial": "7:0C:71:A0:CC:C2:CB:A4:41:39:E3:18:25:C9:E3:25:05:BC:F9",
"hash": "ikPc65n7WM7U9sU95JXy+pJrOLku5yfugNd1i+E4cB4=",
"validFrom": "2022-02-25T19:32:58.142Z",
"validTo": "2022-02-25T19:32:58.142Z",
"subject": "C=US, O=Company.com, LLC, L=Miami Beach, ST=Florida, CN=*.company.com",
"issuer": "C=US, O=Trustwave Holdings, Inc., L=Chicago, ST=Illinois, CN=Trustwave OV SHA256 Pre-Certificate CA",
"altNames": [
"hyperoffice.company.com"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» metadata | InventoryMetadata | true | none | none |
»» id | string(uuid) | true | none | none |
»» typeInfo | InventoryTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» serial | string | true | none | none |
» hash | string | true | none | none |
» validFrom | string(date-time) | true | none | none |
» validTo | string(date-time) | true | none | none |
» subject | string | true | none | none |
» issuer | string | true | none | none |
» altNames | [string] | true | none | none |
Services
Search for Services inventory
search all services
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/services", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/services \
--header 'accept: application/json'
GET /services
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.146Z",
"updated": "2022-02-25T19:32:58.146Z",
"active": true
},
"serviceType": {
"id": 2,
"name": "HTTP",
"commonPorts": [
80
],
"description": "HTTP service hosts webpages",
"reference": "https://docs.docs.alphawave.co/inventory/service/network/http"
},
"port": 80
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» metadata | InventoryMetadata | true | none | none |
»» id | string(uuid) | true | none | none |
»» typeInfo | InventoryTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» serviceType | NetworkServiceTypeInfo | true | none | none |
»» id | number | false | none | none |
»» name | string | false | none | none |
»» commonPorts | [number] | false | none | none |
»» description | string | false | none | none |
»» reference | string | false | none | none |
» port | number | true | none | none |
search service by id
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/services/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/services/ \
--header 'accept: application/json'
GET /services/{id}
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.148Z",
"updated": "2022-02-25T19:32:58.148Z",
"active": true
},
"serviceType": {
"id": 2,
"name": "HTTP",
"commonPorts": [
80
],
"description": "HTTP service hosts webpages",
"reference": "https://docs.docs.alphawave.co/inventory/service/network/http"
},
"port": 80
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» metadata | InventoryMetadata | true | none | none |
»» id | string(uuid) | true | none | none |
»» typeInfo | InventoryTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» serviceType | NetworkServiceTypeInfo | true | none | none |
»» id | number | false | none | none |
»» name | string | false | none | none |
»» commonPorts | [number] | false | none | none |
»» description | string | false | none | none |
»» reference | string | false | none | none |
» port | number | true | none | none |
search all network services
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/services/network", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/services/network \
--header 'accept: application/json'
GET /services/network
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.153Z",
"updated": "2022-02-25T19:32:58.153Z",
"active": true
},
"serviceType": {
"id": 2,
"name": "HTTP",
"commonPorts": [
80
],
"description": "HTTP service hosts webpages",
"reference": "https://docs.docs.alphawave.co/inventory/service/network/http"
},
"port": 80
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [NetworkService] | false | none | none |
» metadata | InventoryMetadata | true | none | none |
»» id | string(uuid) | true | none | none |
»» typeInfo | InventoryTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» serviceType | NetworkServiceTypeInfo | true | none | none |
»» id | number | false | none | none |
»» name | string | false | none | none |
»» commonPorts | [number] | false | none | none |
»» description | string | false | none | none |
»» reference | string | false | none | none |
» port | number | true | none | none |
search network services by ip address
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/services/network/address/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/services/network/address/ \
--header 'accept: application/json'
GET /services/network/address/{address}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.157Z",
"updated": "2022-02-25T19:32:58.157Z",
"active": true
},
"serviceType": {
"id": 2,
"name": "HTTP",
"commonPorts": [
80
],
"description": "HTTP service hosts webpages",
"reference": "https://docs.docs.alphawave.co/inventory/service/network/http"
},
"port": 80
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [NetworkService] | false | none | none |
» metadata | InventoryMetadata | true | none | none |
»» id | string(uuid) | true | none | none |
»» typeInfo | InventoryTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» serviceType | NetworkServiceTypeInfo | true | none | none |
»» id | number | false | none | none |
»» name | string | false | none | none |
»» commonPorts | [number] | false | none | none |
»» description | string | false | none | none |
»» reference | string | false | none | none |
» port | number | true | none | none |
search network service by protocol
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/services/network/protocol/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/services/network/protocol/ \
--header 'accept: application/json'
GET /services/network/protocol/{protocol}
search network service by protocol
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.159Z",
"updated": "2022-02-25T19:32:58.159Z",
"active": true
},
"serviceType": {
"id": 2,
"name": "HTTP",
"commonPorts": [
80
],
"description": "HTTP service hosts webpages",
"reference": "https://docs.docs.alphawave.co/inventory/service/network/http"
},
"port": 80
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [NetworkService] | false | none | none |
» metadata | InventoryMetadata | true | none | none |
»» id | string(uuid) | true | none | none |
»» typeInfo | InventoryTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» serviceType | NetworkServiceTypeInfo | true | none | none |
»» id | number | false | none | none |
»» name | string | false | none | none |
»» commonPorts | [number] | false | none | none |
»» description | string | false | none | none |
»» reference | string | false | none | none |
» port | number | true | none | none |
search network service by port
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/services/network/port/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/services/network/port/ \
--header 'accept: application/json'
GET /services/network/port/{port}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.162Z",
"updated": "2022-02-25T19:32:58.162Z",
"active": true
},
"serviceType": {
"id": 2,
"name": "HTTP",
"commonPorts": [
80
],
"description": "HTTP service hosts webpages",
"reference": "https://docs.docs.alphawave.co/inventory/service/network/http"
},
"port": 80
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [NetworkService] | false | none | none |
» metadata | InventoryMetadata | true | none | none |
»» id | string(uuid) | true | none | none |
»» typeInfo | InventoryTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» serviceType | NetworkServiceTypeInfo | true | none | none |
»» id | number | false | none | none |
»» name | string | false | none | none |
»» commonPorts | [number] | false | none | none |
»» description | string | false | none | none |
»» reference | string | false | none | none |
» port | number | true | none | none |
search service by service name
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/services/network/name/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/services/network/name/ \
--header 'accept: application/json'
GET /services/network/name/{name}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.166Z",
"updated": "2022-02-25T19:32:58.166Z",
"active": true
},
"serviceType": {
"id": 2,
"name": "HTTP",
"commonPorts": [
80
],
"description": "HTTP service hosts webpages",
"reference": "https://docs.docs.alphawave.co/inventory/service/network/http"
},
"port": 80
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | NetworkService |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Exposures
Search for all exposures
search all exposures
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/exposures", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/exposures \
--header 'accept: application/json'
GET /exposures
search for all discovered exposures
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Exposure Name",
"description": "Description of this type of exposure",
"reference": "https://docs.alphawave.co/exposure/exposurenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.168Z",
"updated": "2022-02-25T19:32:58.168Z",
"active": true
},
"inventory": {
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.169Z",
"updated": "2022-02-25T19:32:58.169Z",
"active": true
},
"category": "framework",
"license": "oss",
"vendor": "React",
"developer": "React",
"name": "react",
"versions": [
"16.13.1"
],
"lastVersion": "16.13.1",
"website": "https://www.reactjs.org"
},
"description": "A cross-site scripting attack occurs when the attacker tricks a legitimate web-based application or site to accept a request as originating from a trusted source.",
"affectedVersions": [
"0.14.1"
],
"references": [
"https://github.com/facebook/react/issues/3473"
],
"cve": "CVE-2020-12345",
"cwe": "CWE-79"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
search all new exposures
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/exposures/new", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/exposures/new \
--header 'accept: application/json'
GET /exposures/new
search for all newly discovered exposures
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Exposure Name",
"description": "Description of this type of exposure",
"reference": "https://docs.alphawave.co/exposure/exposurenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.171Z",
"updated": "2022-02-25T19:32:58.171Z",
"active": true
},
"inventory": {
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.171Z",
"updated": "2022-02-25T19:32:58.171Z",
"active": true
},
"category": "framework",
"license": "oss",
"vendor": "React",
"developer": "React",
"name": "react",
"versions": [
"16.13.1"
],
"lastVersion": "16.13.1",
"website": "https://www.reactjs.org"
},
"description": "A cross-site scripting attack occurs when the attacker tricks a legitimate web-based application or site to accept a request as originating from a trusted source.",
"affectedVersions": [
"0.14.1"
],
"references": [
"https://github.com/facebook/react/issues/3473"
],
"cve": "CVE-2020-12345",
"cwe": "CWE-79"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
search exposures by id
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/exposures/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/exposures/ \
--header 'accept: application/json'
GET /exposures/{id}
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Exposure Name",
"description": "Description of this type of exposure",
"reference": "https://docs.alphawave.co/exposure/exposurenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.177Z",
"updated": "2022-02-25T19:32:58.177Z",
"active": true
},
"inventory": {
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.177Z",
"updated": "2022-02-25T19:32:58.177Z",
"active": true
},
"category": "framework",
"license": "oss",
"vendor": "React",
"developer": "React",
"name": "react",
"versions": [
"16.13.1"
],
"lastVersion": "16.13.1",
"website": "https://www.reactjs.org"
},
"description": "A cross-site scripting attack occurs when the attacker tricks a legitimate web-based application or site to accept a request as originating from a trusted source.",
"affectedVersions": [
"0.14.1"
],
"references": [
"https://github.com/facebook/react/issues/3473"
],
"cve": "CVE-2020-12345",
"cwe": "CWE-79"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Vulnerabilities
Search for Vulnerability exposures
search all vulnerabilities
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/exposures/vulnerabilities", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/exposures/vulnerabilities \
--header 'accept: application/json'
GET /exposures/vulnerabilities
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Exposure Name",
"description": "Description of this type of exposure",
"reference": "https://docs.alphawave.co/exposure/exposurenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.180Z",
"updated": "2022-02-25T19:32:58.180Z",
"active": true
},
"inventory": {
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.180Z",
"updated": "2022-02-25T19:32:58.180Z",
"active": true
},
"category": "framework",
"license": "oss",
"vendor": "React",
"developer": "React",
"name": "react",
"versions": [
"16.13.1"
],
"lastVersion": "16.13.1",
"website": "https://www.reactjs.org"
},
"description": "A cross-site scripting attack occurs when the attacker tricks a legitimate web-based application or site to accept a request as originating from a trusted source.",
"affectedVersions": [
"0.14.1"
],
"references": [
"https://github.com/facebook/react/issues/3473"
],
"cve": "CVE-2020-12345",
"cwe": "CWE-79"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [Vulnerability] | false | none | none |
» metadata | ExposureMetadata | true | none | none |
»» id | string(uuid) | false | none | none |
»» typeInfo | ExposureTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» inventory | any | true | none | none |
anyOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
»» anonymous | Software | false | none | none |
»»» metadata | InventoryMetadata | true | none | none |
»»»» id | string(uuid) | true | none | none |
»»»» typeInfo | InventoryTypeInfo | true | none | none |
»»»»» id | number | false | none | none |
»»»»» name | string | false | none | none |
»»»»» description | string | false | none | none |
»»»»» reference | string | false | none | none |
»»»» orgId | string | true | none | none |
»»»» created | string(date-time) | false | none | none |
»»»» updated | string(date-time) | false | none | none |
»»»» active | boolean | false | none | none |
»»» category | string | true | none | none |
»»» license | string | true | none | none |
»»» vendor | string | true | none | none |
»»» developer | string | true | none | none |
»»» name | string | true | none | none |
»»» versions | [string] | true | none | none |
»»» lastVersion | string | true | none | none |
»»» website | string | true | none | none |
or
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
»» anonymous | NetworkService | false | none | none |
»»» metadata | InventoryMetadata | true | none | none |
»»» serviceType | NetworkServiceTypeInfo | true | none | none |
»»»» id | number | false | none | none |
»»»» name | string | false | none | none |
»»»» commonPorts | [number] | false | none | none |
»»»» description | string | false | none | none |
»»»» reference | string | false | none | none |
»»» port | number | true | none | none |
continued
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
»» description | string | true | none | none |
»» affectedVersions | [string] | true | none | none |
»» references | [string] | false | none | none |
»» cve | string | false | none | none |
»» cwe | string | false | none | none |
Organizations
Search and manage your organizations
get all organizations
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/organizations", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/organizations \
--header 'accept: application/json'
GET /organizations
Example responses
200 Response
[
{
"metadata": {
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.182Z",
"updated": "2022-02-25T19:32:58.182Z",
"deleted": "2022-02-25T19:32:58.182Z"
},
"owner_name": "Bob Ross",
"owner_email": "bobross@domain.com",
"plan": "basic",
"trial": false,
"name": "Bob Ross Paintings",
"homepage": "domain.com",
"description": "This company sells bob ross paintings",
"city": "Austin",
"region": "Texas",
"country": "United States",
"domains": [
"600d1675-e5cf-41cc-ac42-0e326b8bd175"
],
"networks": [
"600d1675-e5cf-41cc-ac42-0e326b8bd175"
],
"asns": [
1234
],
"prefixes": [
"1.1.1.1/32"
],
"users": [
"Bob Ross"
],
"emails": [
"bobross@domain.com"
],
"collection_time": "2022-02-25T19:32:58.182Z",
"collection_success": true
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [Organization] | false | none | none |
» metadata | OrganizationMetadata | true | none | none |
»» orgId | string | true | none | none |
»» active | boolean | true | none | none |
»» created | string(date-time) | true | none | none |
»» updated | string(date-time) | true | none | none |
»» deleted | string(date-time) | false | none | none |
» owner_name | string | false | none | none |
» owner_email | string | false | none | none |
» plan | string | false | none | none |
» trial | boolean | false | none | none |
» name | string | false | none | none |
» homepage | string | false | none | none |
» description | string | false | none | none |
» city | string | false | none | none |
» region | string | false | none | none |
» country | string | false | none | none |
» domains | [string] | false | none | none |
» networks | [string] | false | none | none |
» asns | [integer] | false | none | none |
» prefixes | [string] | false | none | none |
» users | [string] | false | none | none |
» emails | [string] | false | none | none |
» collection_time | string(date-time) | false | none | none |
» collection_success | boolean | false | none | none |
add a new network to an organization
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
payload = "{\"address\":\"10.1.1.0/24\",\"description\":\"Our external network\",\"owner\":\"bob@ross.com\",\"tags\":\"production\"}"
headers = {
'content-type': "application/json",
'accept': "application/json"
}
conn.request("POST", "/organizations/networks", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request POST \
--url https://api.alphawave.co/organizations/networks \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{"address":"10.1.1.0/24","description":"Our external network","owner":"bob@ross.com","tags":"production"}'
POST /organizations/networks
Body parameter
{
"address": "10.1.1.0/24",
"description": "Our external network",
"owner": "bob@ross.com",
"tags": "production"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | NetworkRequest | true | a new network object to add |
» address | body | string | true | none |
» description | body | string | true | none |
» owner | body | string | true | none |
» tags | body | string | true | none |
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.185Z",
"updated": "2022-02-25T19:32:58.185Z",
"deleted": "2022-02-25T19:32:58.185Z"
},
"address": "1.1.1.0/24",
"description": "Our colo network",
"owner": "bobross@domain.com",
"tags": [
"colo",
"production"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | created new domain | Network |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
List networks associated with organization
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/organizations/networks", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/organizations/networks \
--header 'accept: application/json'
GET /organizations/networks
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.187Z",
"updated": "2022-02-25T19:32:58.187Z",
"deleted": "2022-02-25T19:32:58.187Z"
},
"address": "1.1.1.0/24",
"description": "Our colo network",
"owner": "bobross@domain.com",
"tags": [
"colo",
"production"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | all network entries | Network |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
get organizations network by id
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/organizations/networks/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/organizations/networks/ \
--header 'accept: application/json'
GET /organizations/networks/{id}
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.189Z",
"updated": "2022-02-25T19:32:58.189Z",
"deleted": "2022-02-25T19:32:58.189Z"
},
"address": "1.1.1.0/24",
"description": "Our colo network",
"owner": "bobross@domain.com",
"tags": [
"colo",
"production"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Network |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
modify a network to an organization
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
payload = "{\"address\":\"10.1.1.0/24\",\"description\":\"Our external network\",\"owner\":\"bob@ross.com\",\"tags\":\"production\"}"
headers = {
'content-type': "application/json",
'accept': "application/json"
}
conn.request("PATCH", "/organizations/networks/", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request PATCH \
--url https://api.alphawave.co/organizations/networks/ \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{"address":"10.1.1.0/24","description":"Our external network","owner":"bob@ross.com","tags":"production"}'
PATCH /organizations/networks/{id}
Body parameter
{
"address": "10.1.1.0/24",
"description": "Our external network",
"owner": "bob@ross.com",
"tags": "production"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | NetworkRequest | true | a network object to modify |
» address | body | string | true | none |
» description | body | string | true | none |
» owner | body | string | true | none |
» tags | body | string | true | none |
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.194Z",
"updated": "2022-02-25T19:32:58.194Z",
"deleted": "2022-02-25T19:32:58.194Z"
},
"address": "1.1.1.0/24",
"description": "Our colo network",
"owner": "bobross@domain.com",
"tags": [
"colo",
"production"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | updated existing network | Network |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
delete an organizations network by id
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("DELETE", "/organizations/networks/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request DELETE \
--url https://api.alphawave.co/organizations/networks/ \
--header 'accept: application/json'
DELETE /organizations/networks/{id}
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.197Z",
"updated": "2022-02-25T19:32:58.197Z",
"deleted": "2022-02-25T19:32:58.197Z"
},
"address": "1.1.1.0/24",
"description": "Our colo network",
"owner": "bobross@domain.com",
"tags": [
"colo",
"production"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Network |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
add a new domain to an organization
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
payload = "{\"name\":\"alphawave.co\",\"description\":\"Our labs domain\",\"owner\":\"bob@ross.com\",\"tags\":[\"production\",\"staging\"]}"
headers = {
'content-type': "application/json",
'accept': "application/json"
}
conn.request("POST", "/organizations/domains", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request POST \
--url https://api.alphawave.co/organizations/domains \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{"name":"alphawave.co","description":"Our labs domain","owner":"bob@ross.com","tags":["production","staging"]}'
POST /organizations/domains
Body parameter
{
"name": "alphawave.co",
"description": "Our labs domain",
"owner": "bob@ross.com",
"tags": [
"production",
"staging"
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | DomainRequest | true | a new domain object to add |
» name | body | string | true | none |
» description | body | string | true | none |
» owner | body | string | true | none |
» tags | body | array | true | none |
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.199Z",
"updated": "2022-02-25T19:32:58.199Z",
"deleted": "2022-02-25T19:32:58.199Z"
},
"name": "domain.com",
"description": "Our root domain",
"owner": "bobross@domain.com",
"tags": [
"production",
"staging"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | created new domain | Domain |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
List domains associated with organization
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/organizations/domains", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/organizations/domains \
--header 'accept: application/json'
GET /organizations/domains
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.201Z",
"updated": "2022-02-25T19:32:58.201Z",
"deleted": "2022-02-25T19:32:58.201Z"
},
"name": "domain.com",
"description": "Our root domain",
"owner": "bobross@domain.com",
"tags": [
"production",
"staging"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | all domain entries | Domain |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
get organizations domain by id
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/organizations/domains/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/organizations/domains/ \
--header 'accept: application/json'
GET /organizations/domains/{id}
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.203Z",
"updated": "2022-02-25T19:32:58.203Z",
"deleted": "2022-02-25T19:32:58.203Z"
},
"name": "domain.com",
"description": "Our root domain",
"owner": "bobross@domain.com",
"tags": [
"production",
"staging"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Domain |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
modify a domain to an organization
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
payload = "{\"name\":\"alphawave.co\",\"description\":\"Our labs domain\",\"owner\":\"bob@ross.com\",\"tags\":[\"production\",\"staging\"]}"
headers = {
'content-type': "application/json",
'accept': "application/json"
}
conn.request("PATCH", "/organizations/domains/", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request PATCH \
--url https://api.alphawave.co/organizations/domains/ \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{"name":"alphawave.co","description":"Our labs domain","owner":"bob@ross.com","tags":["production","staging"]}'
PATCH /organizations/domains/{id}
Body parameter
{
"name": "alphawave.co",
"description": "Our labs domain",
"owner": "bob@ross.com",
"tags": [
"production",
"staging"
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | DomainRequest | true | a domain object to modify |
» name | body | string | true | none |
» description | body | string | true | none |
» owner | body | string | true | none |
» tags | body | array | true | none |
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.205Z",
"updated": "2022-02-25T19:32:58.205Z",
"deleted": "2022-02-25T19:32:58.205Z"
},
"name": "domain.com",
"description": "Our root domain",
"owner": "bobross@domain.com",
"tags": [
"production",
"staging"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | updated existing network | Domain |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
delete an organizations domain by id
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("DELETE", "/organizations/domains/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request DELETE \
--url https://api.alphawave.co/organizations/domains/ \
--header 'accept: application/json'
DELETE /organizations/domains/{id}
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.207Z",
"updated": "2022-02-25T19:32:58.207Z",
"deleted": "2022-02-25T19:32:58.207Z"
},
"name": "domain.com",
"description": "Our root domain",
"owner": "bobross@domain.com",
"tags": [
"production",
"staging"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Domain |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Pipelines
Search and manage your integration pipelines
Get pipeline by id
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/pipelines/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/pipelines/ \
--header 'accept: application/json'
GET /pipelines/{id}
Get a specific pipeline by id
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.209Z",
"updated": "2022-02-25T19:32:58.209Z"
},
"type": "aws",
"direction": "input",
"accessId": "AKIAIOSFODNN7EXAMPLE",
"secretKeyId": "****************"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» metadata | PipelineMetadata | true | none | none |
»» id | string | true | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | true | none | none |
»» updated | string(date-time) | true | none | none |
» type | string | true | none | none |
» direction | string | true | none | none |
» accessId | string | true | none | none |
» secretKeyId | string | true | none | none |
Delete pipeline by id
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("DELETE", "/pipelines/", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request DELETE \
--url https://api.alphawave.co/pipelines/ \
--header 'accept: application/json'
DELETE /pipelines/{id}
Delete a specific pipeline by id
Example responses
200 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.211Z",
"updated": "2022-02-25T19:32:58.211Z"
},
"type": "aws",
"direction": "input",
"accessId": "AKIAIOSFODNN7EXAMPLE",
"secretKeyId": "****************"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» metadata | PipelineMetadata | true | none | none |
»» id | string | true | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | true | none | none |
»» updated | string(date-time) | true | none | none |
» type | string | true | none | none |
» direction | string | true | none | none |
» accessId | string | true | none | none |
» secretKeyId | string | true | none | none |
Scans
The Scan endpoint allows you to scan new networks and domains in real time. This is particularly useful when deploying new infrastructure and networks. One particularly useful integration is with build pipelines that want to ensure they are not exposing vulnerable systems to the internet when deploying code.
get configured pipelines
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/pipelines", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/pipelines \
--header 'accept: application/json'
GET /pipelines
This endpoint allows you to get your configured pipelines
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.214Z",
"updated": "2022-02-25T19:32:58.214Z"
},
"type": "aws",
"direction": "input",
"accessId": "AKIAIOSFODNN7EXAMPLE",
"secretKeyId": "****************"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» metadata | PipelineMetadata | true | none | none |
»» id | string | true | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | true | none | none |
»» updated | string(date-time) | true | none | none |
» type | string | true | none | none |
» direction | string | true | none | none |
» accessId | string | true | none | none |
» secretKeyId | string | true | none | none |
Configure an AWS input pipeline
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
payload = "{\"accessId\":\"AKIAIOSFODNN7EXAMPLE\",\"secretKeyId\":\"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY\",\"description\":\"aws iam user for listing services\"}"
headers = {
'content-type': "application/json",
'accept': "application/json"
}
conn.request("POST", "/pipelines/input/aws", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request POST \
--url https://api.alphawave.co/pipelines/input/aws \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{"accessId":"AKIAIOSFODNN7EXAMPLE","secretKeyId":"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY","description":"aws iam user for listing services"}'
POST /pipelines/input/aws
Configure an AWS input pipeline with IAM credentials
Body parameter
{
"accessId": "AKIAIOSFODNN7EXAMPLE",
"secretKeyId": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
"description": "aws iam user for listing services"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | PipelineInputAwsRequest | true | A PipelineInputAws request object |
» accessId | body | string | true | none |
» secretKeyId | body | string | true | none |
» description | body | string | true | none |
Example responses
201 Response
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.217Z",
"updated": "2022-02-25T19:32:58.217Z"
},
"type": "aws",
"direction": "input",
"accessId": "AKIAIOSFODNN7EXAMPLE",
"secretKeyId": "****************"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
201 | Created | successful operation | PipelineInputAws |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
RiskyServices
search all risky services
Code samples
import http.client
conn = http.client.HTTPSConnection("api.alphawave.co")
headers = { 'accept': "application/json" }
conn.request("GET", "/exposures/riskyservices", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
curl --request GET \
--url https://api.alphawave.co/exposures/riskyservices \
--header 'accept: application/json'
GET /exposures/riskyservices
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | number | false | limit request results |
start | query | number | false | start results at number |
stop | query | number | false | end results at number |
Example responses
200 Response
[
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Exposure Name",
"description": "Description of this type of exposure",
"reference": "https://docs.alphawave.co/exposure/exposurenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.220Z",
"updated": "2022-02-25T19:32:58.220Z",
"active": true
},
"inventory": {
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.220Z",
"updated": "2022-02-25T19:32:58.220Z",
"active": true
},
"serviceType": {
"id": 2,
"name": "HTTP",
"commonPorts": [
80
],
"description": "HTTP service hosts webpages",
"reference": "https://docs.docs.alphawave.co/inventory/service/network/http"
},
"port": 80
}
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | successful operation | Inline |
400 | Bad Request | bad input parameter | None |
500 | Internal Server Error | internal service error | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [RiskyService] | false | none | none |
» metadata | ExposureMetadata | true | none | none |
»» id | string(uuid) | false | none | none |
»» typeInfo | ExposureTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» orgId | string | true | none | none |
»» created | string(date-time) | false | none | none |
»» updated | string(date-time) | false | none | none |
»» active | boolean | false | none | none |
» inventory | NetworkService | true | none | none |
»» metadata | InventoryMetadata | true | none | none |
»»» id | string(uuid) | true | none | none |
»»» typeInfo | InventoryTypeInfo | true | none | none |
»»»» id | number | false | none | none |
»»»» name | string | false | none | none |
»»»» description | string | false | none | none |
»»»» reference | string | false | none | none |
»»» orgId | string | true | none | none |
»»» created | string(date-time) | false | none | none |
»»» updated | string(date-time) | false | none | none |
»»» active | boolean | false | none | none |
»» serviceType | NetworkServiceTypeInfo | true | none | none |
»»» id | number | false | none | none |
»»» name | string | false | none | none |
»»» commonPorts | [number] | false | none | none |
»»» description | string | false | none | none |
»»» reference | string | false | none | none |
»» port | number | true | none | none |
Schemas
DnsRecord
{
"type": "CNAME",
"value": "www.domain.com"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
type | string | true | none | none |
value | string | true | none | none |
Domain
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.221Z",
"updated": "2022-02-25T19:32:58.221Z",
"deleted": "2022-02-25T19:32:58.221Z"
},
"name": "domain.com",
"description": "Our root domain",
"owner": "bobross@domain.com",
"tags": [
"production",
"staging"
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
metadata | DomainMetadata | true | none | none |
name | string | true | none | none |
description | string | true | none | none |
owner | string | false | none | none |
tags | array | false | none | none |
DomainRequest
{
"name": "alphawave.co",
"description": "Our labs domain",
"owner": "bob@ross.com",
"tags": [
"production",
"staging"
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
name | string | true | none | none |
description | string | true | none | none |
owner | string | true | none | none |
tags | array | true | none | none |
DomainMetadata
{
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.221Z",
"updated": "2022-02-25T19:32:58.221Z",
"deleted": "2022-02-25T19:32:58.221Z"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | string | true | none | none |
orgId | string | true | none | none |
active | boolean | false | none | none |
created | string(date-time) | true | none | none |
updated | string(date-time) | true | none | none |
deleted | string(date-time) | false | none | none |
Software
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.221Z",
"updated": "2022-02-25T19:32:58.221Z",
"active": true
},
"category": "framework",
"license": "oss",
"vendor": "React",
"developer": "React",
"name": "react",
"versions": [
"16.13.1"
],
"lastVersion": "16.13.1",
"website": "https://www.reactjs.org"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
metadata | InventoryMetadata | true | none | none |
category | string | true | none | none |
license | string | true | none | none |
vendor | string | true | none | none |
developer | string | true | none | none |
name | string | true | none | none |
versions | [string] | true | none | none |
lastVersion | string | true | none | none |
website | string | true | none | none |
NetworkRecord
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.222Z",
"updated": "2022-02-25T19:32:58.222Z",
"active": true
},
"parent": "123456789012",
"description": "Cloudflare, Inc",
"asn": 13335,
"address": "8.6.112.22/32",
"lat": "32.7787,",
"long": -96.8217
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
metadata | InventoryMetadata | true | none | none |
parent | string | true | none | none |
description | string | true | none | none |
asn | number | true | none | none |
address | string | true | none | none |
lat | number(float) | true | none | none |
long | number(float) | true | none | none |
Network
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.222Z",
"updated": "2022-02-25T19:32:58.222Z",
"deleted": "2022-02-25T19:32:58.222Z"
},
"address": "1.1.1.0/24",
"description": "Our colo network",
"owner": "bobross@domain.com",
"tags": [
"colo",
"production"
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
metadata | NetworkMetadata | true | none | none |
address | string | true | none | none |
description | string | true | none | none |
owner | string | false | none | none |
tags | array | false | none | none |
NetworkRequest
{
"address": "10.1.1.0/24",
"description": "Our external network",
"owner": "bob@ross.com",
"tags": "production"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
address | string | true | none | none |
description | string | true | none | none |
owner | string | true | none | none |
tags | string | true | none | none |
NetworkMetadata
{
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.222Z",
"updated": "2022-02-25T19:32:58.222Z",
"deleted": "2022-02-25T19:32:58.222Z"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | string | true | none | none |
orgId | string | true | none | none |
active | boolean | false | none | none |
created | string(date-time) | true | none | none |
updated | string(date-time) | true | none | none |
deleted | string(date-time) | false | none | none |
SecurityCertificate
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.222Z",
"updated": "2022-02-25T19:32:58.222Z",
"active": true
},
"serial": "7:0C:71:A0:CC:C2:CB:A4:41:39:E3:18:25:C9:E3:25:05:BC:F9",
"hash": "ikPc65n7WM7U9sU95JXy+pJrOLku5yfugNd1i+E4cB4=",
"validFrom": "2022-02-25T19:32:58.222Z",
"validTo": "2022-02-25T19:32:58.222Z",
"subject": "C=US, O=Company.com, LLC, L=Miami Beach, ST=Florida, CN=*.company.com",
"issuer": "C=US, O=Trustwave Holdings, Inc., L=Chicago, ST=Illinois, CN=Trustwave OV SHA256 Pre-Certificate CA",
"altNames": [
"hyperoffice.company.com"
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
metadata | InventoryMetadata | true | none | none |
serial | string | true | none | none |
hash | string | true | none | none |
validFrom | string(date-time) | true | none | none |
validTo | string(date-time) | true | none | none |
subject | string | true | none | none |
issuer | string | true | none | none |
altNames | [string] | true | none | none |
PipelineInputAws
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.223Z",
"updated": "2022-02-25T19:32:58.223Z"
},
"type": "aws",
"direction": "input",
"accessId": "AKIAIOSFODNN7EXAMPLE",
"secretKeyId": "****************"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
metadata | PipelineMetadata | true | none | none |
type | string | true | none | none |
direction | string | true | none | none |
accessId | string | true | none | none |
secretKeyId | string | true | none | none |
PipelineInputAwsRequest
{
"accessId": "AKIAIOSFODNN7EXAMPLE",
"secretKeyId": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
"description": "aws iam user for listing services"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
accessId | string | true | none | none |
secretKeyId | string | true | none | none |
description | string | true | none | none |
PipelineMetadata
{
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.223Z",
"updated": "2022-02-25T19:32:58.223Z"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | string | true | none | none |
orgId | string | true | none | none |
created | string(date-time) | true | none | none |
updated | string(date-time) | true | none | none |
CloudStorage
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.223Z",
"updated": "2022-02-25T19:32:58.223Z",
"active": true
},
"provider": "Amazon Web Services",
"service": "s3",
"name": "bucket.name.organization",
"isPublic": true,
"created": "2022-02-25T19:32:58.223Z",
"timestamp": "2022-02-25T19:32:58.223Z"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
metadata | InventoryMetadata | true | none | none |
provider | string | true | none | none |
service | string | true | none | none |
name | string | true | none | none |
isPublic | boolean | true | none | none |
created | string(date-time) | true | none | none |
timestamp | string(date-time) | true | none | none |
CloudFunction
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.224Z",
"updated": "2022-02-25T19:32:58.224Z",
"active": true
},
"provider": "Amazon Web Services",
"service": "lambda",
"name": "function-api-develop-server",
"runtime": "nodejs10.x",
"vpcId": "vpc-0536bdc4c19a39acf",
"subnetIds": [
"subnet-0d88afc03d189ed21"
],
"timestamp": "2022-02-25T19:32:58.224Z"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
metadata | InventoryMetadata | true | none | none |
provider | string | true | none | none |
service | string | true | none | none |
name | string | true | none | none |
runtime | string | true | none | none |
vpcId | string | true | none | none |
subnetIds | [string] | false | none | none |
timestamp | string(date-time) | true | none | none |
CloudCompute
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.225Z",
"updated": "2022-02-25T19:32:58.225Z",
"active": true
},
"imageId": "ami-02bfc6c4f07e959b5",
"instanceId": "i-09c778845bbf4cc67",
"instanceType": "t3a.large",
"launchDate": "2022-02-25T19:32:58.225Z",
"privateDns": "ip-10-200-3-45.ec2.internal",
"privateAddress": "10.200.3.45",
"publicDns": "ec2-11-101-81-16.compute-1.amazonaws.com",
"publicAddress": "11.101.81.16",
"subnetId": "subnet-0d88afc03d189ed21",
"vpcId": "vpc-0536bdc4c19a39acf",
"tags": [
"production"
],
"timestamp": "2022-02-25T19:32:58.225Z"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
metadata | InventoryMetadata | true | none | none |
imageId | string | true | none | none |
instanceId | string | true | none | none |
instanceType | string | true | none | none |
launchDate | string(date-time) | true | none | none |
privateDns | string | true | none | none |
privateAddress | string | true | none | none |
publicDns | string | true | none | none |
publicAddress | string | true | none | none |
subnetId | string | true | none | none |
vpcId | string | true | none | none |
tags | [string] | false | none | none |
timestamp | string(date-time) | true | none | none |
NetworkServiceTypeInfo
{
"id": 2,
"name": "HTTP",
"commonPorts": [
80
],
"description": "HTTP service hosts webpages",
"reference": "https://docs.docs.alphawave.co/inventory/service/network/http"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | number | false | none | none |
name | string | false | none | none |
commonPorts | [number] | false | none | none |
description | string | false | none | none |
reference | string | false | none | none |
NetworkService
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.225Z",
"updated": "2022-02-25T19:32:58.225Z",
"active": true
},
"serviceType": {
"id": 2,
"name": "HTTP",
"commonPorts": [
80
],
"description": "HTTP service hosts webpages",
"reference": "https://docs.docs.alphawave.co/inventory/service/network/http"
},
"port": 80
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
metadata | InventoryMetadata | true | none | none |
serviceType | NetworkServiceTypeInfo | true | none | none |
port | number | true | none | none |
Vulnerability
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Exposure Name",
"description": "Description of this type of exposure",
"reference": "https://docs.alphawave.co/exposure/exposurenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.225Z",
"updated": "2022-02-25T19:32:58.225Z",
"active": true
},
"inventory": {
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.225Z",
"updated": "2022-02-25T19:32:58.225Z",
"active": true
},
"category": "framework",
"license": "oss",
"vendor": "React",
"developer": "React",
"name": "react",
"versions": [
"16.13.1"
],
"lastVersion": "16.13.1",
"website": "https://www.reactjs.org"
},
"description": "A cross-site scripting attack occurs when the attacker tricks a legitimate web-based application or site to accept a request as originating from a trusted source.",
"affectedVersions": [
"0.14.1"
],
"references": [
"https://github.com/facebook/react/issues/3473"
],
"cve": "CVE-2020-12345",
"cwe": "CWE-79"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
metadata | ExposureMetadata | true | none | none |
inventory | any | true | none | none |
anyOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» anonymous | Software | false | none | none |
or
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» anonymous | NetworkService | false | none | none |
continued
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
description | string | true | none | none |
affectedVersions | [string] | true | none | none |
references | [string] | false | none | none |
cve | string | false | none | none |
cwe | string | false | none | none |
RiskyService
{
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Exposure Name",
"description": "Description of this type of exposure",
"reference": "https://docs.alphawave.co/exposure/exposurenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.226Z",
"updated": "2022-02-25T19:32:58.226Z",
"active": true
},
"inventory": {
"metadata": {
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.226Z",
"updated": "2022-02-25T19:32:58.226Z",
"active": true
},
"serviceType": {
"id": 2,
"name": "HTTP",
"commonPorts": [
80
],
"description": "HTTP service hosts webpages",
"reference": "https://docs.docs.alphawave.co/inventory/service/network/http"
},
"port": 80
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
metadata | ExposureMetadata | true | none | none |
inventory | NetworkService | true | none | none |
Organization
{
"metadata": {
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.226Z",
"updated": "2022-02-25T19:32:58.226Z",
"deleted": "2022-02-25T19:32:58.226Z"
},
"owner_name": "Bob Ross",
"owner_email": "bobross@domain.com",
"plan": "basic",
"trial": false,
"name": "Bob Ross Paintings",
"homepage": "domain.com",
"description": "This company sells bob ross paintings",
"city": "Austin",
"region": "Texas",
"country": "United States",
"domains": [
"600d1675-e5cf-41cc-ac42-0e326b8bd175"
],
"networks": [
"600d1675-e5cf-41cc-ac42-0e326b8bd175"
],
"asns": [
1234
],
"prefixes": [
"1.1.1.1/32"
],
"users": [
"Bob Ross"
],
"emails": [
"bobross@domain.com"
],
"collection_time": "2022-02-25T19:32:58.226Z",
"collection_success": true
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
metadata | OrganizationMetadata | true | none | none |
owner_name | string | false | none | none |
owner_email | string | false | none | none |
plan | string | false | none | none |
trial | boolean | false | none | none |
name | string | false | none | none |
homepage | string | false | none | none |
description | string | false | none | none |
city | string | false | none | none |
region | string | false | none | none |
country | string | false | none | none |
domains | [string] | false | none | none |
networks | [string] | false | none | none |
asns | [integer] | false | none | none |
prefixes | [string] | false | none | none |
users | [string] | false | none | none |
emails | [string] | false | none | none |
collection_time | string(date-time) | false | none | none |
collection_success | boolean | false | none | none |
OrganizationMetadata
{
"orgId": "123456789012",
"active": true,
"created": "2022-02-25T19:32:58.227Z",
"updated": "2022-02-25T19:32:58.227Z",
"deleted": "2022-02-25T19:32:58.227Z"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
orgId | string | true | none | none |
active | boolean | true | none | none |
created | string(date-time) | true | none | none |
updated | string(date-time) | true | none | none |
deleted | string(date-time) | false | none | none |
Scan
{
"id": 123456789012,
"status": "starting",
"error": "ok",
"source": "network",
"data": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | string | true | none | none |
status | string | true | none | none |
error | string | true | none | none |
source | string | true | none | none |
data | string | true | none | none |
Enumerated Values
Property | Value |
---|---|
status | starting |
status | started |
status | finishing |
status | finished |
error | ok |
error | failed |
source | network |
source | domain |
ScanRequest
{
"type": "network",
"data": "127.0.0.1/24 or alphawave.co",
"description": "scan our cloud network"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
type | string | true | none | none |
data | string | true | none | none |
description | string | false | none | none |
Enumerated Values
Property | Value |
---|---|
type | network |
type | domain |
InventoryTypeInfo
{
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | number | false | none | none |
name | string | false | none | none |
description | string | false | none | none |
reference | string | false | none | none |
InventoryMetadata
{
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Type Name",
"description": "Description of this type of inventory",
"reference": "https://docs.alphawave.co/inventory/typenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.227Z",
"updated": "2022-02-25T19:32:58.227Z",
"active": true
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | string(uuid) | true | none | none |
typeInfo | InventoryTypeInfo | true | none | none |
orgId | string | true | none | none |
created | string(date-time) | false | none | none |
updated | string(date-time) | false | none | none |
active | boolean | false | none | none |
ExposureTypeInfo
{
"id": 123,
"name": "Readable Exposure Name",
"description": "Description of this type of exposure",
"reference": "https://docs.alphawave.co/exposure/exposurenamehelpdocs"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | number | false | none | none |
name | string | false | none | none |
description | string | false | none | none |
reference | string | false | none | none |
ExposureMetadata
{
"id": "600d1675-e5cf-41cc-ac42-0e326b8bd175",
"typeInfo": {
"id": 123,
"name": "Readable Exposure Name",
"description": "Description of this type of exposure",
"reference": "https://docs.alphawave.co/exposure/exposurenamehelpdocs"
},
"orgId": "123456789012",
"created": "2022-02-25T19:32:58.228Z",
"updated": "2022-02-25T19:32:58.228Z",
"active": true
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | string(uuid) | false | none | none |
typeInfo | ExposureTypeInfo | true | none | none |
orgId | string | true | none | none |
created | string(date-time) | false | none | none |
updated | string(date-time) | false | none | none |
active | boolean | false | none | none |