|
1947 | 1947 | "required": ["name", "timestamp", "attributes"],
|
1948 | 1948 | "type": "object"
|
1949 | 1949 | },
|
| 1950 | + "Provider": { |
| 1951 | + "properties": { |
| 1952 | + "client_id": { |
| 1953 | + "description": "The RP's client identifier, issued by the IdP.", |
| 1954 | + "type": "string" |
| 1955 | + }, |
| 1956 | + "config_url": { |
| 1957 | + "description": "A full path of the IdP config file.", |
| 1958 | + "type": "string" |
| 1959 | + }, |
| 1960 | + "domain_hint": { |
| 1961 | + "description": "By specifying one of domain_hints values provided by the accounts endpoints,\nthe FedCM dialog selectively shows the specified account.", |
| 1962 | + "type": "string" |
| 1963 | + }, |
| 1964 | + "fields": { |
| 1965 | + "description": "Array of strings that specifies the user information (\"name\", \" email\",\n\"picture\") that RP needs IdP to share with them.\n\nNote: Field API is supported by Chrome 132 and later.", |
| 1966 | + "items": { |
| 1967 | + "type": "string" |
| 1968 | + }, |
| 1969 | + "type": "array" |
| 1970 | + }, |
| 1971 | + "login_hint": { |
| 1972 | + "description": "By specifying one of login_hints values provided by the accounts endpoints,\nthe FedCM dialog selectively shows the specified account.", |
| 1973 | + "type": "string" |
| 1974 | + }, |
| 1975 | + "nonce": { |
| 1976 | + "description": "A random string to ensure the response is issued for this specific request.\nPrevents replay attacks.", |
| 1977 | + "type": "string" |
| 1978 | + }, |
| 1979 | + "parameters": { |
| 1980 | + "additionalProperties": { |
| 1981 | + "type": "string" |
| 1982 | + }, |
| 1983 | + "description": "Custom object that allows to specify additional key-value parameters:\nscope: A string value containing additional permissions that RP needs to\nrequest, for example \" drive.readonly calendar.readonly\"\nnonce: A random string to ensure the response is issued for this specific\nrequest. Prevents replay attacks.\n\nOther custom key-value parameters.\n\nNote: parameters is supported from Chrome 132.", |
| 1984 | + "type": "object" |
| 1985 | + } |
| 1986 | + }, |
| 1987 | + "type": "object" |
| 1988 | + }, |
1950 | 1989 | "RFC6749ErrorJson": {
|
1951 | 1990 | "properties": {
|
1952 | 1991 | "error": {
|
|
2056 | 2095 | "format": "uuid4",
|
2057 | 2096 | "type": "string"
|
2058 | 2097 | },
|
| 2098 | + "UpdateFedcmFlowBody": { |
| 2099 | + "properties": { |
| 2100 | + "csrf_token": { |
| 2101 | + "description": "CSRFToken is the anti-CSRF token.", |
| 2102 | + "type": "string" |
| 2103 | + }, |
| 2104 | + "nonce": { |
| 2105 | + "description": "Nonce is the nonce that was used in the `navigator.credentials.get` call. If\nspecified, it must match the `nonce` claim in the token.", |
| 2106 | + "type": "string" |
| 2107 | + }, |
| 2108 | + "token": { |
| 2109 | + "description": "Token contains the result of `navigator.credentials.get`.", |
| 2110 | + "type": "string" |
| 2111 | + } |
| 2112 | + }, |
| 2113 | + "required": ["token", "csrf_token"], |
| 2114 | + "type": "object" |
| 2115 | + }, |
2059 | 2116 | "Usage": {
|
2060 | 2117 | "properties": {
|
2061 | 2118 | "GenericUsage": {
|
|
2667 | 2724 | {
|
2668 | 2725 | "$ref": "#/components/schemas/continueWithRedirectBrowserTo"
|
2669 | 2726 | }
|
2670 |
| - ] |
| 2727 | + ], |
| 2728 | + "type": "object" |
2671 | 2729 | },
|
2672 | 2730 | "continueWithRecoveryUi": {
|
2673 | 2731 | "description": "Indicates, that the UI flow could be continued by showing a recovery ui",
|
|
2860 | 2918 | "required": ["type", "topic_arn", "role_arn"],
|
2861 | 2919 | "type": "object"
|
2862 | 2920 | },
|
| 2921 | + "createFedcmFlowResponse": { |
| 2922 | + "description": "Contains a list of all available FedCM providers.", |
| 2923 | + "properties": { |
| 2924 | + "csrf_token": { |
| 2925 | + "type": "string" |
| 2926 | + }, |
| 2927 | + "providers": { |
| 2928 | + "items": { |
| 2929 | + "$ref": "#/components/schemas/Provider" |
| 2930 | + }, |
| 2931 | + "type": "array" |
| 2932 | + } |
| 2933 | + }, |
| 2934 | + "title": "CreateFedcmFlowResponse", |
| 2935 | + "type": "object" |
| 2936 | + }, |
2863 | 2937 | "createIdentityBody": {
|
2864 | 2938 | "description": "Create Identity Body",
|
2865 | 2939 | "properties": {
|
@@ -16887,6 +16961,125 @@
|
16887 | 16961 | "tags": ["frontend"]
|
16888 | 16962 | }
|
16889 | 16963 | },
|
| 16964 | + "/self-service/fed-cm/parameters": { |
| 16965 | + "get": { |
| 16966 | + "description": "This endpoint returns a list of all available FedCM providers. It is only supported on the Ory Network.", |
| 16967 | + "operationId": "createFedcmFlow", |
| 16968 | + "responses": { |
| 16969 | + "200": { |
| 16970 | + "content": { |
| 16971 | + "application/json": { |
| 16972 | + "schema": { |
| 16973 | + "$ref": "#/components/schemas/createFedcmFlowResponse" |
| 16974 | + } |
| 16975 | + } |
| 16976 | + }, |
| 16977 | + "description": "createFedcmFlowResponse" |
| 16978 | + }, |
| 16979 | + "400": { |
| 16980 | + "content": { |
| 16981 | + "application/json": { |
| 16982 | + "schema": { |
| 16983 | + "$ref": "#/components/schemas/errorGeneric" |
| 16984 | + } |
| 16985 | + } |
| 16986 | + }, |
| 16987 | + "description": "errorGeneric" |
| 16988 | + }, |
| 16989 | + "default": { |
| 16990 | + "content": { |
| 16991 | + "application/json": { |
| 16992 | + "schema": { |
| 16993 | + "$ref": "#/components/schemas/errorGeneric" |
| 16994 | + } |
| 16995 | + } |
| 16996 | + }, |
| 16997 | + "description": "errorGeneric" |
| 16998 | + } |
| 16999 | + }, |
| 17000 | + "summary": "Get FedCM Parameters", |
| 17001 | + "tags": ["frontend"] |
| 17002 | + } |
| 17003 | + }, |
| 17004 | + "/self-service/fed-cm/token": { |
| 17005 | + "post": { |
| 17006 | + "description": "Use this endpoint to submit a token from a FedCM provider through\n`navigator.credentials.get` and log the user in. The parameters from\n`navigator.credentials.get` must have come from `GET\nself-service/fed-cm/parameters`.", |
| 17007 | + "operationId": "updateFedcmFlow", |
| 17008 | + "requestBody": { |
| 17009 | + "content": { |
| 17010 | + "application/json": { |
| 17011 | + "schema": { |
| 17012 | + "$ref": "#/components/schemas/UpdateFedcmFlowBody" |
| 17013 | + } |
| 17014 | + }, |
| 17015 | + "application/x-www-form-urlencoded": { |
| 17016 | + "schema": { |
| 17017 | + "$ref": "#/components/schemas/UpdateFedcmFlowBody" |
| 17018 | + } |
| 17019 | + } |
| 17020 | + }, |
| 17021 | + "required": true, |
| 17022 | + "x-originalParamName": "Body" |
| 17023 | + }, |
| 17024 | + "responses": { |
| 17025 | + "200": { |
| 17026 | + "content": { |
| 17027 | + "application/json": { |
| 17028 | + "schema": { |
| 17029 | + "$ref": "#/components/schemas/successfulNativeLogin" |
| 17030 | + } |
| 17031 | + } |
| 17032 | + }, |
| 17033 | + "description": "successfulNativeLogin" |
| 17034 | + }, |
| 17035 | + "303": { |
| 17036 | + "$ref": "#/components/responses/emptyResponse" |
| 17037 | + }, |
| 17038 | + "400": { |
| 17039 | + "content": { |
| 17040 | + "application/json": { |
| 17041 | + "schema": { |
| 17042 | + "$ref": "#/components/schemas/loginFlow" |
| 17043 | + } |
| 17044 | + } |
| 17045 | + }, |
| 17046 | + "description": "loginFlow" |
| 17047 | + }, |
| 17048 | + "410": { |
| 17049 | + "content": { |
| 17050 | + "application/json": { |
| 17051 | + "schema": { |
| 17052 | + "$ref": "#/components/schemas/errorGeneric" |
| 17053 | + } |
| 17054 | + } |
| 17055 | + }, |
| 17056 | + "description": "errorGeneric" |
| 17057 | + }, |
| 17058 | + "422": { |
| 17059 | + "content": { |
| 17060 | + "application/json": { |
| 17061 | + "schema": { |
| 17062 | + "$ref": "#/components/schemas/errorBrowserLocationChangeRequired" |
| 17063 | + } |
| 17064 | + } |
| 17065 | + }, |
| 17066 | + "description": "errorBrowserLocationChangeRequired" |
| 17067 | + }, |
| 17068 | + "default": { |
| 17069 | + "content": { |
| 17070 | + "application/json": { |
| 17071 | + "schema": { |
| 17072 | + "$ref": "#/components/schemas/errorGeneric" |
| 17073 | + } |
| 17074 | + } |
| 17075 | + }, |
| 17076 | + "description": "errorGeneric" |
| 17077 | + } |
| 17078 | + }, |
| 17079 | + "summary": "Submit a FedCM token", |
| 17080 | + "tags": ["frontend"] |
| 17081 | + } |
| 17082 | + }, |
16890 | 17083 | "/self-service/login": {
|
16891 | 17084 | "post": {
|
16892 | 17085 | "description": "Use this endpoint to complete a login flow. This endpoint\nbehaves differently for API and browser flows.\n\nAPI flows expect `application/json` to be sent in the body and responds with\nHTTP 200 and a application/json body with the session token on success;\nHTTP 410 if the original flow expired with the appropriate error messages set and optionally a `use_flow_id` parameter in the body;\nHTTP 400 on form validation errors.\n\nBrowser flows expect a Content-Type of `application/x-www-form-urlencoded` or `application/json` to be sent in the body and respond with\na HTTP 303 redirect to the post/after login URL or the `return_to` value if it was set and if the login succeeded;\na HTTP 303 redirect to the login UI URL with the flow ID containing the validation errors otherwise.\n\nBrowser flows with an accept header of `application/json` will not redirect but instead respond with\nHTTP 200 and a application/json body with the signed in identity and a `Set-Cookie` header on success;\nHTTP 303 redirect to a fresh login flow if the original flow expired with the appropriate error messages set;\nHTTP 400 on form validation errors.\n\nIf this endpoint is called with `Accept: application/json` in the header, the response contains the flow without a redirect. In the\ncase of an error, the `error.id` of the JSON response body can be one of:\n\n`session_already_available`: The user is already signed in.\n`security_csrf_violation`: Unable to fetch the flow because a CSRF violation occurred.\n`security_identity_mismatch`: The requested `?return_to` address is not allowed to be used. Adjust this in the configuration!\n`browser_location_change_required`: Usually sent when an AJAX request indicates that the browser needs to open a specific URL.\nMost likely used in Social Sign In flows.\n\nMore information can be found at [Ory Kratos User Login](https://www.ory.sh/docs/kratos/self-service/flows/user-login) and [User Registration Documentation](https://www.ory.sh/docs/kratos/self-service/flows/user-registration).",
|
|
0 commit comments