Skip to content

Commit f1b7ba2

Browse files
authored
Initial public commit for enrichment APIs (Azure#13479)
* Initial public commit for enrichment APIs * Prettier * Add two new fields * Prettier * Remove two fields, fix several descriptions * Remove unneeded format line * Remove incorrect references to operational insights and workspacename Co-authored-by: Tim Paterson <=>
1 parent a9bba35 commit f1b7ba2

File tree

4 files changed

+453
-0
lines changed

4 files changed

+453
-0
lines changed

custom-words.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -718,6 +718,8 @@ generatevpnprofile
718718
geobias
719719
geocode
720720
geocodes
721+
geodata
722+
Geodata
721723
Geofence
722724
geofences
723725
Geofencing

specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json

Lines changed: 333 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1849,6 +1849,90 @@
18491849
}
18501850
}
18511851
},
1852+
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SecurityInsights/enrichment/ip/geodata/": {
1853+
"get": {
1854+
"x-ms-examples": {
1855+
"Get geodata for a single IP address": {
1856+
"$ref": "./examples/enrichment/GetGeodataByIp.json"
1857+
}
1858+
},
1859+
"tags": [
1860+
"Enrichment"
1861+
],
1862+
"description": "Get geodata for a single IP address",
1863+
"operationId": "IPGeodata_Get",
1864+
"parameters": [
1865+
{
1866+
"$ref": "#/parameters/ApiVersion"
1867+
},
1868+
{
1869+
"$ref": "#/parameters/SubscriptionId"
1870+
},
1871+
{
1872+
"$ref": "#/parameters/ResourceGroupName"
1873+
},
1874+
{
1875+
"$ref": "#/parameters/EnrichmentIpAddress"
1876+
}
1877+
],
1878+
"responses": {
1879+
"200": {
1880+
"description": "OK",
1881+
"schema": {
1882+
"$ref": "#/definitions/EnrichmentIpGeodata"
1883+
}
1884+
},
1885+
"default": {
1886+
"description": "Error response describing why the operation failed to enrich this ip.",
1887+
"schema": {
1888+
"$ref": "#/definitions/CloudError"
1889+
}
1890+
}
1891+
}
1892+
}
1893+
},
1894+
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SecurityInsights/enrichment/domain/whois/": {
1895+
"get": {
1896+
"x-ms-examples": {
1897+
"Get whois information for a single domain name": {
1898+
"$ref": "./examples/enrichment/GetWhoisByDomainName.json"
1899+
}
1900+
},
1901+
"tags": [
1902+
"Enrichment"
1903+
],
1904+
"description": "Get whois information for a single domain name",
1905+
"operationId": "DomainWhois_Get",
1906+
"parameters": [
1907+
{
1908+
"$ref": "#/parameters/ApiVersion"
1909+
},
1910+
{
1911+
"$ref": "#/parameters/SubscriptionId"
1912+
},
1913+
{
1914+
"$ref": "#/parameters/ResourceGroupName"
1915+
},
1916+
{
1917+
"$ref": "#/parameters/EnrichmentDomain"
1918+
}
1919+
],
1920+
"responses": {
1921+
"200": {
1922+
"description": "OK",
1923+
"schema": {
1924+
"$ref": "#/definitions/EnrichmentDomainWhois"
1925+
}
1926+
},
1927+
"default": {
1928+
"description": "Error response describing why the operation failed to enrich this domain.",
1929+
"schema": {
1930+
"$ref": "#/definitions/CloudError"
1931+
}
1932+
}
1933+
}
1934+
}
1935+
},
18521936
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectors": {
18531937
"get": {
18541938
"x-ms-examples": {
@@ -7708,6 +7792,239 @@
77087792
"description": "Dynamics365 requirements check properties.",
77097793
"type": "object"
77107794
},
7795+
"EnrichmentDomainWhois": {
7796+
"description": "Whois information for a given domain and associated metadata",
7797+
"properties": {
7798+
"domain": {
7799+
"description": "The domain for this whois record",
7800+
"type": "string"
7801+
},
7802+
"server": {
7803+
"description": "The hostname of this registrar's whois server",
7804+
"type": "string"
7805+
},
7806+
"created": {
7807+
"description": "The timestamp at which this record was created",
7808+
"format": "date-time",
7809+
"type": "string"
7810+
},
7811+
"updated": {
7812+
"description": "The timestamp at which this record was last updated",
7813+
"format": "date-time",
7814+
"type": "string"
7815+
},
7816+
"expires": {
7817+
"description": "The timestamp at which this record will expire",
7818+
"format": "date-time",
7819+
"type": "string"
7820+
},
7821+
"parsedWhois": {
7822+
"description": "The whois record for a given domain",
7823+
"$ref": "#/definitions/EnrichmentDomainWhoisDetails"
7824+
}
7825+
}
7826+
},
7827+
"EnrichmentDomainWhoisDetails": {
7828+
"description": "The whois record for a given domain",
7829+
"properties": {
7830+
"registrar": {
7831+
"description": "The registrar associated with this domain",
7832+
"$ref": "#/definitions/EnrichmentDomainWhoisRegistrarDetails"
7833+
},
7834+
"contacts": {
7835+
"description": "The set of contacts associated with this domain",
7836+
"$ref": "#/definitions/EnrichmentDomainWhoisContacts"
7837+
},
7838+
"nameServers": {
7839+
"description": "A list of name servers associated with this domain",
7840+
"type": "array",
7841+
"items": {
7842+
"type": "string"
7843+
}
7844+
},
7845+
"statuses": {
7846+
"description": "The set of status flags for this whois record",
7847+
"type": "array",
7848+
"items": {
7849+
"type": "string"
7850+
}
7851+
}
7852+
}
7853+
},
7854+
"EnrichmentDomainWhoisRegistrarDetails": {
7855+
"description": "The registrar associated with this domain",
7856+
"properties": {
7857+
"name": {
7858+
"description": "The name of this registrar",
7859+
"type": "string"
7860+
},
7861+
"abuseContactEmail": {
7862+
"description": "This registrar's abuse contact email",
7863+
"type": "string"
7864+
},
7865+
"abuseContactPhone": {
7866+
"description": "This registrar's abuse contact phone number",
7867+
"type": "string"
7868+
},
7869+
"ianaId": {
7870+
"description": "This registrar's Internet Assigned Numbers Authority id",
7871+
"type": "string"
7872+
},
7873+
"url": {
7874+
"description": "This registrar's URL",
7875+
"type": "string"
7876+
},
7877+
"whoisServer": {
7878+
"description": "The hostname of this registrar's whois server",
7879+
"type": "string"
7880+
}
7881+
}
7882+
},
7883+
"EnrichmentDomainWhoisContacts": {
7884+
"description": "The set of contacts associated with this domain",
7885+
"properties": {
7886+
"admin": {
7887+
"description": "The admin contact for this whois record",
7888+
"$ref": "#/definitions/EnrichmentDomainWhoisContact"
7889+
},
7890+
"billing": {
7891+
"description": "The billing contact for this whois record",
7892+
"$ref": "#/definitions/EnrichmentDomainWhoisContact"
7893+
},
7894+
"registrant": {
7895+
"description": "The registrant contact for this whois record",
7896+
"$ref": "#/definitions/EnrichmentDomainWhoisContact"
7897+
},
7898+
"tech": {
7899+
"description": "The technical contact for this whois record",
7900+
"$ref": "#/definitions/EnrichmentDomainWhoisContact"
7901+
}
7902+
}
7903+
},
7904+
"EnrichmentDomainWhoisContact": {
7905+
"description": "An individual contact associated with this domain",
7906+
"properties": {
7907+
"name": {
7908+
"description": "The name of this contact",
7909+
"type": "string"
7910+
},
7911+
"org": {
7912+
"description": "The organization for this contact",
7913+
"type": "string"
7914+
},
7915+
"street": {
7916+
"description": "A list describing the street address for this contact",
7917+
"type": "array",
7918+
"items": {
7919+
"type": "string"
7920+
}
7921+
},
7922+
"city": {
7923+
"description": "The city for this contact",
7924+
"type": "string"
7925+
},
7926+
"state": {
7927+
"description": "The state for this contact",
7928+
"type": "string"
7929+
},
7930+
"postal": {
7931+
"description": "The postal code for this contact",
7932+
"type": "string"
7933+
},
7934+
"country": {
7935+
"description": "The country for this contact",
7936+
"type": "string"
7937+
},
7938+
"phone": {
7939+
"description": "The phone number for this contact",
7940+
"type": "string"
7941+
},
7942+
"fax": {
7943+
"description": "The fax number for this contact",
7944+
"type": "string"
7945+
},
7946+
"email": {
7947+
"description": "The email address for this contact",
7948+
"type": "string"
7949+
}
7950+
}
7951+
},
7952+
"EnrichmentIpGeodata": {
7953+
"description": "Geodata information for a given IP address",
7954+
"properties": {
7955+
"asn": {
7956+
"description": "The autonomous system number associated with this IP address",
7957+
"type": "string"
7958+
},
7959+
"carrier": {
7960+
"description": "The name of the carrier for this IP address",
7961+
"type": "string"
7962+
},
7963+
"city": {
7964+
"description": "The city this IP address is located in",
7965+
"type": "string"
7966+
},
7967+
"cityCf": {
7968+
"description": "A numeric rating of confidence that the value in the 'city' field is correct, on a scale of 0-100",
7969+
"type": "integer",
7970+
"format": "int32"
7971+
},
7972+
"continent": {
7973+
"description": "The continent this IP address is located on",
7974+
"type": "string"
7975+
},
7976+
"country": {
7977+
"description": "The county this IP address is located in",
7978+
"type": "string"
7979+
},
7980+
"countryCf": {
7981+
"description": "A numeric rating of confidence that the value in the 'country' field is correct on a scale of 0-100",
7982+
"type": "integer",
7983+
"format": "int32"
7984+
},
7985+
"ipAddr": {
7986+
"description": "The dotted-decimal or colon-separated string representation of the IP address",
7987+
"type": "string"
7988+
},
7989+
"ipRoutingType": {
7990+
"description": "A description of the connection type of this IP address",
7991+
"type": "string"
7992+
},
7993+
"latitude": {
7994+
"description": "The latitude of this IP address",
7995+
"type": "string"
7996+
},
7997+
"longitude": {
7998+
"description": "The longitude of this IP address",
7999+
"type": "string"
8000+
},
8001+
"organization": {
8002+
"description": "The name of the organization for this IP address",
8003+
"type": "string"
8004+
},
8005+
"organizationType": {
8006+
"description": "The type of the organization for this IP address",
8007+
"type": "string"
8008+
},
8009+
"region": {
8010+
"description": "The geographic region this IP address is located in",
8011+
"type": "string"
8012+
},
8013+
"state": {
8014+
"description": "The state this IP address is located in",
8015+
"type": "string"
8016+
},
8017+
"stateCf": {
8018+
"description": "A numeric rating of confidence that the value in the 'state' field is correct on a scale of 0-100",
8019+
"type": "integer",
8020+
"format": "int32"
8021+
},
8022+
"stateCode": {
8023+
"description": "The abbreviated name for the state this IP address is located in",
8024+
"type": "string"
8025+
}
8026+
}
8027+
},
77118028
"Entity": {
77128029
"allOf": [
77138030
{
@@ -13910,6 +14227,22 @@
1391014227
},
1391114228
"x-ms-parameter-location": "method"
1391214229
},
14230+
"EnrichmentDomain": {
14231+
"description": "Domain name to be enriched",
14232+
"in": "query",
14233+
"name": "domain",
14234+
"required": true,
14235+
"type": "string",
14236+
"x-ms-parameter-location": "method"
14237+
},
14238+
"EnrichmentIpAddress": {
14239+
"description": "IP address (v4 or v6) to be enriched",
14240+
"in": "query",
14241+
"name": "ipAddress",
14242+
"required": true,
14243+
"type": "string",
14244+
"x-ms-parameter-location": "method"
14245+
},
1391314246
"EntityExpandRequestBody": {
1391414247
"description": "The parameters required to execute an expand operation on the given entity.",
1391514248
"in": "body",
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
{
2+
"parameters": {
3+
"api-version": "2019-01-01-preview",
4+
"subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
5+
"resourceGroupName": "myRg",
6+
"ipAddress": "1.2.3.4"
7+
},
8+
"responses": {
9+
"200": {
10+
"body": {
11+
"asn": "12345",
12+
"carrier": "Microsoft",
13+
"city": "Redmond",
14+
"cityCf": 90,
15+
"continent": "north america",
16+
"country": "united states",
17+
"countryCf": 99,
18+
"ipAddr": "1.2.3.4",
19+
"ipRoutingType": "fixed",
20+
"latitude": "40.2436",
21+
"longitude": "-100.8891",
22+
"organization": "Microsoft",
23+
"organizationType": "tech",
24+
"region": "western usa",
25+
"state": "washington",
26+
"stateCf": null,
27+
"stateCode": "wa"
28+
}
29+
}
30+
}
31+
}

0 commit comments

Comments
 (0)