来源
更新
源表示来自服务的数据源。例如,iCloud帐户是iCloud服务的来源。
源可以具有子源,例如rirelay.instance
源具有多个rirelay.source
源,这些源可以单独定位。
属性
名称 | 类型 | 描述 |
---|---|---|
id | 来源ID | 资源标识符。 |
resource | 字符串,总是source | 资源类型说明符。 |
user | 用户身份 | 与此源关联的用户。 |
type | 串 | 此源的类型,例如icloud.account 。 |
identifier | 串 | 源在其服务范围内的唯一标识符。 |
parent | 可选的源ID | 如果源是另一个的孩子,则填充。 |
children | 列出包含源资源的对象 | 包含源的任何子源。 |
state | 串 | 其中之一: unvalidated ,已active , deactivated ,已blocked ,已locked 。 |
date_created | 约会时间 | 资源创建时。 |
种类
当前支持的类型包括:
-
icloud.account
,iCloud服务的主要来源。 -
rirelay.instance
,是rirelay服务的主要来源。对应于Reincubate Relay应用程序的实例。 -
rirelay.source
,一个孩子源rirelay.instance
。对应于父级Reincubate Relay应用程序有权访问的设备。
识别码
源的identifier
属性的值在其服务中唯一地对其进行标识。对于iCloud帐户,这将是用户名。对于Reincubate Relay应用程序实例,它将是实例ID。
父母
如果源是子源,则此字段将指向其父源对象。此层次结构中的顶级源称为主要源。
子源不能直接通过API创建,而是在创建适当的轮询后由API自动创建。
状态
unvalidated
- 从未针对此源成功创建会话,因此API无法判断它是否是有效源。
active
- 源已经过验证并可以使用。
deactivated
- 拥有组织禁止访问来源。
blocked
- API管理员禁止访问源。
locked
- 外部服务暂时限制对源的访问。
检索GET /sources/{source ID}
使用cURL
curl https://ricloud-api.reincubate.com/sources/<source ID> \ -H 'Authorization: Token <your key_token>'
使用ricloud-py
import ricloud source = ricloud.Source.create(<source ID>)
样品回复
{ "id": 1, "resource": "source", "user": 1, "type": "mocks.mock", "identifier": "john.appleseed@reincubate.com", "info": null, "parent": null, "children": { "data": [], "has_more": false, "total_count": 0, "url": "/sources/1/children" }, "state": "active", "date_created": "2020-02-20T11:59:03.195527Z" }
列出GET /sources
名称 | 类型 | 描述 |
---|---|---|
organisation | 超级,组织ID | 使API管理员按组织过滤。 |
user | 用户身份 | 按关联用户过滤。 |
type | 串 | 按源类型过滤。 |
identifier | 串 | 按源标识符过滤。 |
state | 串 | 按源状态过滤。 |
date_created | 日期时间过滤器 | 按资源创建日期过滤。 |
使用cURL
curl https://ricloud-api.reincubate.com/sources \ -H 'Authorization: Token <your key_token>'
使用ricloud-py
import ricloud sources = ricloud.Source.list()
更新POST /sources/{source ID}
名称 | 类型 | 描述 |
---|---|---|
state | 串 | 更新源状态。 |
使用cURL
curl https://ricloud-api.reincubate.com/sources/<source ID> \ -X POST \ -H 'Authorization: Token <your key_token>' \ -H 'Content-Type: application/json' \ -d '{ "state": "deactivated" }'
使用ricloud-py
import ricloud source = ricloud.Source.update_with_id(<source ID>, state='deactivated') # OR source = ricloud.Source.retrieve(<source ID>) source.update(state='deactivated')
变更日志
2020-02-20
- 重大现在,源对象的
children
属性是嵌套列表对象,而不是简单的列表属性。
2019-10-16
- 添加两个新的源类型:
rirelay.instance
和rirelay.source
。