Actions
Actions (array
)
Possible actions a user or the client may choose to take to continue the flow. If only one action is available and the action does not require user input, a client can elect to follow it automatically. Actions requiring user interaction may not be hidden or skipped by the client.
- Items: Action
Actions > Action (oneOf
)
Actions > Action > Client Operation Action (allOf
)
Actions > Action > Client Operation Action > Client Operation Template (object
)
Client operation actions instruct a client to perform an out-of-band action, such as launching an application or use
some other device.
Operations are identified by a name
and may require specific metadata, provided by the arguments
object.
A client operation includes continueActions
- which allow the client to proceed with the flow after the operation
is completed - and, optionally, errorActions
- which can be used if the operation ends with an error.
All clients must support at least the external-browser-flow
operation, which requires opening a browser.
Other operations that the Curity Identity Server ships with (and may be supported by fully compliant clients) are:
The JSON schemas for the above plugins can be obtained from the following links:
Properties
name | type | default | examples | required |
---|---|---|---|---|
template |
"client-operation" |
false |
||
model |
Client Operation Model | false |
Actions > Action > Client Operation Action > Client Operation Template > Client Operation Model (allOf
)
Actions > Action > Client Operation Action > Client Operation Template > Client Operation Model > Base Client Operation (object
)
Properties
name | type | default | examples | required |
---|---|---|---|---|
name |
name | true |
||
arguments |
arguments | true |
||
continueActions |
Continue Actions | true |
||
errorActions |
Actions | false |
Actions > Action > Client Operation Action > Client Operation Template > Client Operation Model > Base Client Operation > name (string
)
Name of the operation. Defines the arguments to be used.
Actions > Action > Client Operation Action > Client Operation Template > Client Operation Model > Base Client Operation > arguments (object
)
Arguments associated with the action. Each operation has its own arguments schema.
Actions > Action > Client Operation Action > Client Operation Template > Client Operation Model > Base Client Operation > Continue Actions (allOf
)
Actions > Action > Client Operation Action > Client Operation Template > Client Operation Model > Base Client Operation > Continue Actions > Continue Actions Items (array
)
default | examples | minItems | maxItems | uniqueItems |
---|---|---|---|---|
1 |
Actions > Action > Client Operation Action > Client Operation Template > Client Operation Model > External Browser Flow (if
)
-
Condition:
{"name":"external-browser-flow"}
Actions > Action > Client Operation Action > Client Operation Template > Client Operation Model > Launch BankID App (if
)
-
Condition:
{"name":"bankid"}
-
Then:
https://curity.se/schemas/bankid-haapi.schema.json
Actions > Action > Client Operation Action > Client Operation Template > Client Operation Model > Encap Non-interactive Device Activation (if
)
-
Condition:
{"name":"encap-auto-activation"}
-
Then:
https://curity.se/schemas/encap-haapi.schema.json
Actions > Action > Client Operation Action > Client Operation Template > Client Operation Model > Register new WebAuthn device (if
)
-
Condition:
{"name":"webauthn-registration"}
-
Then:
https://curity.se/schemas/webauthn-haapi.schema.json
Actions > Action > Client Operation Action > Client Operation Template > Client Operation Model > Login with WebAuthn (if
)
-
Condition:
{"name":"webauthn-authentication"}
-
Then:
https://curity.se/schemas/webauthn-haapi.schema.json
Actions > Action > Form Action (allOf
)
Actions > Action > Form Action > Form Template (object
)
Properties
name | type | default | examples | required |
---|---|---|---|---|
template |
"form" |
false |
||
kind |
kind | ["cancel","device-register","login","continue"] |
false |
|
properties |
properties | false |
||
model |
model | false |
Actions > Action > Form Action > Form Template > kind (string
)
default | examples |
---|---|
["cancel","device-register","login","continue"] |
Actions > Action > Form Action > Form Template > properties (object
)
Properties
name | type | default | examples | required |
---|---|---|---|---|
authenticatorType |
authenticatorType | false |
Actions > Action > Form Action > Form Template > properties > authenticatorType (string
)
Contains the authenticator type. It is present when the action represents an authenticator option
Actions > Action > Form Action > Form Template > model (object
)
Properties
name | type | default | examples | required |
---|---|---|---|---|
actionTitle |
actionTitle | false |
||
continueActions |
Actions | false |
||
errorActions |
Actions | false |
||
fields |
fields | false |
||
type |
type | ["application/x-www-form-urlencoded","application/json"] |
false |
|
method |
method | true |
||
href |
href | true |
Actions > Action > Form Action > Form Template > model > actionTitle (string
)
Title of the action of the model, typically visible to the user as a button label. Should be human-readable.
Actions > Action > Form Action > Form Template > model > fields (array
)
- Items: Form Field
Actions > Action > Form Action > Form Template > model > type (string
)
Media-type used to represent the form's contents.
default | examples |
---|---|
["application/x-www-form-urlencoded","application/json"] |
Actions > Action > Form Action > Form Template > model > method (string
)
HTTP method.
Details
format | pattern | minLength | maxLength | allowed values |
---|---|---|---|---|
["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS"] |
Actions > Action > Form Action > Form Template > model > href (string
)
Target URI
Details
format | pattern | minLength | maxLength | allowed values |
---|---|---|---|---|
uri-reference |
Actions > Action > Selector Action (allOf
)
Actions > Action > Selector Action > Selector Template (object
)
Selector actions are used to let the user select between different options. Each option is given by an action which the user can choose to follow.
Properties
name | type | default | examples | required |
---|---|---|---|---|
template |
"selector" |
false |
||
kind |
kind | ["select-authenticator","device-option"] |
false |
|
model |
model | false |
||
properties |
properties | false |
Actions > Action > Selector Action > Selector Template > kind (string
)
default | examples |
---|---|
["select-authenticator","device-option"] |
Actions > Action > Selector Action > Selector Template > model (object
)
Properties
name | type | default | examples | required |
---|---|---|---|---|
options |
Actions | true |