SIE批量REST API参考
习俗
来自SIE Batch API的每个响应都将包含两个状态指示键。第一个是 _状态
该字符串将包含以下任一内容 好的 或 没有 表明API是否成功。第二个字段是 _留言
其中将简要描述出了什么问题。如果 _状态
那好吧 _留言
将存在但为空。
如果 _状态
是 没有 然后,将出现提供异常详细信息的其他字段,符合 RFC 7807 .
在适当的情况下,为每个API提供了异常响应示例。
身份验证
验证–验证API密钥
验证给定的API密钥,返回与其关联的配置文件信息。
职位
https://batch.sie-remote.net/siebatchd/v1/validate
许可:公开
例子 cURL
APIKEY=xxxxxx-xxxx-xxxxxxx curl-d'{“APIKEY”:“$APIKEY”}https://batch.sie-remote.net/siebatchd/v1/validate
JS XMLHttpRequest示例
const apikey='xxxxxx-xxxx-xxxxxxxx';let xhr=new XMLHttpRequest';xhr.openhttps://batch.sie-remote.net/siebatchd/v1/validate“);xhr.send(JSON.stringify({apikey:apikey}));xhr.conload=字母(数字){do_something();};xhr.onprogress=字母(数量);
JS React、Axios示例
const apikey=“xxxxxxx-xxxx-xxx-xxxxx-xxxxxxx-xxx”axios(网址:https://batch.sie-remote.net/siebatchd/v1/validate“,方法:”POST“,数据:{apikey:apikey,},})然后(response=>{if(response.status===200){do_something();}else{do_somening_else();}},error=>{do_ssomething_error();)
示例对象
{“apikey”:“xxxx-xxx-xxxx-xxxxxxxxxxx”}
参数
现场 | 类型 | 说明 |
---|---|---|
轮廓 | 词典 | 包含用户配置文件信息(配置)的词典。以下按键只是可用按键中的一部分。 |
用户名 | 字符串 | 与您的API密钥关联的用户名。 |
垃圾桶 | 词典 | 您可以访问的SIE批处理通道。 |
_状态 | 字符串 | 好的 |
_留言 | 字符串 | 帐户状态消息(“[空],如果没有消息)。 |
成功响应
HTTP/1.1 200 OK{“profile”:{“username”:“siebatch customer”,“siebatch”:{ch212:{“description”:“Newly Observed Domains”},“ch213”:{”description“:”Newly Observated Fully Qualified Domain Names“},}},“_status”:”OK“,”_message“:”}
错误4xx 5xx
现场 | 类型 | 说明 |
---|---|---|
apikey | 字符串 | 您的Farsight SIE批量API密钥 |
频道 | 列表 | 一个或多个通道号(整数)的列表(数组)。有效通道为1-255。 |
缺少API密钥
HTTP/1.1 403{“_message”:“API密钥不存在”,“_status”:“NOK”,“logid”:“30fd25e0-0113-4ab1-a375-fabf1d57430e”,“status”:403,“type”:“missing-API-key”}
批处理通道访问
siebatch chdetails–获取频道详细信息
请求频道的详细信息,如可能的日期时间范围、下载文件类型和
可用数据的大小。
这些详细信息将随着服务器上每分钟的数据存储和修剪而更新;通道数据始终处于运动状态,因此细节表示可供下载的数据的移动窗口。这意味着大小和最早/最晚时间将频繁变化。由于频道不断记录新数据,如果您反复请求频道的最新“最早”和“最新”详细信息,则不可能始终保持最新;这只是档案参考。
职位
https://batch.sie-remote.net/siebatchd/v1/siebatch/chdetails
权限:用户
cURL示例
APIKEY=xxxxxx-xxxx-xxxxxxx curl-d'{“APIKEY”:“$APIKEY”,“渠道”:[212213]}\-X POSThttps://batch.sie-remote.net/siebatchd/v1/siebatch/chdetails
JS XMLHttpRequest示例
const apikey='xxxxxx-xxxx-xxxxxxxx';let xhr=new XMLHttpRequest';xhr.openhttps://batch.sie-remote.net/siebatchd/v1/siebatch/chdetails“);xhr.onload=王数(do_something());xhr.onprogress=王数,case{do_something_else();xhr.cohr.onerror=王数;
React、Axios示例
const apikey=“xxxxxxx-xxxx-xxx-xxxxx-xxxxxxx-xxx”axios(网址:https://batch.sie-remote.net/siebatchd/v1/siebatch/chdetails“,方法:”POST“,数据:{apikey:apikey,通道:[212213]},})然后(response=>{if(response.status===200){do_something();}else{do_somening_else();}},error=>{do_some();)
示例对象
{“pikey”ɹ“xxxx-xxxx-xxxxxxx”ᣁ“[UNK]”ᣂ[212213]}
参数
现场 | 类型 | 说明 |
---|---|---|
apikey | 字符串 | 您的Farsight SIE批量API密钥 |
频道 | 列表 | 一个或多个通道号(整数)的列表(数组)。有效通道为1-255。 |
成功200
现场 | 类型 | 说明 |
---|---|---|
_状态 | 字符串 | 没有 |
_留言 | 字符串 | 对问题所在的简短描述。 |
地位 | 整数 | HTTP状态码 |
类型 | 字符串 | 错误的连字符助记符。这可用于键入本地i18n翻译。 |
细节 | 字符串 | 可选字符串,包含有关特定错误的更多详细信息。 |
成功响应示例
HTTP/1.1 200 OK{频道:{“ch212”:{“最早”:“2020-01-28 00:40:00”,“最新”:“2020-01-28 20:06:00”,“大小”:83837922,“mimety”:“application/x-ndjson”},“ch213”:{
错误4xx 5xx
姓名 | 类型 | 说明 |
---|---|---|
_状态 | 字符串 | 没有 |
_留言 | 字符串 | 对问题所在的简短描述。 |
地位 | 整数 | HTTP状态码 |
类型 | 字符串 | 错误的连字符助记符。这可用于键入本地i18n翻译。 |
细节 | 字符串 | 可选字符串,包含有关特定错误的更多详细信息。 |
会话失败
HTTP/1.1 403{“_message”:“<消息将包含详细信息>”,“_status”:“NOK”,“logid”:“30fd25e0-0130-4ab1-375-fabf1d57430e”,“status”:403,“type”:“会话失败”}
无效参数
HTTP/1.1 403{“_message”:“<消息将是缺少参数的特定wrt>”,“_status”:“NOK”,“logid”:“30fd25e0-0130-4ab1-375-fabf1d57430e”,“status”:403,“type”:“无效参数”,“invalid_parameters”:{“name”:“foobar”,“reason”:“应该是整数,但收到了字符串”}
缺少API密钥
HTTP/1.1 403{“_message”:“API密钥不存在”,“_status”:“NOK”,“logid”:“30fd25e0-0113-4ab1-a375-fabf1d57430e”,“status”:403,“type”:“missing-API-key”}
siebatch chfetch–获取通道数据
下载与给定频道相关的数据。
正如chdetails中提到的,最早的可用数据会经常被修剪,所以如果你请求的话,你不能保证检索到这些数据。
忽略开始/结束时间的秒部分,但为了API的一致性,需要给定秒。这意味着,如果你问“12:10:30”到“12:45:30”,你会得到“12:10:00”到“12:35:00”。
如果没有可用数据,则返回HTTP 404,否则返回200,设置适当的HTTP标头,然后开始下载。
职位
https://batch.sie-remote.net/siebatchd/v1/siebatch/chfetch
权限:用户
cURL示例
APIKEY=xxxxxxxxx-xxxx-xxxxx-xxxxxxx-xxxxxx curl-d'{“APIKEY”:“$APIKEY”,“频道”:213,“开始时间”:“2020-01-28 12:00:00”,“结束时间”:https://batch.sie-remote.net/siebatchd/v1/siebatch/chfetch
JS XMLHttpRequest示例
const apikey=“xxxxxxx-xxxx-xxx-xxxxx-xxxxxxx-xxx”let xhr=新的XMLHttpRequest()xhr.open(“POST”)https://batch.sie-remote.net/siebatchd/v1/siebatch/chfetch);xhr.send(JSON.stringify({apikey:apikey,通道:213,开始时间:“2020-01-28 12:00:00”,结束时间:“2019-01-29 12:01:00”})
JS React、Axios示例
const apikey=“xxxxxxx-xxxx-xxx-xxxxx-xxxxxxx-xxx”axios(网址:https://batch.sie-remote.net/siebatchd/v1/siebatch/chfetch方法:“POST”,数据:{apikey:apikey,通道:213,开始时间:“2020-01-28 12:00:00”,结束时间:“2019-01-29 12:01:00”,},})。_ssomeing_error()
示例对象
{“快捷键”:“xxxx-xxxx-xxxxxx-xxxxxxxxxxx”,“频道”:213,“开始时间”:“2020-01-28 12:00:00”,“结束时间”:
参数
现场 | 类型 | 说明 |
---|---|---|
_状态 | 字符串 | 没有 |
_留言 | 字符串 | 对问题所在的简短描述。 |
地位 | 整数 | HTTP状态码 |
类型 | 字符串 | 错误的连字符助记符。这可用于键入本地i18n翻译。 |
细节 | 字符串 | 可选字符串,包含有关特定错误的更多详细信息。 |
错误4xx 5xx
姓名 | 类型 | 说明 |
---|---|---|
_状态 | 字符串 | 没有 |
_留言 | 字符串 | 对问题所在的简短描述。 |
地位 | 整数 | HTTP状态码 |
类型 | 字符串 | 错误的连字符助记符。这可用于键入本地i18n翻译。 |
细节 | 字符串 | 可选字符串,包含有关特定错误的更多详细信息。 |
会话失败
HTTP/1.1 403{“_message”:“<消息将包含详细信息>”,“_status”:“NOK”,“logid”:“30fd25e0-0130-4ab1-375-fabf1d57430e”,“status”:403,“type”:“会话失败”}
无效参数
HTTP/1.1 403{“_message”:“<消息将是缺少参数的特定wrt>”,“_status”:“NOK”,“logid”:“30fd25e0-0130-4ab1-375-fabf1d57430e”,“status”:403,“type”:“无效参数”,“invalid_parameters”:{“name”:“foobar”,“reason”:“应该是整数,但收到了字符串”}
缺少API密钥
HTTP/1.1 403{“_message”:“API密钥不存在”,“_status”:“NOK”,“logid”:“30fd25e0-0113-4ab1-a375-fabf1d57430e”,“status”:403,“type”:“missing-API-key”}
siebatch makeurl–生成URL
生成一个URL,该URL可用于稍后下载与频道相关的数据,或依赖于SIE Batch Web服务器。
正如chdetails中提到的,最早的可用数据经常被修剪,所以如果要修剪,你不能保证能检索到它。
忽略开始/结束时间的秒部分,但为了API的一致性,需要给定秒。这意味着,如果你问“12:10:30”到“12:45:30”,你会得到“12:10:00”到“12:35:00”。
使用makeurl而不是chfetch是有利的,因为生成的URL可以更容易地在不同的计算机和其他用户上共享和访问,独立于最初请求生成它的用户,并且不会泄露凭据。生成的URL是共享频道数据片段的首选方法。
expire关键字允许您指定URL的有效期。最长为168小时(1周),最短为1小时。如果你指定了一个没有意义的过期时间,那么将返回404。例如,如果一个频道收集了最后12小时的数据,而您请求的URL过期13小时,那么在URL有效的最后一小时内将没有数据可用。根据经验,最大请求过期时间不应超过chXXX[“latest”]–chXXX[”earlier“],其中chXXX是您生成URL的通道。
职位
https://batch.sie-remote.net/siebatchd/v1/siebatch/makeurl
权限:用户
cURL示例
APIKEY=xxxxxxxxx-xxxx-xxxxx-xxxxxxx-xxxxxx curl-d'{“APIKEY”:“$APIKEY”,“频道”:213,“开始时间”:“2020-01-28 12:00:00”,“结束时间”:https://batch.sie-remote.net/siebatchd/v1/siebatch/makeurl
JS XMLHttpRequest示例
const apikey='xxxxxx-xxxx-xxxxxxxx';let xhr=new XMLHttpRequest';xhr.openhttps://batch.sie-remote.net/siebatchd/v1/siebatch/makeurl“);xhr.send(JSON.stringify({apikey:apikey,通路径:213,开始时间):”2020-01-28 12:00:00“,结束时间):“2019-01-29 12:01:00”});xhr.conload=函数(](do_something());};xhr.onprogress=函数(event){do_something_else());
JS React、Axios示例
const apikey=“xxxxxxx-xxxx-xxx-xxxxx-xxxxxxx-xxx”axios(网址:https://batch.sie-remote.net/siebatchd/v1/siebatch/makeurl”,方法:“POST”,数据:{apikey:apikey,通道:213,开始时间:“2020-01-28 12:00:00”,结束时间:“2020-01-28 12:01:00”})然后(response=>{if(response.status===200){do_somening();}else{do_somining_else();}},error=>{do_ssomening_error();)
示例对象
{“快捷键”:“xxxx-xxxx-xxxxxx-xxxxxxxxxxx”,“频道”:213,“开始时间”:“2020-01-28 12:00:00”,“结束时间”:
参数
现场 | 类型 | 说明 |
---|---|---|
_状态 | 字符串 | 好的 |
_留言 | 字符串 | “”(如果没有消息,则为空) |
url | 字符串 | 指定SIE数据的预签名可共享URL |
成功200
现场 | 类型 | 说明 |
---|---|---|
_状态 | 字符串 | 好的 |
_留言 | 字符串 | “”(如果没有消息,则为空) |
url | 字符串 | 指定SIE数据的预签名可共享URL |
成功响应
HTTP/1.1 200 OK{“_status”:“OK”,“_message”:“”,“url”:“https://batch-dl.sie-remote.net/range/ch213/20200128.1200.20200128.1201?X-Amz算法=AWS4-HMAC-SHA256和X-Amz证书=。。。"}
错误4xx 5xx
姓名 | 类型 | 说明 |
---|---|---|
_状态 | 字符串 | 没有 |
_留言 | 字符串 | 对问题所在的简短描述。 |
地位 | 整数 | HTTP状态码 |
类型 | 字符串 | 错误的连字符助记符。这可用于键入本地i18n翻译。 |
细节 | 字符串 | 可选字符串,包含有关特定错误的更多详细信息。 |
会话失败
HTTP/1.1 403{“_message”:“<消息将包含详细信息>”,“_status”:“NOK”,“logid”:“30fd25e0-0130-4ab1-375-fabf1d57430e”,“status”:403,“type”:“会话失败”}
无效参数
HTTP/1.1 403{“_message”:“<消息将是缺少参数的特定wrt>”,“_status”:“NOK”,“logid”:“30fd25e0-0130-4ab1-375-fabf1d57430e”,“status”:403,“type”:“无效参数”,“invalid_parameters”:{“name”:“foobar”,“reason”:“应该是整数,但收到了字符串”}
缺少API密钥
HTTP/1.1 403{“_message”:“API密钥不存在”,“_status”:“NOK”,“logid”:“30fd25e0-0113-4ab1-a375-fabf1d57430e”,“status”:403,“type”:“missing-API-key”}