text: (self.webpackChunkdocusaurus_template=self.webpackChunkdocusaurus_template||[]).push([[95106],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return d},kt:function(){return c}});var a=n(67294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?l(Object(n),!0).forEach((function(t){r(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):l(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function s(e,t){if(null==e)return{};var n,a,r=function(e,t){if(null==e)return{};var n,a,r={},l=Object.keys(e);for(a=0;a<l.length;a++)n=l[a],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a<l.length;a++)n=l[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var o=a.createContext({}),p=function(e){var t=a.useContext(o),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},d=function(e){var t=p(e.components);return a.createElement(o.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,l=e.originalType,o=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),m=p(n),c=r,k=m["".concat(o,".").concat(c)]||m[c]||u[c]||l;return n?a.createElement(k,i(i({ref:t},d),{},{components:n})):a.createElement(k,i({ref:t},d))}));function c(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=n.length,i=new Array(l);i[0]=m;var s={};for(var o in t)hasOwnProperty.call(t,o)&&(s[o]=t[o]);s.originalType=e,s.mdxType="string"==typeof e?e:r,i[1]=s;for(var p=2;p<l;p++)i[p]=n[p];return a.createElement.apply(null,i)}return a.createElement.apply(null,n)}m.displayName="MDXCreateElement"},44995:function(e,t,n){"use strict";n.r(t),n.d(t,{frontMatter:function(){return s},contentTitle:function(){return o},metadata:function(){return p},toc:function(){return d},default:function(){return m}});var a=n(22122),r=n(19756),l=(n(67294),n(3905)),i=["components"],s={title:"REST API",id:"api"},o=void 0,p={unversionedId:"sdk/api",id:"version-v0.2/sdk/api",isDocsHomePage:!1,title:"REST API",description:"Welcome to the ORY Kratos HTTP API documentation!",source:"@site/versioned_docs/version-v0.2/sdk/api.md",sourceDirName:"sdk",slug:"/sdk/api",permalink:"/kratos/docs/v0.2/sdk/api",editUrl:"https://github.com/ory/kratos/edit/master/docs/versioned_docs/version-v0.2/sdk/api.md",version:"v0.2",lastUpdatedBy:"aeneasr",lastUpdatedAt:1588605498,formattedLastUpdatedAt:"5/4/2020",frontMatter:{title:"REST API",id:"api"}},d=[{value:"health",id:"health",children:[{value:"Check alive status",id:"check-alive-status",children:[]},{value:"Check readiness status",id:"check-readiness-status",children:[]}]},{value:"Administrative Endpoints",id:"administrative-endpoints",children:[{value:"List all identities in the system",id:"list-all-identities-in-the-system",children:[]},{value:"Create an identity",id:"create-an-identity",children:[]},{value:"Get an identity",id:"get-an-identity",children:[]},{value:"Update an identity",id:"update-an-identity",children:[]},{value:"Delete an identity",id:"delete-an-identity",children:[]}]},{value:"Public Endpoints",id:"public-endpoints",children:[{value:"Initialize browser-based login user flow",id:"initialize-browser-based-login-user-flow",children:[]},{value:"Initialize Browser-Based Logout User Flow",id:"initialize-browser-based-logout-user-flow",children:[]},{value:"Initialize browser-based profile management flow",id:"initialize-browser-based-profile-management-flow",children:[]},{value:"Complete the browser-based profile management flows",id:"complete-the-browser-based-profile-management-flows",children:[]},{value:"Initialize browser-based registration user flow",id:"initialize-browser-based-registration-user-flow",children:[]},{value:"Initialize browser-based verification flow",id:"initialize-browser-based-verification-flow",children:[]},{value:"Complete the browser-based verification flows",id:"complete-the-browser-based-verification-flows",children:[]},{value:"Check who the current HTTP session belongs to",id:"check-who-the-current-http-session-belongs-to",children:[]}]},{value:"common",id:"common",children:[{value:"Get the request context of browser-based login user flows",id:"get-the-request-context-of-browser-based-login-user-flows",children:[]},{value:"Get the request context of browser-based profile management flows",id:"get-the-request-context-of-browser-based-profile-management-flows",children:[]},{value:"Get the request context of browser-based registration user flows",id:"get-the-request-context-of-browser-based-registration-user-flows",children:[]},{value:"Get the request context of browser-based verification flows",id:"get-the-request-context-of-browser-based-verification-flows",children:[]},{value:"Get user-facing self-service errors",id:"get-user-facing-self-service-errors",children:[]}]},{value:"version",id:"version",children:[{value:"Get service version",id:"get-service-version",children:[]}]},{value:"Schemas",id:"schemas",children:[]}],u={toc:d};function m(e){var t=e.components,n=(0,r.Z)(e,i);return(0,l.kt)("wrapper",(0,a.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,l.kt)("p",null,"Welcome to the ORY Kratos HTTP API documentation!"),(0,l.kt)("blockquote",null,(0,l.kt)("p",{parentName:"blockquote"},"You are viewing REST API documentation. This documentation is auto-generated\nfrom a swagger specification which itself is generated from annotations in the\nsource code of the project. It is possible that this documentation includes\nbugs and that code samples are incomplete or wrong."),(0,l.kt)("p",{parentName:"blockquote"},"If you find issues in the respective documentation, please do not edit the\nMarkdown files directly (as they are generated) but raise an issue on the\nproject's GitHub presence instead. This documentation will improve over time\nwith your help! If you have ideas how to improve this part of the\ndocumentation, feel free to share them in a\n",(0,l.kt)("a",{parentName:"p",href:"https://github.com/ory/docs/issues/new"},"GitHub issue")," any time.")),(0,l.kt)("a",{id:"ory-kratos-health"}),(0,l.kt)("h2",{id:"health"},"health"),(0,l.kt)("a",{id:"opIdisInstanceAlive"}),(0,l.kt)("h3",{id:"check-alive-status"},"Check alive status"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /health/alive HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint returns a 200 status code when the HTTP server is up running. This\nstatus does currently not include checks whether the database connection is\nworking."),(0,l.kt)("p",null,"If the service supports TLS Edge Termination, this endpoint does not require the\n",(0,l.kt)("inlineCode",{parentName:"p"},"X-Forwarded-Proto")," header to be set."),(0,l.kt)("p",null,"Be aware that if you are running multiple nodes of this service, the health\nstatus will never refer to the cluster state, only to a single instance."),(0,l.kt)("h4",{id:"responses"},"Responses"),(0,l.kt)("a",{id:"check-alive-status-responses"}),(0,l.kt)("h5",{id:"overview"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"200"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"},"OK")),(0,l.kt)("td",{parentName:"tr",align:null},"healthStatus"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemahealthstatus"},"healthStatus"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples"},"Examples"),(0,l.kt)("h6",{id:"200-response"},"200 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "status": "string"\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-isInstanceAlive"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-isInstanceAlive-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceAlive-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceAlive-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceAlive-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceAlive-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceAlive-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-isInstanceAlive-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /health/alive \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceAlive-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/health/alive", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceAlive-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/health/alive', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceAlive-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/health/alive");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceAlive-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/health/alive',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceAlive-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/health/alive',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdisInstanceReady"}),(0,l.kt)("h3",{id:"check-readiness-status"},"Check readiness status"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /health/ready HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint returns a 200 status code when the HTTP server is up running and\nthe environment dependencies (e.g. the database) are responsive as well."),(0,l.kt)("p",null,"If the service supports TLS Edge Termination, this endpoint does not require the\n",(0,l.kt)("inlineCode",{parentName:"p"},"X-Forwarded-Proto")," header to be set."),(0,l.kt)("p",null,"Be aware that if you are running multiple nodes of this service, the health\nstatus will never refer to the cluster state, only to a single instance."),(0,l.kt)("h4",{id:"responses-1"},"Responses"),(0,l.kt)("a",{id:"check-readiness-status-responses"}),(0,l.kt)("h5",{id:"overview-1"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"200"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"},"OK")),(0,l.kt)("td",{parentName:"tr",align:null},"healthStatus"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemahealthstatus"},"healthStatus"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"503"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.4"},"Service Unavailable")),(0,l.kt)("td",{parentName:"tr",align:null},"healthNotReadyStatus"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemahealthnotreadystatus"},"healthNotReadyStatus"))))),(0,l.kt)("h5",{id:"examples-1"},"Examples"),(0,l.kt)("h6",{id:"200-response-1"},"200 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "status": "string"\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-1"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-isInstanceReady"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-isInstanceReady-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceReady-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceReady-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceReady-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceReady-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceReady-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-isInstanceReady-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /health/ready \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceReady-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/health/ready", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceReady-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/health/ready', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceReady-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/health/ready");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceReady-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/health/ready',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceReady-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/health/ready',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"ory-kratos-administrative-endpoints"}),(0,l.kt)("h2",{id:"administrative-endpoints"},"Administrative Endpoints"),(0,l.kt)("a",{id:"opIdlistIdentities"}),(0,l.kt)("h3",{id:"list-all-identities-in-the-system"},"List all identities in the system"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /identities HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint returns a login request's context with, for example, error details\nand other information."),(0,l.kt)("p",null,"Learn how identities work in\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/next/kratos/concepts/identity-user-model"},"ORY Kratos' User And Identity Model Documentation"),"."),(0,l.kt)("h4",{id:"responses-2"},"Responses"),(0,l.kt)("a",{id:"list-all-identities-in-the-system-responses"}),(0,l.kt)("h5",{id:"overview-2"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"200"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"},"OK")),(0,l.kt)("td",{parentName:"tr",align:null},"A list of identities."),(0,l.kt)("td",{parentName:"tr",align:null})))),(0,l.kt)("p",null,"nolint:deadcode,unused|Inline|\n|500|",(0,l.kt)("a",{parentName:"p",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error"),"|genericError|",(0,l.kt)("a",{parentName:"p",href:"#schemagenericerror"},"genericError"),"|"),(0,l.kt)("a",{id:"list-all-identities-in-the-system-responseschema"}),(0,l.kt)("h5",{id:"response-schema"},"Response Schema"),(0,l.kt)("p",null,"Status Code ",(0,l.kt)("strong",{parentName:"p"},"200")),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("em",{parentName:"td"},"anonymous")),(0,l.kt)("td",{parentName:"tr",align:null},"[",(0,l.kt)("a",{parentName:"td",href:"#schemaidentity"},"Identity"),"]"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb addresses"),(0,l.kt)("td",{parentName:"tr",align:null},"[",(0,l.kt)("a",{parentName:"td",href:"#schemaverifiableaddress"},"VerifiableAddress"),"]"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb\xbb expires_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb\xbb id"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemauuid"},"UUID"),"(uuid4)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb\xbb value"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb\xbb verified"),(0,l.kt)("td",{parentName:"tr",align:null},"boolean"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb\xbb verified_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb\xbb via"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaverifiableaddresstype"},"VerifiableAddressType")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb id"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemauuid"},"UUID"),"(uuid4)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb traits"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schematraits"},"Traits")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb traits_schema_id"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"TraitsSchemaID is the ID of the JSON Schema to be used for validating the identity's traits.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb traits_schema_url"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"TraitsSchemaURL is the URL of the endpoint where the identity's traits schema can be fetched from. format: url")))),(0,l.kt)("h5",{id:"examples-2"},"Examples"),(0,l.kt)("h6",{id:"200-response-2"},"200 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'[\n  {\n    "addresses": [\n      {\n        "expires_at": "2020-03-25T17:39:55Z",\n        "id": "string",\n        "value": "string",\n        "verified": true,\n        "verified_at": "2020-03-25T17:39:55Z",\n        "via": "string"\n      }\n    ],\n    "id": "string",\n    "traits": {},\n    "traits_schema_id": "string",\n    "traits_schema_url": "string"\n  }\n]\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-2"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-listIdentities"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-listIdentities-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-listIdentities-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-listIdentities-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-listIdentities-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-listIdentities-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-listIdentities-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-listIdentities-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /identities \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-listIdentities-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/identities", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-listIdentities-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/identities', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-listIdentities-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/identities");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-listIdentities-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/identities',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-listIdentities-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/identities',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdcreateIdentity"}),(0,l.kt)("h3",{id:"create-an-identity"},"Create an identity"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"POST /identities HTTP/1.1\nContent-Type: application/json\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint creates an identity. It is NOT possible to set an identity's\ncredentials (password, ...) using this method! A way to achieve that will be\nintroduced in the future."),(0,l.kt)("p",null,"Learn how identities work in\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/next/kratos/concepts/identity-user-model"},"ORY Kratos' User And Identity Model Documentation"),"."),(0,l.kt)("h4",{id:"request-body"},"Request body"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "addresses": [\n    {\n      "expires_at": "2020-03-25T17:39:55Z",\n      "id": "string",\n      "value": "string",\n      "verified": true,\n      "verified_at": "2020-03-25T17:39:55Z",\n      "via": "string"\n    }\n  ],\n  "id": "string",\n  "traits": {},\n  "traits_schema_id": "string",\n  "traits_schema_url": "string"\n}\n')),(0,l.kt)("a",{id:"create-an-identity-parameters"}),(0,l.kt)("h5",{id:"parameters"},"Parameters"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Parameter"),(0,l.kt)("th",{parentName:"tr",align:null},"In"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"body"),(0,l.kt)("td",{parentName:"tr",align:null},"body"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaidentity"},"Identity")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none")))),(0,l.kt)("h4",{id:"responses-3"},"Responses"),(0,l.kt)("a",{id:"create-an-identity-responses"}),(0,l.kt)("h5",{id:"overview-3"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"201"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.2"},"Created")),(0,l.kt)("td",{parentName:"tr",align:null},"A single identity."),(0,l.kt)("td",{parentName:"tr",align:null})))),(0,l.kt)("p",null,"nolint:deadcode,unused|",(0,l.kt)("a",{parentName:"p",href:"#schemaidentity"},"Identity"),"|\n|400|",(0,l.kt)("a",{parentName:"p",href:"https://tools.ietf.org/html/rfc7231#section-6.5.1"},"Bad Request"),"|genericError|",(0,l.kt)("a",{parentName:"p",href:"#schemagenericerror"},"genericError"),"|\n|500|",(0,l.kt)("a",{parentName:"p",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error"),"|genericError|",(0,l.kt)("a",{parentName:"p",href:"#schemagenericerror"},"genericError"),"|"),(0,l.kt)("h5",{id:"examples-3"},"Examples"),(0,l.kt)("h6",{id:"201-response"},"201 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "addresses": [\n    {\n      "expires_at": "2020-03-25T17:39:55Z",\n      "id": "string",\n      "value": "string",\n      "verified": true,\n      "verified_at": "2020-03-25T17:39:55Z",\n      "via": "string"\n    }\n  ],\n  "id": "string",\n  "traits": {},\n  "traits_schema_id": "string",\n  "traits_schema_url": "string"\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-3"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-createIdentity"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-createIdentity-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-createIdentity-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-createIdentity-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-createIdentity-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-createIdentity-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-createIdentity-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-createIdentity-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X POST /identities \\\n  -H 'Content-Type: application/json' \\  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-createIdentity-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Content-Type": []string{"application/json"},\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("POST", "/identities", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-createIdentity-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},'const fetch = require(\'node-fetch\');\nconst input = \'{\n  "addresses": [\n    {\n      "expires_at": "2020-03-25T17:39:55Z",\n      "id": "string",\n      "value": "string",\n      "verified": true,\n      "verified_at": "2020-03-25T17:39:55Z",\n      "via": "string"\n    }\n  ],\n  "id": "string",\n  "traits": {},\n  "traits_schema_id": "string",\n  "traits_schema_url": "string"\n}\';\nconst headers = {\n  \'Content-Type\': \'application/json\',  \'Accept\': \'application/json\'\n}\n\nfetch(\'/identities\', {\n  method: \'POST\',\n  body: input,\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-createIdentity-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/identities");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("POST");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-createIdentity-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Content-Type': 'application/json',\n  'Accept': 'application/json'\n}\n\nr = requests.post(\n  '/identities',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-createIdentity-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Content-Type' => 'application/json',\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.post '/identities',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdgetIdentity"}),(0,l.kt)("h3",{id:"get-an-identity"},"Get an identity"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /identities/{id} HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"Learn how identities work in\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/next/kratos/concepts/identity-user-model"},"ORY Kratos' User And Identity Model Documentation"),"."),(0,l.kt)("a",{id:"get-an-identity-parameters"}),(0,l.kt)("h5",{id:"parameters-1"},"Parameters"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Parameter"),(0,l.kt)("th",{parentName:"tr",align:null},"In"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"id"),(0,l.kt)("td",{parentName:"tr",align:null},"path"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"ID must be set to the ID of identity you want to get")))),(0,l.kt)("h4",{id:"responses-4"},"Responses"),(0,l.kt)("a",{id:"get-an-identity-responses"}),(0,l.kt)("h5",{id:"overview-4"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"200"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"},"OK")),(0,l.kt)("td",{parentName:"tr",align:null},"A single identity."),(0,l.kt)("td",{parentName:"tr",align:null})))),(0,l.kt)("p",null,"nolint:deadcode,unused|",(0,l.kt)("a",{parentName:"p",href:"#schemaidentity"},"Identity"),"|\n|400|",(0,l.kt)("a",{parentName:"p",href:"https://tools.ietf.org/html/rfc7231#section-6.5.1"},"Bad Request"),"|genericError|",(0,l.kt)("a",{parentName:"p",href:"#schemagenericerror"},"genericError"),"|\n|500|",(0,l.kt)("a",{parentName:"p",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error"),"|genericError|",(0,l.kt)("a",{parentName:"p",href:"#schemagenericerror"},"genericError"),"|"),(0,l.kt)("h5",{id:"examples-4"},"Examples"),(0,l.kt)("h6",{id:"200-response-3"},"200 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "addresses": [\n    {\n      "expires_at": "2020-03-25T17:39:55Z",\n      "id": "string",\n      "value": "string",\n      "verified": true,\n      "verified_at": "2020-03-25T17:39:55Z",\n      "via": "string"\n    }\n  ],\n  "id": "string",\n  "traits": {},\n  "traits_schema_id": "string",\n  "traits_schema_url": "string"\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-4"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-getIdentity"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-getIdentity-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getIdentity-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getIdentity-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getIdentity-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getIdentity-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getIdentity-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getIdentity-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /identities/{id} \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getIdentity-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/identities/{id}", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getIdentity-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/identities/{id}', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getIdentity-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/identities/{id}");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getIdentity-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/identities/{id}',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getIdentity-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/identities/{id}',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdupdateIdentity"}),(0,l.kt)("h3",{id:"update-an-identity"},"Update an identity"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"PUT /identities/{id} HTTP/1.1\nContent-Type: application/json\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint updates an identity. It is NOT possible to set an identity's\ncredentials (password, ...) using this method! A way to achieve that will be\nintroduced in the future."),(0,l.kt)("p",null,"The full identity payload (except credentials) is expected. This endpoint does\nnot support patching."),(0,l.kt)("p",null,"Learn how identities work in\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/next/kratos/concepts/identity-user-model"},"ORY Kratos' User And Identity Model Documentation"),"."),(0,l.kt)("h4",{id:"request-body-1"},"Request body"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "addresses": [\n    {\n      "expires_at": "2020-03-25T17:39:55Z",\n      "id": "string",\n      "value": "string",\n      "verified": true,\n      "verified_at": "2020-03-25T17:39:55Z",\n      "via": "string"\n    }\n  ],\n  "id": "string",\n  "traits": {},\n  "traits_schema_id": "string",\n  "traits_schema_url": "string"\n}\n')),(0,l.kt)("a",{id:"update-an-identity-parameters"}),(0,l.kt)("h5",{id:"parameters-2"},"Parameters"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Parameter"),(0,l.kt)("th",{parentName:"tr",align:null},"In"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"id"),(0,l.kt)("td",{parentName:"tr",align:null},"path"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"ID must be set to the ID of identity you want to update")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"body"),(0,l.kt)("td",{parentName:"tr",align:null},"body"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaidentity"},"Identity")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none")))),(0,l.kt)("h4",{id:"responses-5"},"Responses"),(0,l.kt)("a",{id:"update-an-identity-responses"}),(0,l.kt)("h5",{id:"overview-5"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"200"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"},"OK")),(0,l.kt)("td",{parentName:"tr",align:null},"A single identity."),(0,l.kt)("td",{parentName:"tr",align:null})))),(0,l.kt)("p",null,"nolint:deadcode,unused|",(0,l.kt)("a",{parentName:"p",href:"#schemaidentity"},"Identity"),"|\n|400|",(0,l.kt)("a",{parentName:"p",href:"https://tools.ietf.org/html/rfc7231#section-6.5.1"},"Bad Request"),"|genericError|",(0,l.kt)("a",{parentName:"p",href:"#schemagenericerror"},"genericError"),"|\n|404|",(0,l.kt)("a",{parentName:"p",href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"},"Not Found"),"|genericError|",(0,l.kt)("a",{parentName:"p",href:"#schemagenericerror"},"genericError"),"|\n|500|",(0,l.kt)("a",{parentName:"p",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error"),"|genericError|",(0,l.kt)("a",{parentName:"p",href:"#schemagenericerror"},"genericError"),"|"),(0,l.kt)("h5",{id:"examples-5"},"Examples"),(0,l.kt)("h6",{id:"200-response-4"},"200 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "addresses": [\n    {\n      "expires_at": "2020-03-25T17:39:55Z",\n      "id": "string",\n      "value": "string",\n      "verified": true,\n      "verified_at": "2020-03-25T17:39:55Z",\n      "via": "string"\n    }\n  ],\n  "id": "string",\n  "traits": {},\n  "traits_schema_id": "string",\n  "traits_schema_url": "string"\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-5"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-updateIdentity"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-updateIdentity-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-updateIdentity-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-updateIdentity-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-updateIdentity-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-updateIdentity-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-updateIdentity-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-updateIdentity-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X PUT /identities/{id} \\\n  -H 'Content-Type: application/json' \\  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-updateIdentity-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Content-Type": []string{"application/json"},\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("PUT", "/identities/{id}", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-updateIdentity-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},'const fetch = require(\'node-fetch\');\nconst input = \'{\n  "addresses": [\n    {\n      "expires_at": "2020-03-25T17:39:55Z",\n      "id": "string",\n      "value": "string",\n      "verified": true,\n      "verified_at": "2020-03-25T17:39:55Z",\n      "via": "string"\n    }\n  ],\n  "id": "string",\n  "traits": {},\n  "traits_schema_id": "string",\n  "traits_schema_url": "string"\n}\';\nconst headers = {\n  \'Content-Type\': \'application/json\',  \'Accept\': \'application/json\'\n}\n\nfetch(\'/identities/{id}\', {\n  method: \'PUT\',\n  body: input,\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-updateIdentity-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/identities/{id}");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("PUT");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-updateIdentity-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Content-Type': 'application/json',\n  'Accept': 'application/json'\n}\n\nr = requests.put(\n  '/identities/{id}',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-updateIdentity-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Content-Type' => 'application/json',\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.put '/identities/{id}',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIddeleteIdentity"}),(0,l.kt)("h3",{id:"delete-an-identity"},"Delete an identity"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"DELETE /identities/{id} HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint deletes an identity. This can not be undone."),(0,l.kt)("p",null,"Learn how identities work in\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/next/kratos/concepts/identity-user-model"},"ORY Kratos' User And Identity Model Documentation"),"."),(0,l.kt)("a",{id:"delete-an-identity-parameters"}),(0,l.kt)("h5",{id:"parameters-3"},"Parameters"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Parameter"),(0,l.kt)("th",{parentName:"tr",align:null},"In"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"id"),(0,l.kt)("td",{parentName:"tr",align:null},"path"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"ID is the identity's ID.")))),(0,l.kt)("h4",{id:"responses-6"},"Responses"),(0,l.kt)("a",{id:"delete-an-identity-responses"}),(0,l.kt)("h5",{id:"overview-6"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"204"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.5"},"No Content")),(0,l.kt)("td",{parentName:"tr",align:null},"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"typically 201."),(0,l.kt)("td",{parentName:"tr",align:null},"None"),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"404"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"},"Not Found")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-6"},"Examples"),(0,l.kt)("h6",{id:"404-response"},"404 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "error": {\n    "code": 404,\n    "debug": "The database adapter was unable to find the element",\n    "details": [\n      {\n        "property1": {},\n        "property2": {}\n      }\n    ],\n    "message": "string",\n    "reason": "string",\n    "request": "string",\n    "status": "string"\n  }\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-6"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-deleteIdentity"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-deleteIdentity-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-deleteIdentity-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-deleteIdentity-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-deleteIdentity-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-deleteIdentity-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-deleteIdentity-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-deleteIdentity-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X DELETE /identities/{id} \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-deleteIdentity-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("DELETE", "/identities/{id}", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-deleteIdentity-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/identities/{id}', {\n  method: 'DELETE',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-deleteIdentity-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/identities/{id}");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("DELETE");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-deleteIdentity-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.delete(\n  '/identities/{id}',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-deleteIdentity-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.delete '/identities/{id}',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"ory-kratos-public-endpoints"}),(0,l.kt)("h2",{id:"public-endpoints"},"Public Endpoints"),(0,l.kt)("a",{id:"opIdinitializeSelfServiceBrowserLoginFlow"}),(0,l.kt)("h3",{id:"initialize-browser-based-login-user-flow"},"Initialize browser-based login user flow"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /self-service/browser/flows/login HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint initializes a browser-based user login flow. Once initialized, the\nbrowser will be redirected to ",(0,l.kt)("inlineCode",{parentName:"p"},"urls.login_ui")," with the request ID set as a query\nparameter. If a valid user session exists already, the browser will be\nredirected to ",(0,l.kt)("inlineCode",{parentName:"p"},"urls.default_redirect_url"),"."),(0,l.kt)("blockquote",null,(0,l.kt)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...).")),(0,l.kt)("p",null,"More information can be found at\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/next/kratos/self-service/flows/user-login-user-registration"},"ORY Kratos User Login and User Registration Documentation"),"."),(0,l.kt)("h4",{id:"responses-7"},"Responses"),(0,l.kt)("a",{id:"initialize-browser-based-login-user-flow-responses"}),(0,l.kt)("h5",{id:"overview-7"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"302"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"},"Found")),(0,l.kt)("td",{parentName:"tr",align:null},"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"typically 201."),(0,l.kt)("td",{parentName:"tr",align:null},"None"),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-7"},"Examples"),(0,l.kt)("h6",{id:"500-response"},"500 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "error": {\n    "code": 404,\n    "debug": "The database adapter was unable to find the element",\n    "details": [\n      {\n        "property1": {},\n        "property2": {}\n      }\n    ],\n    "message": "string",\n    "reason": "string",\n    "request": "string",\n    "status": "string"\n  }\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-7"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-initializeSelfServiceBrowserLoginFlow"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-initializeSelfServiceBrowserLoginFlow-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLoginFlow-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLoginFlow-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLoginFlow-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLoginFlow-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLoginFlow-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLoginFlow-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /self-service/browser/flows/login \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLoginFlow-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/self-service/browser/flows/login", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLoginFlow-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/self-service/browser/flows/login', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLoginFlow-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/self-service/browser/flows/login");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLoginFlow-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/self-service/browser/flows/login',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLoginFlow-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/self-service/browser/flows/login',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdinitializeSelfServiceBrowserLogoutFlow"}),(0,l.kt)("h3",{id:"initialize-browser-based-logout-user-flow"},"Initialize Browser-Based Logout User Flow"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /self-service/browser/flows/logout HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint initializes a logout flow."),(0,l.kt)("blockquote",null,(0,l.kt)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...).")),(0,l.kt)("p",null,"On successful logout, the browser will be redirected (HTTP 302 Found) to\n",(0,l.kt)("inlineCode",{parentName:"p"},"urls.default_return_to"),"."),(0,l.kt)("p",null,"More information can be found at\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/next/kratos/self-service/flows/user-logout"},"ORY Kratos User Logout Documentation"),"."),(0,l.kt)("h4",{id:"responses-8"},"Responses"),(0,l.kt)("a",{id:"initialize-browser-based-logout-user-flow-responses"}),(0,l.kt)("h5",{id:"overview-8"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"302"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"},"Found")),(0,l.kt)("td",{parentName:"tr",align:null},"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"typically 201."),(0,l.kt)("td",{parentName:"tr",align:null},"None"),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-8"},"Examples"),(0,l.kt)("h6",{id:"500-response-1"},"500 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "error": {\n    "code": 404,\n    "debug": "The database adapter was unable to find the element",\n    "details": [\n      {\n        "property1": {},\n        "property2": {}\n      }\n    ],\n    "message": "string",\n    "reason": "string",\n    "request": "string",\n    "status": "string"\n  }\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-8"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-initializeSelfServiceBrowserLogoutFlow"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-initializeSelfServiceBrowserLogoutFlow-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLogoutFlow-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLogoutFlow-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLogoutFlow-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLogoutFlow-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLogoutFlow-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLogoutFlow-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /self-service/browser/flows/logout \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLogoutFlow-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/self-service/browser/flows/logout", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLogoutFlow-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/self-service/browser/flows/logout', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLogoutFlow-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/self-service/browser/flows/logout");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLogoutFlow-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/self-service/browser/flows/logout',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLogoutFlow-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/self-service/browser/flows/logout',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdinitializeSelfServiceProfileManagementFlow"}),(0,l.kt)("h3",{id:"initialize-browser-based-profile-management-flow"},"Initialize browser-based profile management flow"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /self-service/browser/flows/profile HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint initializes a browser-based profile management flow. Once\ninitialized, the browser will be redirected to ",(0,l.kt)("inlineCode",{parentName:"p"},"urls.profile_ui")," with the\nrequest ID set as a query parameter. If no valid user session exists, a login\nflow will be initialized."),(0,l.kt)("blockquote",null,(0,l.kt)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...).")),(0,l.kt)("p",null,"More information can be found at\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/next/kratos/self-service/flows/user-profile-management"},"ORY Kratos Profile Management Documentation"),"."),(0,l.kt)("h4",{id:"responses-9"},"Responses"),(0,l.kt)("a",{id:"initialize-browser-based-profile-management-flow-responses"}),(0,l.kt)("h5",{id:"overview-9"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"302"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"},"Found")),(0,l.kt)("td",{parentName:"tr",align:null},"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"typically 201."),(0,l.kt)("td",{parentName:"tr",align:null},"None"),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-9"},"Examples"),(0,l.kt)("h6",{id:"500-response-2"},"500 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "error": {\n    "code": 404,\n    "debug": "The database adapter was unable to find the element",\n    "details": [\n      {\n        "property1": {},\n        "property2": {}\n      }\n    ],\n    "message": "string",\n    "reason": "string",\n    "request": "string",\n    "status": "string"\n  }\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-9"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-initializeSelfServiceProfileManagementFlow"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-initializeSelfServiceProfileManagementFlow-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceProfileManagementFlow-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceProfileManagementFlow-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceProfileManagementFlow-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceProfileManagementFlow-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceProfileManagementFlow-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-initializeSelfServiceProfileManagementFlow-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /self-service/browser/flows/profile \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceProfileManagementFlow-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/self-service/browser/flows/profile", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceProfileManagementFlow-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/self-service/browser/flows/profile', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceProfileManagementFlow-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/self-service/browser/flows/profile");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceProfileManagementFlow-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/self-service/browser/flows/profile',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceProfileManagementFlow-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/self-service/browser/flows/profile',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdcompleteSelfServiceBrowserVerificationFlow"}),(0,l.kt)("h3",{id:"complete-the-browser-based-profile-management-flows"},"Complete the browser-based profile management flows"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"POST /self-service/browser/flows/verification/{via}/complete?request=string HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint completes a browser-based profile management flow. This is usually\nachieved by POSTing data to this endpoint."),(0,l.kt)("p",null,"If the provided profile data is valid against the Identity's Traits JSON Schema,\nthe data will be updated and the browser redirected to ",(0,l.kt)("inlineCode",{parentName:"p"},"url.profile_ui")," for\nfurther steps."),(0,l.kt)("blockquote",null,(0,l.kt)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...) and HTML Forms.")),(0,l.kt)("p",null,"More information can be found at\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/kratos/selfservice/flows/verify-email-account-activation"},"ORY Kratos Email and Phone Verification Documentation"),"."),(0,l.kt)("a",{id:"complete-the-browser-based-profile-management-flows-parameters"}),(0,l.kt)("h5",{id:"parameters-4"},"Parameters"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Parameter"),(0,l.kt)("th",{parentName:"tr",align:null},"In"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"request"),(0,l.kt)("td",{parentName:"tr",align:null},"query"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"Request is the Request ID")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"via"),(0,l.kt)("td",{parentName:"tr",align:null},"path"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"What to verify")))),(0,l.kt)("h5",{id:"detailed-descriptions"},"Detailed descriptions"),(0,l.kt)("p",null,(0,l.kt)("strong",{parentName:"p"},"request"),": Request is the Request ID"),(0,l.kt)("p",null,"The value for this parameter comes from ",(0,l.kt)("inlineCode",{parentName:"p"},"request")," URL Query parameter sent to\nyour application (e.g. ",(0,l.kt)("inlineCode",{parentName:"p"},"/verify?request=abcde"),")."),(0,l.kt)("p",null,(0,l.kt)("strong",{parentName:"p"},"via"),": What to verify"),(0,l.kt)("p",null,'Currently only "email" is supported.'),(0,l.kt)("h4",{id:"responses-10"},"Responses"),(0,l.kt)("a",{id:"complete-the-browser-based-profile-management-flows-responses"}),(0,l.kt)("h5",{id:"overview-10"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"302"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"},"Found")),(0,l.kt)("td",{parentName:"tr",align:null},"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"typically 201."),(0,l.kt)("td",{parentName:"tr",align:null},"None"),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-10"},"Examples"),(0,l.kt)("h6",{id:"500-response-3"},"500 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "error": {\n    "code": 404,\n    "debug": "The database adapter was unable to find the element",\n    "details": [\n      {\n        "property1": {},\n        "property2": {}\n      }\n    ],\n    "message": "string",\n    "reason": "string",\n    "request": "string",\n    "status": "string"\n  }\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-10"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-completeSelfServiceBrowserVerificationFlow"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-completeSelfServiceBrowserVerificationFlow-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-completeSelfServiceBrowserVerificationFlow-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-completeSelfServiceBrowserVerificationFlow-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-completeSelfServiceBrowserVerificationFlow-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-completeSelfServiceBrowserVerificationFlow-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-completeSelfServiceBrowserVerificationFlow-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-completeSelfServiceBrowserVerificationFlow-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X POST /self-service/browser/flows/verification/{via}/complete?request=string \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-completeSelfServiceBrowserVerificationFlow-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("POST", "/self-service/browser/flows/verification/{via}/complete", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-completeSelfServiceBrowserVerificationFlow-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/self-service/browser/flows/verification/{via}/complete?request=string', {\n  method: 'POST',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-completeSelfServiceBrowserVerificationFlow-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/self-service/browser/flows/verification/{via}/complete?request=string");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("POST");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-completeSelfServiceBrowserVerificationFlow-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.post(\n  '/self-service/browser/flows/verification/{via}/complete',\n  params={\n    'request': 'string'},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-completeSelfServiceBrowserVerificationFlow-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.post '/self-service/browser/flows/verification/{via}/complete',\n  params: {\n    'request' => 'string'}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdinitializeSelfServiceBrowserRegistrationFlow"}),(0,l.kt)("h3",{id:"initialize-browser-based-registration-user-flow"},"Initialize browser-based registration user flow"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /self-service/browser/flows/registration HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint initializes a browser-based user registration flow. Once\ninitialized, the browser will be redirected to ",(0,l.kt)("inlineCode",{parentName:"p"},"urls.registration_ui")," with the\nrequest ID set as a query parameter. If a valid user session exists already, the\nbrowser will be redirected to ",(0,l.kt)("inlineCode",{parentName:"p"},"urls.default_redirect_url"),"."),(0,l.kt)("blockquote",null,(0,l.kt)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...).")),(0,l.kt)("p",null,"More information can be found at\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/next/kratos/self-service/flows/user-login-user-registration"},"ORY Kratos User Login and User Registration Documentation"),"."),(0,l.kt)("h4",{id:"responses-11"},"Responses"),(0,l.kt)("a",{id:"initialize-browser-based-registration-user-flow-responses"}),(0,l.kt)("h5",{id:"overview-11"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"302"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"},"Found")),(0,l.kt)("td",{parentName:"tr",align:null},"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"typically 201."),(0,l.kt)("td",{parentName:"tr",align:null},"None"),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-11"},"Examples"),(0,l.kt)("h6",{id:"500-response-4"},"500 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "error": {\n    "code": 404,\n    "debug": "The database adapter was unable to find the element",\n    "details": [\n      {\n        "property1": {},\n        "property2": {}\n      }\n    ],\n    "message": "string",\n    "reason": "string",\n    "request": "string",\n    "status": "string"\n  }\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-11"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-initializeSelfServiceBrowserRegistrationFlow"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-initializeSelfServiceBrowserRegistrationFlow-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserRegistrationFlow-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserRegistrationFlow-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserRegistrationFlow-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserRegistrationFlow-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserRegistrationFlow-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-initializeSelfServiceBrowserRegistrationFlow-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /self-service/browser/flows/registration \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserRegistrationFlow-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/self-service/browser/flows/registration", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserRegistrationFlow-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/self-service/browser/flows/registration', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserRegistrationFlow-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/self-service/browser/flows/registration");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserRegistrationFlow-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/self-service/browser/flows/registration',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserRegistrationFlow-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/self-service/browser/flows/registration',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdinitializeSelfServiceBrowserVerificationFlow"}),(0,l.kt)("h3",{id:"initialize-browser-based-verification-flow"},"Initialize browser-based verification flow"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /self-service/browser/flows/verification/init/{via} HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint initializes a browser-based profile management flow. Once\ninitialized, the browser will be redirected to ",(0,l.kt)("inlineCode",{parentName:"p"},"urls.profile_ui")," with the\nrequest ID set as a query parameter. If no valid user session exists, a login\nflow will be initialized."),(0,l.kt)("blockquote",null,(0,l.kt)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...).")),(0,l.kt)("p",null,"More information can be found at\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/kratos/selfservice/flows/verify-email-account-activation"},"ORY Kratos Email and Phone Verification Documentation"),"."),(0,l.kt)("a",{id:"initialize-browser-based-verification-flow-parameters"}),(0,l.kt)("h5",{id:"parameters-5"},"Parameters"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Parameter"),(0,l.kt)("th",{parentName:"tr",align:null},"In"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"via"),(0,l.kt)("td",{parentName:"tr",align:null},"path"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"What to verify")))),(0,l.kt)("h5",{id:"detailed-descriptions-1"},"Detailed descriptions"),(0,l.kt)("p",null,(0,l.kt)("strong",{parentName:"p"},"via"),": What to verify"),(0,l.kt)("p",null,'Currently only "email" is supported.'),(0,l.kt)("h4",{id:"responses-12"},"Responses"),(0,l.kt)("a",{id:"initialize-browser-based-verification-flow-responses"}),(0,l.kt)("h5",{id:"overview-12"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"302"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"},"Found")),(0,l.kt)("td",{parentName:"tr",align:null},"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"typically 201."),(0,l.kt)("td",{parentName:"tr",align:null},"None"),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-12"},"Examples"),(0,l.kt)("h6",{id:"500-response-5"},"500 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "error": {\n    "code": 404,\n    "debug": "The database adapter was unable to find the element",\n    "details": [\n      {\n        "property1": {},\n        "property2": {}\n      }\n    ],\n    "message": "string",\n    "reason": "string",\n    "request": "string",\n    "status": "string"\n  }\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-12"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-initializeSelfServiceBrowserVerificationFlow"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-initializeSelfServiceBrowserVerificationFlow-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserVerificationFlow-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserVerificationFlow-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserVerificationFlow-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserVerificationFlow-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserVerificationFlow-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-initializeSelfServiceBrowserVerificationFlow-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /self-service/browser/flows/verification/init/{via} \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserVerificationFlow-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/self-service/browser/flows/verification/init/{via}", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserVerificationFlow-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/self-service/browser/flows/verification/init/{via}', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserVerificationFlow-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/self-service/browser/flows/verification/init/{via}");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserVerificationFlow-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/self-service/browser/flows/verification/init/{via}',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserVerificationFlow-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/self-service/browser/flows/verification/init/{via}',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdselfServiceBrowserVerify"}),(0,l.kt)("h3",{id:"complete-the-browser-based-verification-flows"},"Complete the browser-based verification flows"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /self-service/browser/flows/verification/{via}/confirm/{code} HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint completes a browser-based verification flow."),(0,l.kt)("blockquote",null,(0,l.kt)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...) and HTML Forms.")),(0,l.kt)("p",null,"More information can be found at\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/kratos/selfservice/flows/verify-email-account-activation"},"ORY Kratos Email and Phone Verification Documentation"),"."),(0,l.kt)("a",{id:"complete-the-browser-based-verification-flows-parameters"}),(0,l.kt)("h5",{id:"parameters-6"},"Parameters"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Parameter"),(0,l.kt)("th",{parentName:"tr",align:null},"In"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"code"),(0,l.kt)("td",{parentName:"tr",align:null},"path"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"via"),(0,l.kt)("td",{parentName:"tr",align:null},"path"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"What to verify")))),(0,l.kt)("h5",{id:"detailed-descriptions-2"},"Detailed descriptions"),(0,l.kt)("p",null,(0,l.kt)("strong",{parentName:"p"},"via"),": What to verify"),(0,l.kt)("p",null,'Currently only "email" is supported.'),(0,l.kt)("h4",{id:"responses-13"},"Responses"),(0,l.kt)("a",{id:"complete-the-browser-based-verification-flows-responses"}),(0,l.kt)("h5",{id:"overview-13"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"302"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"},"Found")),(0,l.kt)("td",{parentName:"tr",align:null},"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"typically 201."),(0,l.kt)("td",{parentName:"tr",align:null},"None"),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null})),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-13"},"Examples"),(0,l.kt)("h6",{id:"500-response-6"},"500 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "error": {\n    "code": 404,\n    "debug": "The database adapter was unable to find the element",\n    "details": [\n      {\n        "property1": {},\n        "property2": {}\n      }\n    ],\n    "message": "string",\n    "reason": "string",\n    "request": "string",\n    "status": "string"\n  }\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-13"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-selfServiceBrowserVerify"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-selfServiceBrowserVerify-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-selfServiceBrowserVerify-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-selfServiceBrowserVerify-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-selfServiceBrowserVerify-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-selfServiceBrowserVerify-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-selfServiceBrowserVerify-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-selfServiceBrowserVerify-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /self-service/browser/flows/verification/{via}/confirm/{code} \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-selfServiceBrowserVerify-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/self-service/browser/flows/verification/{via}/confirm/{code}", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-selfServiceBrowserVerify-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/self-service/browser/flows/verification/{via}/confirm/{code}', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-selfServiceBrowserVerify-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/self-service/browser/flows/verification/{via}/confirm/{code}");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-selfServiceBrowserVerify-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/self-service/browser/flows/verification/{via}/confirm/{code}',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-selfServiceBrowserVerify-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/self-service/browser/flows/verification/{via}/confirm/{code}',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdwhoami"}),(0,l.kt)("h3",{id:"check-who-the-current-http-session-belongs-to"},"Check who the current HTTP session belongs to"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /sessions/whoami HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"Uses the HTTP Headers in the GET request to determine (e.g. by using checking\nthe cookies) who is authenticated. Returns a session object or 401 if the\ncredentials are invalid or no credentials were sent."),(0,l.kt)("p",null,"This endpoint is useful for reverse proxies and API Gateways."),(0,l.kt)("h4",{id:"responses-14"},"Responses"),(0,l.kt)("a",{id:"check-who-the-current-http-session-belongs-to-responses"}),(0,l.kt)("h5",{id:"overview-14"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"200"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"},"OK")),(0,l.kt)("td",{parentName:"tr",align:null},"session"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemasession"},"session"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"403"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.5.3"},"Forbidden")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-14"},"Examples"),(0,l.kt)("h6",{id:"200-response-5"},"200 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "authenticated_at": "2020-03-25T17:39:55Z",\n  "expires_at": "2020-03-25T17:39:55Z",\n  "identity": {\n    "addresses": [\n      {\n        "expires_at": "2020-03-25T17:39:55Z",\n        "id": "string",\n        "value": "string",\n        "verified": true,\n        "verified_at": "2020-03-25T17:39:55Z",\n        "via": "string"\n      }\n    ],\n    "id": "string",\n    "traits": {},\n    "traits_schema_id": "string",\n    "traits_schema_url": "string"\n  },\n  "issued_at": "2020-03-25T17:39:55Z",\n  "sid": "string"\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-14"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-whoami"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-whoami-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-whoami-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-whoami-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-whoami-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-whoami-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-whoami-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-whoami-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /sessions/whoami \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-whoami-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/sessions/whoami", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-whoami-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/sessions/whoami', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-whoami-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/sessions/whoami");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-whoami-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/sessions/whoami',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-whoami-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/sessions/whoami',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"ory-kratos-common"}),(0,l.kt)("h2",{id:"common"},"common"),(0,l.kt)("a",{id:"opIdgetSelfServiceBrowserLoginRequest"}),(0,l.kt)("h3",{id:"get-the-request-context-of-browser-based-login-user-flows"},"Get the request context of browser-based login user flows"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /self-service/browser/flows/requests/login?request=string HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint returns a login request's context with, for example, error details\nand other information."),(0,l.kt)("p",null,"When accessing this endpoint through ORY Kratos' Public API, ensure that cookies\nare set as they are required for CSRF to work. To prevent token scanning\nattacks, the public endpoint does not return 404 status codes to prevent\nscanning attacks."),(0,l.kt)("p",null,"More information can be found at\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/next/kratos/self-service/flows/user-login-user-registration"},"ORY Kratos User Login and User Registration Documentation"),"."),(0,l.kt)("a",{id:"get-the-request-context-of-browser-based-login-user-flows-parameters"}),(0,l.kt)("h5",{id:"parameters-7"},"Parameters"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Parameter"),(0,l.kt)("th",{parentName:"tr",align:null},"In"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"request"),(0,l.kt)("td",{parentName:"tr",align:null},"query"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"Request is the Login Request ID")))),(0,l.kt)("h5",{id:"detailed-descriptions-3"},"Detailed descriptions"),(0,l.kt)("p",null,(0,l.kt)("strong",{parentName:"p"},"request"),": Request is the Login Request ID"),(0,l.kt)("p",null,"The value for this parameter comes from ",(0,l.kt)("inlineCode",{parentName:"p"},"request")," URL Query parameter sent to\nyour application (e.g. ",(0,l.kt)("inlineCode",{parentName:"p"},"/login?request=abcde"),")."),(0,l.kt)("h4",{id:"responses-15"},"Responses"),(0,l.kt)("a",{id:"get-the-request-context-of-browser-based-login-user-flows-responses"}),(0,l.kt)("h5",{id:"overview-15"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"200"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"},"OK")),(0,l.kt)("td",{parentName:"tr",align:null},"loginRequest"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaloginrequest"},"loginRequest"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"403"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.5.3"},"Forbidden")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"404"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"},"Not Found")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-15"},"Examples"),(0,l.kt)("h6",{id:"200-response-6"},"200 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "active": "string",\n  "expires_at": "2020-03-25T17:39:55Z",\n  "id": "string",\n  "issued_at": "2020-03-25T17:39:55Z",\n  "methods": {\n    "property1": {\n      "config": {\n        "action": "string",\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "fields": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ],\n        "method": "string",\n        "providers": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ]\n      },\n      "method": "string"\n    },\n    "property2": {\n      "config": {\n        "action": "string",\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "fields": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ],\n        "method": "string",\n        "providers": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ]\n      },\n      "method": "string"\n    }\n  },\n  "request_url": "string"\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-15"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-getSelfServiceBrowserLoginRequest"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-getSelfServiceBrowserLoginRequest-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserLoginRequest-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserLoginRequest-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserLoginRequest-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserLoginRequest-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserLoginRequest-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getSelfServiceBrowserLoginRequest-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /self-service/browser/flows/requests/login?request=string \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserLoginRequest-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/self-service/browser/flows/requests/login", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserLoginRequest-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/self-service/browser/flows/requests/login?request=string', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserLoginRequest-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/self-service/browser/flows/requests/login?request=string");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserLoginRequest-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/self-service/browser/flows/requests/login',\n  params={\n    'request': 'string'},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserLoginRequest-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/self-service/browser/flows/requests/login',\n  params: {\n    'request' => 'string'}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdgetSelfServiceBrowserProfileManagementRequest"}),(0,l.kt)("h3",{id:"get-the-request-context-of-browser-based-profile-management-flows"},"Get the request context of browser-based profile management flows"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /self-service/browser/flows/requests/profile?request=string HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"When accessing this endpoint through ORY Kratos' Public API, ensure that cookies\nare set as they are required for checking the auth session. To prevent scanning\nattacks, the public endpoint does not return 404 status codes but instead 403\nor 500."),(0,l.kt)("p",null,"More information can be found at\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/next/kratos/self-service/flows/user-profile-management"},"ORY Kratos Profile Management Documentation"),"."),(0,l.kt)("a",{id:"get-the-request-context-of-browser-based-profile-management-flows-parameters"}),(0,l.kt)("h5",{id:"parameters-8"},"Parameters"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Parameter"),(0,l.kt)("th",{parentName:"tr",align:null},"In"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"request"),(0,l.kt)("td",{parentName:"tr",align:null},"query"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"Request is the Login Request ID")))),(0,l.kt)("h5",{id:"detailed-descriptions-4"},"Detailed descriptions"),(0,l.kt)("p",null,(0,l.kt)("strong",{parentName:"p"},"request"),": Request is the Login Request ID"),(0,l.kt)("p",null,"The value for this parameter comes from ",(0,l.kt)("inlineCode",{parentName:"p"},"request")," URL Query parameter sent to\nyour application (e.g. ",(0,l.kt)("inlineCode",{parentName:"p"},"/login?request=abcde"),")."),(0,l.kt)("h4",{id:"responses-16"},"Responses"),(0,l.kt)("a",{id:"get-the-request-context-of-browser-based-profile-management-flows-responses"}),(0,l.kt)("h5",{id:"overview-16"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"200"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"},"OK")),(0,l.kt)("td",{parentName:"tr",align:null},"profileManagementRequest"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaprofilemanagementrequest"},"profileManagementRequest"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"403"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.5.3"},"Forbidden")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"404"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"},"Not Found")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-16"},"Examples"),(0,l.kt)("h6",{id:"200-response-7"},"200 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "expires_at": "2020-03-25T17:39:55Z",\n  "form": {\n    "action": "string",\n    "errors": [\n      {\n        "message": "string"\n      }\n    ],\n    "fields": [\n      {\n        "disabled": true,\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "name": "string",\n        "pattern": "string",\n        "required": true,\n        "type": "string",\n        "value": {}\n      }\n    ],\n    "method": "string"\n  },\n  "id": "string",\n  "identity": {\n    "addresses": [\n      {\n        "expires_at": "2020-03-25T17:39:55Z",\n        "id": "string",\n        "value": "string",\n        "verified": true,\n        "verified_at": "2020-03-25T17:39:55Z",\n        "via": "string"\n      }\n    ],\n    "id": "string",\n    "traits": {},\n    "traits_schema_id": "string",\n    "traits_schema_url": "string"\n  },\n  "issued_at": "2020-03-25T17:39:55Z",\n  "request_url": "string",\n  "update_successful": true\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-16"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-getSelfServiceBrowserProfileManagementRequest"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-getSelfServiceBrowserProfileManagementRequest-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserProfileManagementRequest-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserProfileManagementRequest-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserProfileManagementRequest-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserProfileManagementRequest-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserProfileManagementRequest-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getSelfServiceBrowserProfileManagementRequest-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /self-service/browser/flows/requests/profile?request=string \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserProfileManagementRequest-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/self-service/browser/flows/requests/profile", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserProfileManagementRequest-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/self-service/browser/flows/requests/profile?request=string', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserProfileManagementRequest-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/self-service/browser/flows/requests/profile?request=string");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserProfileManagementRequest-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/self-service/browser/flows/requests/profile',\n  params={\n    'request': 'string'},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserProfileManagementRequest-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/self-service/browser/flows/requests/profile',\n  params: {\n    'request' => 'string'}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdgetSelfServiceBrowserRegistrationRequest"}),(0,l.kt)("h3",{id:"get-the-request-context-of-browser-based-registration-user-flows"},"Get the request context of browser-based registration user flows"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /self-service/browser/flows/requests/registration?request=string HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint returns a registration request's context with, for example, error\ndetails and other information."),(0,l.kt)("p",null,"When accessing this endpoint through ORY Kratos' Public API, ensure that cookies\nare set as they are required for CSRF to work. To prevent token scanning\nattacks, the public endpoint does not return 404 status codes to prevent\nscanning attacks."),(0,l.kt)("p",null,"More information can be found at\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/next/kratos/self-service/flows/user-login-user-registration"},"ORY Kratos User Login and User Registration Documentation"),"."),(0,l.kt)("a",{id:"get-the-request-context-of-browser-based-registration-user-flows-parameters"}),(0,l.kt)("h5",{id:"parameters-9"},"Parameters"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Parameter"),(0,l.kt)("th",{parentName:"tr",align:null},"In"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"request"),(0,l.kt)("td",{parentName:"tr",align:null},"query"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"Request is the Registration Request ID")))),(0,l.kt)("h5",{id:"detailed-descriptions-5"},"Detailed descriptions"),(0,l.kt)("p",null,(0,l.kt)("strong",{parentName:"p"},"request"),": Request is the Registration Request ID"),(0,l.kt)("p",null,"The value for this parameter comes from ",(0,l.kt)("inlineCode",{parentName:"p"},"request")," URL Query parameter sent to\nyour application (e.g. ",(0,l.kt)("inlineCode",{parentName:"p"},"/registration?request=abcde"),")."),(0,l.kt)("h4",{id:"responses-17"},"Responses"),(0,l.kt)("a",{id:"get-the-request-context-of-browser-based-registration-user-flows-responses"}),(0,l.kt)("h5",{id:"overview-17"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"200"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"},"OK")),(0,l.kt)("td",{parentName:"tr",align:null},"registrationRequest"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaregistrationrequest"},"registrationRequest"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"403"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.5.3"},"Forbidden")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"404"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"},"Not Found")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-17"},"Examples"),(0,l.kt)("h6",{id:"200-response-8"},"200 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "active": "string",\n  "expires_at": "2020-03-25T17:39:55Z",\n  "id": "string",\n  "issued_at": "2020-03-25T17:39:55Z",\n  "methods": {\n    "property1": {\n      "config": {\n        "action": "string",\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "fields": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ],\n        "method": "string",\n        "providers": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ]\n      },\n      "method": "string"\n    },\n    "property2": {\n      "config": {\n        "action": "string",\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "fields": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ],\n        "method": "string",\n        "providers": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ]\n      },\n      "method": "string"\n    }\n  },\n  "request_url": "string"\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-17"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-getSelfServiceBrowserRegistrationRequest"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-getSelfServiceBrowserRegistrationRequest-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserRegistrationRequest-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserRegistrationRequest-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserRegistrationRequest-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserRegistrationRequest-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserRegistrationRequest-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getSelfServiceBrowserRegistrationRequest-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /self-service/browser/flows/requests/registration?request=string \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserRegistrationRequest-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/self-service/browser/flows/requests/registration", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserRegistrationRequest-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/self-service/browser/flows/requests/registration?request=string', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserRegistrationRequest-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/self-service/browser/flows/requests/registration?request=string");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserRegistrationRequest-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/self-service/browser/flows/requests/registration',\n  params={\n    'request': 'string'},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserRegistrationRequest-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/self-service/browser/flows/requests/registration',\n  params: {\n    'request' => 'string'}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdgetSelfServiceVerificationRequest"}),(0,l.kt)("h3",{id:"get-the-request-context-of-browser-based-verification-flows"},"Get the request context of browser-based verification flows"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /self-service/browser/flows/requests/verification?request=string HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"When accessing this endpoint through ORY Kratos' Public API, ensure that cookies\nare set as they are required for checking the auth session. To prevent scanning\nattacks, the public endpoint does not return 404 status codes but instead 403\nor 500."),(0,l.kt)("p",null,"More information can be found at\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/kratos/selfservice/flows/verify-email-account-activation"},"ORY Kratos Email and Phone Verification Documentation"),"."),(0,l.kt)("a",{id:"get-the-request-context-of-browser-based-verification-flows-parameters"}),(0,l.kt)("h5",{id:"parameters-10"},"Parameters"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Parameter"),(0,l.kt)("th",{parentName:"tr",align:null},"In"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"request"),(0,l.kt)("td",{parentName:"tr",align:null},"query"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"Request is the Request ID")))),(0,l.kt)("h5",{id:"detailed-descriptions-6"},"Detailed descriptions"),(0,l.kt)("p",null,(0,l.kt)("strong",{parentName:"p"},"request"),": Request is the Request ID"),(0,l.kt)("p",null,"The value for this parameter comes from ",(0,l.kt)("inlineCode",{parentName:"p"},"request")," URL Query parameter sent to\nyour application (e.g. ",(0,l.kt)("inlineCode",{parentName:"p"},"/verify?request=abcde"),")."),(0,l.kt)("h4",{id:"responses-18"},"Responses"),(0,l.kt)("a",{id:"get-the-request-context-of-browser-based-verification-flows-responses"}),(0,l.kt)("h5",{id:"overview-18"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"200"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"},"OK")),(0,l.kt)("td",{parentName:"tr",align:null},"verificationRequest"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaverificationrequest"},"verificationRequest"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"403"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.5.3"},"Forbidden")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"404"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"},"Not Found")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-18"},"Examples"),(0,l.kt)("h6",{id:"200-response-9"},"200 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "expires_at": "2020-03-25T17:39:55Z",\n  "form": {\n    "action": "string",\n    "errors": [\n      {\n        "message": "string"\n      }\n    ],\n    "fields": [\n      {\n        "disabled": true,\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "name": "string",\n        "pattern": "string",\n        "required": true,\n        "type": "string",\n        "value": {}\n      }\n    ],\n    "method": "string"\n  },\n  "id": "string",\n  "issued_at": "2020-03-25T17:39:55Z",\n  "request_url": "string",\n  "success": true,\n  "via": "string"\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-18"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-getSelfServiceVerificationRequest"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-getSelfServiceVerificationRequest-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceVerificationRequest-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceVerificationRequest-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceVerificationRequest-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceVerificationRequest-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceVerificationRequest-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getSelfServiceVerificationRequest-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /self-service/browser/flows/requests/verification?request=string \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceVerificationRequest-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/self-service/browser/flows/requests/verification", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceVerificationRequest-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/self-service/browser/flows/requests/verification?request=string', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceVerificationRequest-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/self-service/browser/flows/requests/verification?request=string");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceVerificationRequest-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/self-service/browser/flows/requests/verification',\n  params={\n    'request': 'string'},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceVerificationRequest-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/self-service/browser/flows/requests/verification',\n  params: {\n    'request' => 'string'}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"opIdgetSelfServiceError"}),(0,l.kt)("h3",{id:"get-user-facing-self-service-errors"},"Get user-facing self-service errors"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /self-service/errors HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint returns the error associated with a user-facing self service\nerrors."),(0,l.kt)("p",null,"When accessing this endpoint through ORY Kratos' Public API, ensure that cookies\nare set as they are required for CSRF to work. To prevent token scanning\nattacks, the public endpoint does not return 404 status codes to prevent\nscanning attacks."),(0,l.kt)("p",null,"More information can be found at\n",(0,l.kt)("a",{parentName:"p",href:"https://www.ory.sh/docs/kratos/self-service/flows/user-facing-errors"},"ORY Kratos User User Facing Error Documentation"),"."),(0,l.kt)("a",{id:"get-user-facing-self-service-errors-parameters"}),(0,l.kt)("h5",{id:"parameters-11"},"Parameters"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Parameter"),(0,l.kt)("th",{parentName:"tr",align:null},"In"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"id"),(0,l.kt)("td",{parentName:"tr",align:null},"query"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none")))),(0,l.kt)("h4",{id:"responses-19"},"Responses"),(0,l.kt)("a",{id:"get-user-facing-self-service-errors-responses"}),(0,l.kt)("h5",{id:"overview-19"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"200"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"},"OK")),(0,l.kt)("td",{parentName:"tr",align:null},"User-facing error response"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaerrorcontainer"},"errorContainer"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"403"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.5.3"},"Forbidden")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"404"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"},"Not Found")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"500"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"},"Internal Server Error")),(0,l.kt)("td",{parentName:"tr",align:null},"genericError"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerror"},"genericError"))))),(0,l.kt)("h5",{id:"examples-19"},"Examples"),(0,l.kt)("h6",{id:"200-response-10"},"200 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "errors": {},\n  "id": "string"\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-19"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-getSelfServiceError"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-getSelfServiceError-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceError-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceError-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceError-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceError-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceError-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getSelfServiceError-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /self-service/errors \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceError-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/self-service/errors", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceError-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/self-service/errors', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceError-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/self-service/errors");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceError-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/self-service/errors',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceError-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/self-service/errors',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("a",{id:"ory-kratos-version"}),(0,l.kt)("h2",{id:"version"},"version"),(0,l.kt)("a",{id:"opIdgetVersion"}),(0,l.kt)("h3",{id:"get-service-version"},"Get service version"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},"GET /version HTTP/1.1\nAccept: application/json\n\n")),(0,l.kt)("p",null,"This endpoint returns the service version typically notated using semantic\nversioning."),(0,l.kt)("p",null,"If the service supports TLS Edge Termination, this endpoint does not require the\n",(0,l.kt)("inlineCode",{parentName:"p"},"X-Forwarded-Proto")," header to be set."),(0,l.kt)("p",null,"Be aware that if you are running multiple nodes of this service, the health\nstatus will never refer to the cluster state, only to a single instance."),(0,l.kt)("h4",{id:"responses-20"},"Responses"),(0,l.kt)("a",{id:"get-service-version-responses"}),(0,l.kt)("h5",{id:"overview-20"},"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Status"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"),(0,l.kt)("th",{parentName:"tr",align:null},"Schema"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"200"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"},"OK")),(0,l.kt)("td",{parentName:"tr",align:null},"version"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaversion"},"version"))))),(0,l.kt)("h5",{id:"examples-20"},"Examples"),(0,l.kt)("h6",{id:"200-response-11"},"200 response"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "version": "string"\n}\n')),(0,l.kt)("aside",{class:"success"},"This operation does not require authentication"),(0,l.kt)("h4",{id:"code-samples-20"},"Code samples"),(0,l.kt)("div",{class:"tabs",id:"tab-getVersion"},(0,l.kt)("nav",{class:"tabs-nav"},(0,l.kt)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link active",role:"tab",href:"#tab-getVersion-shell"},"Shell")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getVersion-go"},"Go")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getVersion-node"},"Node.js")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getVersion-java"},"Java")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getVersion-python"},"Python")),(0,l.kt)("li",{class:"nav-item"},(0,l.kt)("a",{class:"nav-link",role:"tab",href:"#tab-getVersion-ruby"},"Ruby")))),(0,l.kt)("div",{class:"tab-content"},(0,l.kt)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getVersion-shell"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"curl -X GET /version \\\n  -H 'Accept: application/json'\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getVersion-go"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-go"},'package main\n\nimport (\n    "bytes"\n    "net/http"\n)\n\nfunc main() {\n    headers := map[string][]string{\n        "Accept": []string{"application/json"},\n    }\n\n    var body []byte\n    // body = ...\n\n    req, err := http.NewRequest("GET", "/version", bytes.NewBuffer(body))\n    req.Header = headers\n\n    client := &http.Client{}\n    resp, err := client.Do(req)\n    // ...\n}\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getVersion-node"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-nodejs"},"const fetch = require('node-fetch');\n\nconst headers = {\n  'Accept': 'application/json'\n}\n\nfetch('/version', {\n  method: 'GET',\n  headers\n})\n.then(r => r.json())\n.then((body) => {\n    console.log(body)\n})\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getVersion-java"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-java"},'// This sample needs improvement.\nURL obj = new URL("/version");\n\nHttpURLConnection con = (HttpURLConnection) obj.openConnection();\ncon.setRequestMethod("GET");\n\nint responseCode = con.getResponseCode();\n\nBufferedReader in = new BufferedReader(\n    new InputStreamReader(con.getInputStream())\n);\n\nString inputLine;\nStringBuffer response = new StringBuffer();\nwhile ((inputLine = in.readLine()) != null) {\n    response.append(inputLine);\n}\nin.close();\n\nSystem.out.println(response.toString());\n'))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getVersion-python"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-python"},"import requests\n\nheaders = {\n  'Accept': 'application/json'\n}\n\nr = requests.get(\n  '/version',\n  params={},\n  headers = headers)\n\nprint r.json()\n"))),(0,l.kt)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getVersion-ruby"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-ruby"},"require 'rest-client'\nrequire 'json'\n\nheaders = {\n  'Accept' => 'application/json'\n}\n\nresult = RestClient.get '/version',\n  params: {}, headers: headers\n\np JSON.parse(result)\n"))))),(0,l.kt)("h2",{id:"schemas"},"Schemas"),(0,l.kt)("a",{id:"tocScredentialstype"},"CredentialsType"),(0,l.kt)("h4",{id:"credentialstype"},"CredentialsType"),(0,l.kt)("a",{id:"schemacredentialstype"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'"string"\n')),(0,l.kt)("p",null,(0,l.kt)("em",{parentName:"p"},"CredentialsType represents several different credential types, like password\ncredentials, passwordless credentials,")),(0,l.kt)("h4",{id:"properties"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"CredentialsType represents several different credential types, like password credentials, passwordless credentials,"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"and so on.")))),(0,l.kt)("a",{id:"tocSerror"},"Error"),(0,l.kt)("h4",{id:"error"},"Error"),(0,l.kt)("a",{id:"schemaerror"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "message": "string"\n}\n')),(0,l.kt)("h4",{id:"properties-1"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"message"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Code FormErrorCode ",(0,l.kt)("inlineCode",{parentName:"td"},'json:"id,omitempty"'))))),(0,l.kt)("a",{id:"tocSidentity"},"Identity"),(0,l.kt)("h4",{id:"identity"},"Identity"),(0,l.kt)("a",{id:"schemaidentity"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "addresses": [\n    {\n      "expires_at": "2020-03-25T17:39:55Z",\n      "id": "string",\n      "value": "string",\n      "verified": true,\n      "verified_at": "2020-03-25T17:39:55Z",\n      "via": "string"\n    }\n  ],\n  "id": "string",\n  "traits": {},\n  "traits_schema_id": "string",\n  "traits_schema_url": "string"\n}\n')),(0,l.kt)("h4",{id:"properties-2"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"addresses"),(0,l.kt)("td",{parentName:"tr",align:null},"[",(0,l.kt)("a",{parentName:"td",href:"#schemaverifiableaddress"},"VerifiableAddress"),"]"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"id"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemauuid"},"UUID")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"traits"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schematraits"},"Traits")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"traits_schema_id"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"TraitsSchemaID is the ID of the JSON Schema to be used for validating the identity's traits.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"traits_schema_url"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"TraitsSchemaURL is the URL of the endpoint where the identity's traits schema can be fetched from. format: url")))),(0,l.kt)("a",{id:"tocStraits"},"Traits"),(0,l.kt)("h4",{id:"traits"},"Traits"),(0,l.kt)("a",{id:"schematraits"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},"{}\n")),(0,l.kt)("h4",{id:"properties-3"},"Properties"),(0,l.kt)("p",null,(0,l.kt)("em",{parentName:"p"},"None")),(0,l.kt)("a",{id:"tocSuuid"},"UUID"),(0,l.kt)("h4",{id:"uuid"},"UUID"),(0,l.kt)("a",{id:"schemauuid"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'"string"\n')),(0,l.kt)("h4",{id:"properties-4"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("em",{parentName:"td"},"anonymous")),(0,l.kt)("td",{parentName:"tr",align:null},"string(uuid4)"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")))),(0,l.kt)("a",{id:"tocSverifiableaddress"},"VerifiableAddress"),(0,l.kt)("h4",{id:"verifiableaddress"},"VerifiableAddress"),(0,l.kt)("a",{id:"schemaverifiableaddress"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "expires_at": "2020-03-25T17:39:55Z",\n  "id": "string",\n  "value": "string",\n  "verified": true,\n  "verified_at": "2020-03-25T17:39:55Z",\n  "via": "string"\n}\n')),(0,l.kt)("h4",{id:"properties-5"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"expires_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"id"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemauuid"},"UUID")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"value"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"verified"),(0,l.kt)("td",{parentName:"tr",align:null},"boolean"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"verified_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"via"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaverifiableaddresstype"},"VerifiableAddressType")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")))),(0,l.kt)("a",{id:"tocSverifiableaddresstype"},"VerifiableAddressType"),(0,l.kt)("h4",{id:"verifiableaddresstype"},"VerifiableAddressType"),(0,l.kt)("a",{id:"schemaverifiableaddresstype"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'"string"\n')),(0,l.kt)("h4",{id:"properties-6"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("em",{parentName:"td"},"anonymous")),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")))),(0,l.kt)("a",{id:"tocScompleteselfservicebrowserprofilemanagementflowpayload"},"completeSelfServiceBrowserProfileManagementFlowPayload"),(0,l.kt)("h4",{id:"completeselfservicebrowserprofilemanagementflowpayload"},"completeSelfServiceBrowserProfileManagementFlowPayload"),(0,l.kt)("a",{id:"schemacompleteselfservicebrowserprofilemanagementflowpayload"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "traits": {}\n}\n')),(0,l.kt)("h4",{id:"properties-7"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"traits"),(0,l.kt)("td",{parentName:"tr",align:null},"object"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Traits contains all of the identity's traits. type: string format: binary")))),(0,l.kt)("a",{id:"tocSerrorcontainer"},"errorContainer"),(0,l.kt)("h4",{id:"errorcontainer"},"errorContainer"),(0,l.kt)("a",{id:"schemaerrorcontainer"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "errors": {},\n  "id": "string"\n}\n')),(0,l.kt)("h4",{id:"properties-8"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"errors"),(0,l.kt)("td",{parentName:"tr",align:null},"object"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"id"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemauuid"},"UUID")),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")))),(0,l.kt)("a",{id:"tocSform"},"form"),(0,l.kt)("h4",{id:"form"},"form"),(0,l.kt)("a",{id:"schemaform"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "action": "string",\n  "errors": [\n    {\n      "message": "string"\n    }\n  ],\n  "fields": [\n    {\n      "disabled": true,\n      "errors": [\n        {\n          "message": "string"\n        }\n      ],\n      "name": "string",\n      "pattern": "string",\n      "required": true,\n      "type": "string",\n      "value": {}\n    }\n  ],\n  "method": "string"\n}\n')),(0,l.kt)("p",null,(0,l.kt)("em",{parentName:"p"},"HTMLForm represents a HTML Form. The container can work with both HTTP Form and\nJSON requests")),(0,l.kt)("h4",{id:"properties-9"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"action"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Action should be used as the form action URL ",(0,l.kt)("inlineCode",{parentName:"td"},'<form action="{{ .Action }}" method="post">'),".")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"errors"),(0,l.kt)("td",{parentName:"tr",align:null},"[",(0,l.kt)("a",{parentName:"td",href:"#schemaerror"},"Error"),"]"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Errors contains all form errors. These will be duplicates of the individual field errors.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"fields"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaformfields"},"formFields")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Fields contains multiple fields")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"method"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Method is the form method (e.g. POST)")))),(0,l.kt)("a",{id:"tocSformfield"},"formField"),(0,l.kt)("h4",{id:"formfield"},"formField"),(0,l.kt)("a",{id:"schemaformfield"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "disabled": true,\n  "errors": [\n    {\n      "message": "string"\n    }\n  ],\n  "name": "string",\n  "pattern": "string",\n  "required": true,\n  "type": "string",\n  "value": {}\n}\n')),(0,l.kt)("p",null,(0,l.kt)("em",{parentName:"p"},"Field represents a HTML Form Field")),(0,l.kt)("h4",{id:"properties-10"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"disabled"),(0,l.kt)("td",{parentName:"tr",align:null},"boolean"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Disabled is the equivalent of ",(0,l.kt)("inlineCode",{parentName:"td"},'<input disabled="{{.Disabled}}">'))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"errors"),(0,l.kt)("td",{parentName:"tr",align:null},"[",(0,l.kt)("a",{parentName:"td",href:"#schemaerror"},"Error"),"]"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Errors contains all validation errors this particular field has caused.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"name"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Name is the equivalent of ",(0,l.kt)("inlineCode",{parentName:"td"},'<input name="{{.Name}}">'))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"pattern"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Pattern is the equivalent of ",(0,l.kt)("inlineCode",{parentName:"td"},'<input pattern="{{.Pattern}}">'))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"required"),(0,l.kt)("td",{parentName:"tr",align:null},"boolean"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Required is the equivalent of ",(0,l.kt)("inlineCode",{parentName:"td"},'<input required="{{.Required}}">'))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"type"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Type is the equivalent of ",(0,l.kt)("inlineCode",{parentName:"td"},'<input type="{{.Type}}">'))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"value"),(0,l.kt)("td",{parentName:"tr",align:null},"object"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Value is the equivalent of ",(0,l.kt)("inlineCode",{parentName:"td"},'<input value="{{.Value}}">'))))),(0,l.kt)("a",{id:"tocSformfields"},"formFields"),(0,l.kt)("h4",{id:"formfields"},"formFields"),(0,l.kt)("a",{id:"schemaformfields"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'[\n  {\n    "disabled": true,\n    "errors": [\n      {\n        "message": "string"\n      }\n    ],\n    "name": "string",\n    "pattern": "string",\n    "required": true,\n    "type": "string",\n    "value": {}\n  }\n]\n')),(0,l.kt)("p",null,(0,l.kt)("em",{parentName:"p"},"Fields contains multiple fields")),(0,l.kt)("h4",{id:"properties-11"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("em",{parentName:"td"},"anonymous")),(0,l.kt)("td",{parentName:"tr",align:null},"[",(0,l.kt)("a",{parentName:"td",href:"#schemaformfield"},"formField"),"]"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Fields contains multiple fields")))),(0,l.kt)("a",{id:"tocSgenericerror"},"genericError"),(0,l.kt)("h4",{id:"genericerror"},"genericError"),(0,l.kt)("a",{id:"schemagenericerror"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "error": {\n    "code": 404,\n    "debug": "The database adapter was unable to find the element",\n    "details": [\n      {\n        "property1": {},\n        "property2": {}\n      }\n    ],\n    "message": "string",\n    "reason": "string",\n    "request": "string",\n    "status": "string"\n  }\n}\n')),(0,l.kt)("p",null,(0,l.kt)("em",{parentName:"p"},"Error response")),(0,l.kt)("h4",{id:"properties-12"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"error"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemagenericerrorpayload"},"genericErrorPayload")),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"nolint:deadcode,unused")))),(0,l.kt)("a",{id:"tocSgenericerrorpayload"},"genericErrorPayload"),(0,l.kt)("h4",{id:"genericerrorpayload"},"genericErrorPayload"),(0,l.kt)("a",{id:"schemagenericerrorpayload"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "code": 404,\n  "debug": "The database adapter was unable to find the element",\n  "details": [\n    {\n      "property1": {},\n      "property2": {}\n    }\n  ],\n  "message": "string",\n  "reason": "string",\n  "request": "string",\n  "status": "string"\n}\n')),(0,l.kt)("p",null,(0,l.kt)("em",{parentName:"p"},"nolint:deadcode,unused")),(0,l.kt)("h4",{id:"properties-13"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"code"),(0,l.kt)("td",{parentName:"tr",align:null},"integer(int64)"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Code represents the error status code (404, 403, 401, ...).")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"debug"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Debug contains debug information. This is usually not available and has to be enabled.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"details"),(0,l.kt)("td",{parentName:"tr",align:null},"[object]"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb ",(0,l.kt)("strong",{parentName:"td"},"additionalProperties")),(0,l.kt)("td",{parentName:"tr",align:null},"object"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"message"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"reason"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"request"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"status"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")))),(0,l.kt)("a",{id:"tocShealthnotreadystatus"},"healthNotReadyStatus"),(0,l.kt)("h4",{id:"healthnotreadystatus"},"healthNotReadyStatus"),(0,l.kt)("a",{id:"schemahealthnotreadystatus"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "errors": {\n    "property1": "string",\n    "property2": "string"\n  }\n}\n')),(0,l.kt)("h4",{id:"properties-14"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"errors"),(0,l.kt)("td",{parentName:"tr",align:null},"object"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Errors contains a list of errors that caused the not ready status.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb ",(0,l.kt)("strong",{parentName:"td"},"additionalProperties")),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")))),(0,l.kt)("a",{id:"tocShealthstatus"},"healthStatus"),(0,l.kt)("h4",{id:"healthstatus"},"healthStatus"),(0,l.kt)("a",{id:"schemahealthstatus"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "status": "string"\n}\n')),(0,l.kt)("h4",{id:"properties-15"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"status"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},'Status always contains "ok".')))),(0,l.kt)("a",{id:"tocSloginrequest"},"loginRequest"),(0,l.kt)("h4",{id:"loginrequest"},"loginRequest"),(0,l.kt)("a",{id:"schemaloginrequest"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "active": "string",\n  "expires_at": "2020-03-25T17:39:55Z",\n  "id": "string",\n  "issued_at": "2020-03-25T17:39:55Z",\n  "methods": {\n    "property1": {\n      "config": {\n        "action": "string",\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "fields": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ],\n        "method": "string",\n        "providers": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ]\n      },\n      "method": "string"\n    },\n    "property2": {\n      "config": {\n        "action": "string",\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "fields": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ],\n        "method": "string",\n        "providers": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ]\n      },\n      "method": "string"\n    }\n  },\n  "request_url": "string"\n}\n')),(0,l.kt)("h4",{id:"properties-16"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"active"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemacredentialstype"},"CredentialsType")),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"and so on.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"expires_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"ExpiresAt is the time (UTC) when the request expires. If the user still wishes to log in, a new request has to be initiated.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"id"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemauuid"},"UUID")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"issued_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"IssuedAt is the time (UTC) when the request occurred.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"methods"),(0,l.kt)("td",{parentName:"tr",align:null},"object"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Methods contains context for all enabled login methods. If a login request has been processed, but for example the password is incorrect, this will contain error messages.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb ",(0,l.kt)("strong",{parentName:"td"},"additionalProperties")),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaloginrequestmethod"},"loginRequestMethod")),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"request_url"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"RequestURL is the initial URL that was requested from ORY Kratos. It can be used to forward information contained in the URL's path or query for example.")))),(0,l.kt)("a",{id:"tocSloginrequestmethod"},"loginRequestMethod"),(0,l.kt)("h4",{id:"loginrequestmethod"},"loginRequestMethod"),(0,l.kt)("a",{id:"schemaloginrequestmethod"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "config": {\n    "action": "string",\n    "errors": [\n      {\n        "message": "string"\n      }\n    ],\n    "fields": [\n      {\n        "disabled": true,\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "name": "string",\n        "pattern": "string",\n        "required": true,\n        "type": "string",\n        "value": {}\n      }\n    ],\n    "method": "string",\n    "providers": [\n      {\n        "disabled": true,\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "name": "string",\n        "pattern": "string",\n        "required": true,\n        "type": "string",\n        "value": {}\n      }\n    ]\n  },\n  "method": "string"\n}\n')),(0,l.kt)("h4",{id:"properties-17"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"config"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaloginrequestmethodconfig"},"loginRequestMethodConfig")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"method"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemacredentialstype"},"CredentialsType")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"and so on.")))),(0,l.kt)("a",{id:"tocSloginrequestmethodconfig"},"loginRequestMethodConfig"),(0,l.kt)("h4",{id:"loginrequestmethodconfig"},"loginRequestMethodConfig"),(0,l.kt)("a",{id:"schemaloginrequestmethodconfig"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "action": "string",\n  "errors": [\n    {\n      "message": "string"\n    }\n  ],\n  "fields": [\n    {\n      "disabled": true,\n      "errors": [\n        {\n          "message": "string"\n        }\n      ],\n      "name": "string",\n      "pattern": "string",\n      "required": true,\n      "type": "string",\n      "value": {}\n    }\n  ],\n  "method": "string",\n  "providers": [\n    {\n      "disabled": true,\n      "errors": [\n        {\n          "message": "string"\n        }\n      ],\n      "name": "string",\n      "pattern": "string",\n      "required": true,\n      "type": "string",\n      "value": {}\n    }\n  ]\n}\n')),(0,l.kt)("h4",{id:"properties-18"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"action"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Action should be used as the form action URL ",(0,l.kt)("inlineCode",{parentName:"td"},'<form action="{{ .Action }}" method="post">'),".")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"errors"),(0,l.kt)("td",{parentName:"tr",align:null},"[",(0,l.kt)("a",{parentName:"td",href:"#schemaerror"},"Error"),"]"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Errors contains all form errors. These will be duplicates of the individual field errors.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"fields"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaformfields"},"formFields")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Fields contains multiple fields")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"method"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Method is the form method (e.g. POST)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"providers"),(0,l.kt)("td",{parentName:"tr",align:null},"[",(0,l.kt)("a",{parentName:"td",href:"#schemaformfield"},"formField"),"]"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},'Providers is set for the "oidc" request method.')))),(0,l.kt)("a",{id:"tocSprofilemanagementrequest"},"profileManagementRequest"),(0,l.kt)("h4",{id:"profilemanagementrequest"},"profileManagementRequest"),(0,l.kt)("a",{id:"schemaprofilemanagementrequest"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "expires_at": "2020-03-25T17:39:55Z",\n  "form": {\n    "action": "string",\n    "errors": [\n      {\n        "message": "string"\n      }\n    ],\n    "fields": [\n      {\n        "disabled": true,\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "name": "string",\n        "pattern": "string",\n        "required": true,\n        "type": "string",\n        "value": {}\n      }\n    ],\n    "method": "string"\n  },\n  "id": "string",\n  "identity": {\n    "addresses": [\n      {\n        "expires_at": "2020-03-25T17:39:55Z",\n        "id": "string",\n        "value": "string",\n        "verified": true,\n        "verified_at": "2020-03-25T17:39:55Z",\n        "via": "string"\n      }\n    ],\n    "id": "string",\n    "traits": {},\n    "traits_schema_id": "string",\n    "traits_schema_url": "string"\n  },\n  "issued_at": "2020-03-25T17:39:55Z",\n  "request_url": "string",\n  "update_successful": true\n}\n')),(0,l.kt)("p",null,(0,l.kt)("em",{parentName:"p"},"Request presents a profile management request")),(0,l.kt)("h4",{id:"properties-19"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"expires_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"ExpiresAt is the time (UTC) when the request expires. If the user still wishes to update the profile, a new request has to be initiated.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"form"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaform"},"form")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"HTMLForm represents a HTML Form. The container can work with both HTTP Form and JSON requests")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"id"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemauuid"},"UUID")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"identity"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaidentity"},"Identity")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"issued_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"IssuedAt is the time (UTC) when the request occurred.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"request_url"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"RequestURL is the initial URL that was requested from ORY Kratos. It can be used to forward information contained in the URL's path or query for example.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"update_successful"),(0,l.kt)("td",{parentName:"tr",align:null},"boolean"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},'UpdateSuccessful, if true, indicates that the profile has been updated successfully with the provided data. Done will stay true when repeatedly checking. If set to true, done will revert back to false only when a request with invalid (e.g. "please use a valid phone number") data was sent.')))),(0,l.kt)("a",{id:"tocSregistrationrequest"},"registrationRequest"),(0,l.kt)("h4",{id:"registrationrequest"},"registrationRequest"),(0,l.kt)("a",{id:"schemaregistrationrequest"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "active": "string",\n  "expires_at": "2020-03-25T17:39:55Z",\n  "id": "string",\n  "issued_at": "2020-03-25T17:39:55Z",\n  "methods": {\n    "property1": {\n      "config": {\n        "action": "string",\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "fields": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ],\n        "method": "string",\n        "providers": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ]\n      },\n      "method": "string"\n    },\n    "property2": {\n      "config": {\n        "action": "string",\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "fields": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ],\n        "method": "string",\n        "providers": [\n          {\n            "disabled": true,\n            "errors": [\n              {\n                "message": "string"\n              }\n            ],\n            "name": "string",\n            "pattern": "string",\n            "required": true,\n            "type": "string",\n            "value": {}\n          }\n        ]\n      },\n      "method": "string"\n    }\n  },\n  "request_url": "string"\n}\n')),(0,l.kt)("h4",{id:"properties-20"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"active"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemacredentialstype"},"CredentialsType")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"and so on.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"expires_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"ExpiresAt is the time (UTC) when the request expires. If the user still wishes to log in, a new request has to be initiated.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"id"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemauuid"},"UUID")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"issued_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"IssuedAt is the time (UTC) when the request occurred.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"methods"),(0,l.kt)("td",{parentName:"tr",align:null},"object"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Methods contains context for all enabled registration methods. If a registration request has been processed, but for example the password is incorrect, this will contain error messages.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"\xbb ",(0,l.kt)("strong",{parentName:"td"},"additionalProperties")),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaregistrationrequestmethod"},"registrationRequestMethod")),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"request_url"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"RequestURL is the initial URL that was requested from ORY Kratos. It can be used to forward information contained in the URL's path or query for example.")))),(0,l.kt)("a",{id:"tocSregistrationrequestmethod"},"registrationRequestMethod"),(0,l.kt)("h4",{id:"registrationrequestmethod"},"registrationRequestMethod"),(0,l.kt)("a",{id:"schemaregistrationrequestmethod"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "config": {\n    "action": "string",\n    "errors": [\n      {\n        "message": "string"\n      }\n    ],\n    "fields": [\n      {\n        "disabled": true,\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "name": "string",\n        "pattern": "string",\n        "required": true,\n        "type": "string",\n        "value": {}\n      }\n    ],\n    "method": "string",\n    "providers": [\n      {\n        "disabled": true,\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "name": "string",\n        "pattern": "string",\n        "required": true,\n        "type": "string",\n        "value": {}\n      }\n    ]\n  },\n  "method": "string"\n}\n')),(0,l.kt)("h4",{id:"properties-21"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"config"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaregistrationrequestmethodconfig"},"registrationRequestMethodConfig")),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"method"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemacredentialstype"},"CredentialsType")),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"and so on.")))),(0,l.kt)("a",{id:"tocSregistrationrequestmethodconfig"},"registrationRequestMethodConfig"),(0,l.kt)("h4",{id:"registrationrequestmethodconfig"},"registrationRequestMethodConfig"),(0,l.kt)("a",{id:"schemaregistrationrequestmethodconfig"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "action": "string",\n  "errors": [\n    {\n      "message": "string"\n    }\n  ],\n  "fields": [\n    {\n      "disabled": true,\n      "errors": [\n        {\n          "message": "string"\n        }\n      ],\n      "name": "string",\n      "pattern": "string",\n      "required": true,\n      "type": "string",\n      "value": {}\n    }\n  ],\n  "method": "string",\n  "providers": [\n    {\n      "disabled": true,\n      "errors": [\n        {\n          "message": "string"\n        }\n      ],\n      "name": "string",\n      "pattern": "string",\n      "required": true,\n      "type": "string",\n      "value": {}\n    }\n  ]\n}\n')),(0,l.kt)("h4",{id:"properties-22"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"action"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Action should be used as the form action URL ",(0,l.kt)("inlineCode",{parentName:"td"},'<form action="{{ .Action }}" method="post">'),".")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"errors"),(0,l.kt)("td",{parentName:"tr",align:null},"[",(0,l.kt)("a",{parentName:"td",href:"#schemaerror"},"Error"),"]"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Errors contains all form errors. These will be duplicates of the individual field errors.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"fields"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaformfields"},"formFields")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Fields contains multiple fields")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"method"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Method is the form method (e.g. POST)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"providers"),(0,l.kt)("td",{parentName:"tr",align:null},"[",(0,l.kt)("a",{parentName:"td",href:"#schemaformfield"},"formField"),"]"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},'Providers is set for the "oidc" request method.')))),(0,l.kt)("a",{id:"tocSsession"},"session"),(0,l.kt)("h4",{id:"session"},"session"),(0,l.kt)("a",{id:"schemasession"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "authenticated_at": "2020-03-25T17:39:55Z",\n  "expires_at": "2020-03-25T17:39:55Z",\n  "identity": {\n    "addresses": [\n      {\n        "expires_at": "2020-03-25T17:39:55Z",\n        "id": "string",\n        "value": "string",\n        "verified": true,\n        "verified_at": "2020-03-25T17:39:55Z",\n        "via": "string"\n      }\n    ],\n    "id": "string",\n    "traits": {},\n    "traits_schema_id": "string",\n    "traits_schema_url": "string"\n  },\n  "issued_at": "2020-03-25T17:39:55Z",\n  "sid": "string"\n}\n')),(0,l.kt)("h4",{id:"properties-23"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"authenticated_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"expires_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"identity"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaidentity"},"Identity")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"issued_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"sid"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemauuid"},"UUID")),(0,l.kt)("td",{parentName:"tr",align:null},"true"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")))),(0,l.kt)("a",{id:"tocSverificationrequest"},"verificationRequest"),(0,l.kt)("h4",{id:"verificationrequest"},"verificationRequest"),(0,l.kt)("a",{id:"schemaverificationrequest"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "expires_at": "2020-03-25T17:39:55Z",\n  "form": {\n    "action": "string",\n    "errors": [\n      {\n        "message": "string"\n      }\n    ],\n    "fields": [\n      {\n        "disabled": true,\n        "errors": [\n          {\n            "message": "string"\n          }\n        ],\n        "name": "string",\n        "pattern": "string",\n        "required": true,\n        "type": "string",\n        "value": {}\n      }\n    ],\n    "method": "string"\n  },\n  "id": "string",\n  "issued_at": "2020-03-25T17:39:55Z",\n  "request_url": "string",\n  "success": true,\n  "via": "string"\n}\n')),(0,l.kt)("p",null,(0,l.kt)("em",{parentName:"p"},"Request presents a verification request")),(0,l.kt)("h4",{id:"properties-24"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"expires_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"ExpiresAt is the time (UTC) when the request expires. If the user still wishes to update the profile, a new request has to be initiated.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"form"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaform"},"form")),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"HTMLForm represents a HTML Form. The container can work with both HTTP Form and JSON requests")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"id"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemauuid"},"UUID")),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"issued_at"),(0,l.kt)("td",{parentName:"tr",align:null},"string(date-time)"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"IssuedAt is the time (UTC) when the request occurred.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"request_url"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"RequestURL is the initial URL that was requested from ORY Kratos. It can be used to forward information contained in the URL's path or query for example.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"success"),(0,l.kt)("td",{parentName:"tr",align:null},"boolean"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Success, if true, implies that the request was completed successfully.")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"via"),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#schemaverifiableaddresstype"},"VerifiableAddressType")),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"none")))),(0,l.kt)("a",{id:"tocSversion"},"version"),(0,l.kt)("h4",{id:"version-1"},"version"),(0,l.kt)("a",{id:"schemaversion"}),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-json"},'{\n  "version": "string"\n}\n')),(0,l.kt)("h4",{id:"properties-25"},"Properties"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Required"),(0,l.kt)("th",{parentName:"tr",align:null},"Restrictions"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"version"),(0,l.kt)("td",{parentName:"tr",align:null},"string"),(0,l.kt)("td",{parentName:"tr",align:null},"false"),(0,l.kt)("td",{parentName:"tr",align:null},"none"),(0,l.kt)("td",{parentName:"tr",align:null},"Version is the service's version.")))))}m.isMDXComponent=!0}}]);