原文链接:https://docs.simpleid.xyz/http-api
SimpleID以REST API的形式提供了一个开箱即用的跨平台解决方案。
POST Create Account
这个端点将启动用户帐户创建过程。响应将用于调用登录端点来将用户登录到您的应用程序中。
- Request
Headers
Authentication: REQUIRED | string | SimpleID的API Key
数据参数形式
devId : REQUIRED | string | 在SimpleID开发人员帐户页面中显示的devId。
storageProviders: OPTIONAL | string | 您希望允许用户使用的存储提供程序的字符串化数组。这应该匹配SimpleID dev帐户中选择的模块。
authProviders : REQUIRED | string | 您希望允许用户使用的身份验证提供者的字符串化数组。这应该与您在SimpleID dev帐户中选择的模块相匹配。
username : REQUIRED | string | 用户选择的用户名
email : REQUIRED | string | 用户的电子邮件地址
password : REQUIRED | string | 用户选择的密码(密码的验证和强度必须由开发人员处理)
- Response
200: OK
如果帐户创建成功,将返回一个身份地址。它看起来是这样的:
'ID-1E4xLTnU2GL3Fzfm3zTqSjBfKjpQMjkJC1’
POST Login
https://api.simpleid.xyz/appkeys
在帐户端点返回响应后,在用户登录或创建用户帐户时调用此端点。
- Request
Headers
Authentication: REQUIRED | string | SimpleID的API Key
数据参数形式
devId : REQUIRED | string | 在SimpleID开发人员帐户页面中显示的devId。
profile: REQUIRED | string | 这应该是与schema.org兼容的用户概要文件对象。对于像Blockstack这样的DID auth方法,这是一个必要的参数。这个对象需要被字符串化。
authProviders : REQUIRED | string | 您希望允许用户使用的身份验证提供者的字符串化数组。这应该与您在SimpleID dev帐户中选择的模块相匹配。
url : REQUIRED | string | 应用程序的原始url
username : REQUIRED | string | 用户选择的用户名
password : REQUIRED | string | 用户选择的密码(密码的验证和强度必须由开发人员处理)
- Response
200: OK
如果请求成功,您将收到一个带有用户密钥对的经过识别的对象,以及(如果使用Blockstack存储)特定于应用程序的存储路径url。您可以使用存储路径url来更新用户的概要文件客户端。
'{"public":"${pubKey}","private":"${privateKey}","appUrl":"${blockstackAppURL”}’
如果您允许您的用户使用Blockstack作为存储提供程序,您应该确保配置文件匹配以下格式:
"profile": {
"claim": {
"@type": "Person",
"@context": "http://schema.org",
"image": [
{
"@type": "ImageObject",
"name": "avatar",
"contentUrl": "https://gaia.blockstack.org/hub/12GBx1ZwUV2vs9syixvQttamG7GeEx5pPZ//avatar-0"
}
],
"name": "Graphite",
"description": "Decentralized and encrypted alternative to Google G-Suite.",
"apps": {
"https://app.graphitedocs.com": "https://gaia.blockstack.org/hub/1M16iy9tw9x2KAiwJZUGRvkkJC5adqmuZb/",
"https://blockusign.co": "https://gaia.blockstack.org/hub/13VMhiiZ8DRzu9NeHdMzYzDtEGfGhFk67F/",
"https://publishing.graphitedocs.com": "https://gaia.blockstack.org/hub/1MCDQXGcEsoSH5i9FH753e5kmvKmLJ5ttv/"
},
"api": {
"gaiaHubConfig": {
"url_prefix": "https://gaia.blockstack.org/hub/"
},
"gaiaHubUrl": "https://hub.blockstack.org"
}
}
}
}
您也可以为其他身份验证/存储模块提供概要对象,但这是正确使用Blockstack模块所必需的。
网友评论