#Enroll (From UserAgent):
##Request POST {{url}}/api/v1/users/{{userId}}/factors
{
"factorType" : "push",
"provider" : "okta"
}
##Response
{
"id": "opfh52xcuft3J4uZc0g3",
"factorType": "push",
"provider": "OKTA",
"status": "PENDING_ACTIVATION",
"created": "2015-04-01T15:57:32.000Z",
"lastUpdated": "2015-04-01T15:57:32.000Z",
"profile": {
"credentialId": "[email protected]",
"keys": [
{
"kty": "PKIX",
"use": "sig",
"kid": "default",
"x5c": [
null
]
}
]
},
"_links": {
"activate": {
"href": "https://nag.okta1.com:80/api/v1/users/00ugti3kwafWJBRIY0g3/factors/opfh52xcuft3J4uZc0g3/lifecycle/activate",
"hints": {
"allow": [
"POST"
]
}
},
"self": {
"href": "https://nag.okta1.com:80/api/v1/users/00ugti3kwafWJBRIY0g3/factors/opfh52xcuft3J4uZc0g3",
"hints": {
"allow": [
"GET"
]
}
},
"user": {
"href": "https://nag.okta1.com:80/api/v1/users/00ugti3kwafWJBRIY0g3",
"hints": {
"allow": [
"GET"
]
}
},
"qrcode": {
"href": "https://nag.okta1.com:80/api/v1/users/00ugti3kwafWJBRIY0g3/factors/opfh52xcuft3J4uZc0g3/qr/00CnAHABTzHh9hjEij9qcteMrOoeFLK6evHruUH7p9",
"type": "image/png"
}
},
"_embedded": {
"activation": {
"links": null,
"deviceActivationToken": "I17JQoOqbYOPH_lMWK5F"
}
}
}
###Gaps/Issues
- Don't show "keys"
- Fix links in "_embedded->activation"
- Remove "activate" link
#After Activation:
##Request: GET {{url}}/api/v1/users/{{userId}}/factors/{{factorId}}
##Response:
{
"id": "opfh52xcuft3J4uZc0g3",
"factorType": "push",
"provider": "OKTA",
"status": "ACTIVE",
"created": "2015-04-01T15:57:32.000Z",
"lastUpdated": "2015-04-01T16:04:56.000Z",
"profile": {
"credentialId": "[email protected]",
"keys": [
{
"kty": "PKIX",
"use": "sig",
"kid": "default",
"x5c": [
"MIIDPDCCAiQCCQDydJgOlszqbzANBgkqhkiG9w0BAQUFADBgMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZyYW5jaXNjbzEQMA4GA1UEChMHSmFua3lDbzESMBAGA1UEAxMJbG9jYWxob3N0MB4XDTE0MDMxMjE5NDYzM1oXDTI3MTExOTE5NDYzM1owYDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lzY28xEDAOBgNVBAoTB0phbmt5Q28xEjAQBgNVBAMTCWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMGvJpRTTasRUSPqcbqCG+ZnTAurnu0vVpIG9lzExnh11o/BGmzu7lB+yLHcEdwrKBBmpepDBPCYxpVajvuEhZdKFx/Fdy6j5mH3rrW0Bh/zd36CoUNjbbhHyTjeM7FN2yF3u9lcyubuvOzr3B3gX66IwJlU46+wzcQVhSOlMk2tXR+fIKQExFrOuK9tbX3JIBUqItpI+HnAow509CnM134svw8PTFLkR6/CcMqnDfDK1m993PyoC1Y+N4X9XkhSmEQoAlAHPI5LHrvuujM13nvtoVYvKYoj7ScgumkpWNEvX652LfXOnKYlkB8ZybuxmFfIkzedQrbJsyOhfL03cMECAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAeHwzqwnzGEkxjzSD47imXaTqtYyETZow7XwBc0ZaFS50qRFJUgKTAmKS1xQBP/qHpStsROT35DUxJAE6NY1Kbq3ZbCuhGoSlY0L7VzVT5tpu4EY8+Dq/u2EjRmmhoL7UkskvIZ2n1DdERtd+YUMTeqYl9co43csZwDno/IKomeN5qaPc39IZjikJ+nUC6kPFKeu/3j9rgHNlRtocI6S1FdtFz9OZMQlpr0JbUt2T3xS/YoQJn6coDmJL5GTiiKM6cOe+Ur1VwzS1JEDbSS2TWWhzq8ojLdrotYLGd9JOsoQhElmz+tMfCFQUFLExinPAyy7YHlSiVX13QH2XTu/iQQ=="
]
}
]
},
"_links": {
"verify": {
"href": "https://nag.okta1.com:80/api/v1/users/00ugti3kwafWJBRIY0g3/factors/opfh52xcuft3J4uZc0g3/verify",
"hints": {
"allow": [
"POST"
]
}
},
"self": {
"href": "https://nag.okta1.com:80/api/v1/users/00ugti3kwafWJBRIY0g3/factors/opfh52xcuft3J4uZc0g3",
"hints": {
"allow": [
"GET",
"DELETE"
]
}
},
"user": {
"href": "https://nag.okta1.com:80/api/v1/users/00ugti3kwafWJBRIY0g3",
"hints": {
"allow": [
"GET"
]
}
}
}
}
###Gaps/Issues:
- Add "reset" link
#Start Challenge:
##Request:
POST {{url}}/api/v1/users/{{userId}}/factors/{{factorId}}/verify
##Response:
{
"factorResult": "WAITING",
"_links": {
"verify": {
"href": "https://nag.okta1.com:80/api/v1/users/00ugti3kwafWJBRIY0g3/factors/opfh52xcuft3J4uZc0g3/verify",
"hints": {
"allow": [
"POST"
]
}
},
"factor": {
"href": "https://nag.okta1.com:80/api/v1/users/00ugti3kwafWJBRIY0g3/factors/opfh52xcuft3J4uZc0g3",
"hints": {
"allow": [
"GET",
"DELETE"
]
}
}
}
}
- Rename "verify" link to "poll"
#After Auth is Approved on Device: ##Request: POST {{url}}/api/v1/users/{{userId}}/factors/{{factorId}}/verify
{
"transactionId":"mst1eiHghhPxf0yhp0g3"
}
##Response:
{
"factorResult": "SUCCESS"
}
###Gaps/Issues:
- Currently we expect "rawToken" as "transactionId" in the request. This need to be changed to transactionId.
#When timed-out:
##Request: POST {{url}}/api/v1/users/{{userId}}/factors/{{factorId}}/verify
{
"transactionId":"mst1eiHghhPxf0yhp0g3"
}
Response:
{
"factorResult": "TIMEOUT",
"_links": {
"verify": {
"href": "https://nag.okta1.com:80/api/v1/users/00ugti3kwafWJBRIY0g3/factors/opfh52xcuft3J4uZc0g3/verify",
"hints": {
"allow": [
"POST"
]
}
},
"factor": {
"href": "https://nag.okta1.com:80/api/v1/users/00ugti3kwafWJBRIY0g3/factors/opfh52xcuft3J4uZc0g3",
"hints": {
"allow": [
"GET",
"DELETE"
]
}
}
}
}