text: (window.webpackJsonp=window.webpackJsonp||[]).push([[44],{184:function(e,t,n){"use strict";n.r(t),n.d(t,"frontMatter",(function(){return l})),n.d(t,"metadata",(function(){return i})),n.d(t,"rightToc",(function(){return c})),n.d(t,"default",(function(){return o}));var a=n(1),r=n(9),b=(n(0),n(214)),l={title:"REST API",id:"api"},i={id:"version-v0.1/sdk/api",title:"REST API",description:"Welcome to the ORY Kratos HTTP API documentation!",source:"@site/versioned_docs/version-v0.1/sdk/api.md",permalink:"/kratos/docs/sdk/api",editUrl:"https://github.com/ory/kratos/edit/master/docs/versioned_docs/version-v0.1/sdk/api.md",version:"v0.1",lastUpdatedBy:"hackerman",lastUpdatedAt:1586177162},c=[{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:[]}],s={rightToc:c};function o(e){var t=e.components,n=Object(r.a)(e,["components"]);return Object(b.b)("wrapper",Object(a.a)({},s,n,{components:t,mdxType:"MDXLayout"}),Object(b.b)("p",null,"Welcome to the ORY Kratos HTTP API documentation!"),Object(b.b)("blockquote",null,Object(b.b)("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."),Object(b.b)("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",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://github.com/ory/docs/issues/new"}),"GitHub issue")," any time.")),Object(b.b)("a",{id:"ory-kratos-health"}),Object(b.b)("h2",{id:"health"},"health"),Object(b.b)("a",{id:"opIdisInstanceAlive"}),Object(b.b)("h3",{id:"check-alive-status"},"Check alive status"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /health/alive HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("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."),Object(b.b)("p",null,"If the service supports TLS Edge Termination, this endpoint does not require the\n",Object(b.b)("inlineCode",{parentName:"p"},"X-Forwarded-Proto")," header to be set."),Object(b.b)("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."),Object(b.b)("h4",{id:"responses"},"Responses"),Object(b.b)("a",{id:"check-alive-status-responses"}),Object(b.b)("h5",{id:"overview"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"200"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"}),"OK")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"healthStatus"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemahealthstatus"}),"healthStatus"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples"},"Examples"),Object(b.b)("h6",{id:"200-response"},"200 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),'{\n  "status": "string"\n}\n')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-isInstanceAlive"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-isInstanceAlive-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceAlive-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceAlive-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceAlive-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceAlive-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceAlive-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-isInstanceAlive-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /health/alive \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceAlive-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceAlive-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceAlive-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceAlive-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceAlive-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdisInstanceReady"}),Object(b.b)("h3",{id:"check-readiness-status"},"Check readiness status"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /health/ready HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("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."),Object(b.b)("p",null,"If the service supports TLS Edge Termination, this endpoint does not require the\n",Object(b.b)("inlineCode",{parentName:"p"},"X-Forwarded-Proto")," header to be set."),Object(b.b)("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."),Object(b.b)("h4",{id:"responses-1"},"Responses"),Object(b.b)("a",{id:"check-readiness-status-responses"}),Object(b.b)("h5",{id:"overview-1"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"200"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"}),"OK")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"healthStatus"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemahealthstatus"}),"healthStatus"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"503"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.4"}),"Service Unavailable")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"healthNotReadyStatus"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemahealthnotreadystatus"}),"healthNotReadyStatus"))))),Object(b.b)("h5",{id:"examples-1"},"Examples"),Object(b.b)("h6",{id:"200-response-1"},"200 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),'{\n  "status": "string"\n}\n')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-1"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-isInstanceReady"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-isInstanceReady-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceReady-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceReady-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceReady-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceReady-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-isInstanceReady-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-isInstanceReady-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /health/ready \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceReady-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceReady-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceReady-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceReady-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-isInstanceReady-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"ory-kratos-administrative-endpoints"}),Object(b.b)("h2",{id:"administrative-endpoints"},"Administrative Endpoints"),Object(b.b)("a",{id:"opIdlistIdentities"}),Object(b.b)("h3",{id:"list-all-identities-in-the-system"},"List all identities in the system"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /identities HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"This endpoint returns a login request's context with, for example, error details\nand other information."),Object(b.b)("p",null,"Learn how identities work in\n",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://www.ory.sh/docs/next/kratos/concepts/identity-user-model"}),"ORY Kratos' User And Identity Model Documentation"),"."),Object(b.b)("h4",{id:"responses-2"},"Responses"),Object(b.b)("a",{id:"list-all-identities-in-the-system-responses"}),Object(b.b)("h5",{id:"overview-2"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"200"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"}),"OK")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"A list of identities."),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))))),Object(b.b)("p",null,"nolint:deadcode,unused|Inline|\n|500|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error"),"|genericError|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"#schemagenericerror"}),"genericError"),"|"),Object(b.b)("a",{id:"list-all-identities-in-the-system-responseschema"}),Object(b.b)("h5",{id:"response-schema"},"Response Schema"),Object(b.b)("p",null,"Status Code ",Object(b.b)("strong",{parentName:"p"},"200")),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("em",{parentName:"td"},"anonymous")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"[",Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaidentity"}),"Identity"),"]"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb addresses"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"[",Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaverifiableaddress"}),"VerifiableAddress"),"]"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb\xbb expires_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb\xbb id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemauuid"}),"UUID"),"(uuid4)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb\xbb value"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb\xbb verified"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"boolean"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb\xbb verified_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb\xbb via"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaverifiableaddresstype"}),"VerifiableAddressType")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemauuid"}),"UUID"),"(uuid4)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb traits"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schematraits"}),"Traits")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb traits_schema_id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"TraitsSchemaID is the ID of the JSON Schema to be used for validating the identity's traits.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb traits_schema_url"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"TraitsSchemaURL is the URL of the endpoint where the identity's traits schema can be fetched from. format: url")))),Object(b.b)("h5",{id:"examples-2"},"Examples"),Object(b.b)("h6",{id:"200-response-2"},"200 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-2"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-listIdentities"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-listIdentities-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-listIdentities-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-listIdentities-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-listIdentities-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-listIdentities-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-listIdentities-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-listIdentities-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /identities \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-listIdentities-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-listIdentities-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-listIdentities-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-listIdentities-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-listIdentities-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdcreateIdentity"}),Object(b.b)("h3",{id:"create-an-identity"},"Create an identity"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"POST /identities HTTP/1.1\nContent-Type: application/json\nAccept: application/json\n\n")),Object(b.b)("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."),Object(b.b)("p",null,"Learn how identities work in\n",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://www.ory.sh/docs/next/kratos/concepts/identity-user-model"}),"ORY Kratos' User And Identity Model Documentation"),"."),Object(b.b)("h4",{id:"request-body"},"Request body"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("a",{id:"create-an-identity-parameters"}),Object(b.b)("h5",{id:"parameters"},"Parameters"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Parameter"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"In"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"body"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"body"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaidentity"}),"Identity")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")))),Object(b.b)("h4",{id:"responses-3"},"Responses"),Object(b.b)("a",{id:"create-an-identity-responses"}),Object(b.b)("h5",{id:"overview-3"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"201"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.2"}),"Created")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"A single identity."),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))))),Object(b.b)("p",null,"nolint:deadcode,unused|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"#schemaidentity"}),"Identity"),"|\n|400|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.1"}),"Bad Request"),"|genericError|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"#schemagenericerror"}),"genericError"),"|\n|500|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error"),"|genericError|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"#schemagenericerror"}),"genericError"),"|"),Object(b.b)("h5",{id:"examples-3"},"Examples"),Object(b.b)("h6",{id:"201-response"},"201 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-3"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-createIdentity"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-createIdentity-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-createIdentity-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-createIdentity-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-createIdentity-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-createIdentity-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-createIdentity-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-createIdentity-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X POST /identities \\\n  -H 'Content-Type: application/json' \\  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-createIdentity-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-createIdentity-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-createIdentity-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-createIdentity-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-createIdentity-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdgetIdentity"}),Object(b.b)("h3",{id:"get-an-identity"},"Get an identity"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /identities/{id} HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"Learn how identities work in\n",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://www.ory.sh/docs/next/kratos/concepts/identity-user-model"}),"ORY Kratos' User And Identity Model Documentation"),"."),Object(b.b)("a",{id:"get-an-identity-parameters"}),Object(b.b)("h5",{id:"parameters-1"},"Parameters"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Parameter"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"In"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"path"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"ID must be set to the ID of identity you want to get")))),Object(b.b)("h4",{id:"responses-4"},"Responses"),Object(b.b)("a",{id:"get-an-identity-responses"}),Object(b.b)("h5",{id:"overview-4"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"200"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"}),"OK")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"A single identity."),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))))),Object(b.b)("p",null,"nolint:deadcode,unused|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"#schemaidentity"}),"Identity"),"|\n|400|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.1"}),"Bad Request"),"|genericError|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"#schemagenericerror"}),"genericError"),"|\n|500|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error"),"|genericError|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"#schemagenericerror"}),"genericError"),"|"),Object(b.b)("h5",{id:"examples-4"},"Examples"),Object(b.b)("h6",{id:"200-response-3"},"200 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-4"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-getIdentity"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-getIdentity-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getIdentity-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getIdentity-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getIdentity-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getIdentity-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getIdentity-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getIdentity-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /identities/{id} \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getIdentity-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getIdentity-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getIdentity-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getIdentity-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getIdentity-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdupdateIdentity"}),Object(b.b)("h3",{id:"update-an-identity"},"Update an identity"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"PUT /identities/{id} HTTP/1.1\nContent-Type: application/json\nAccept: application/json\n\n")),Object(b.b)("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."),Object(b.b)("p",null,"The full identity payload (except credentials) is expected. This endpoint does\nnot support patching."),Object(b.b)("p",null,"Learn how identities work in\n",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://www.ory.sh/docs/next/kratos/concepts/identity-user-model"}),"ORY Kratos' User And Identity Model Documentation"),"."),Object(b.b)("h4",{id:"request-body-1"},"Request body"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("a",{id:"update-an-identity-parameters"}),Object(b.b)("h5",{id:"parameters-2"},"Parameters"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Parameter"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"In"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"path"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"ID must be set to the ID of identity you want to update")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"body"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"body"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaidentity"}),"Identity")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")))),Object(b.b)("h4",{id:"responses-5"},"Responses"),Object(b.b)("a",{id:"update-an-identity-responses"}),Object(b.b)("h5",{id:"overview-5"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"200"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"}),"OK")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"A single identity."),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))))),Object(b.b)("p",null,"nolint:deadcode,unused|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"#schemaidentity"}),"Identity"),"|\n|400|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.1"}),"Bad Request"),"|genericError|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"#schemagenericerror"}),"genericError"),"|\n|404|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"}),"Not Found"),"|genericError|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"#schemagenericerror"}),"genericError"),"|\n|500|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error"),"|genericError|",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"#schemagenericerror"}),"genericError"),"|"),Object(b.b)("h5",{id:"examples-5"},"Examples"),Object(b.b)("h6",{id:"200-response-4"},"200 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-5"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-updateIdentity"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-updateIdentity-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-updateIdentity-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-updateIdentity-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-updateIdentity-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-updateIdentity-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-updateIdentity-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-updateIdentity-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X PUT /identities/{id} \\\n  -H 'Content-Type: application/json' \\  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-updateIdentity-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-updateIdentity-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-updateIdentity-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-updateIdentity-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-updateIdentity-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIddeleteIdentity"}),Object(b.b)("h3",{id:"delete-an-identity"},"Delete an identity"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"DELETE /identities/{id} HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"This endpoint deletes an identity. This can not be undone."),Object(b.b)("p",null,"Learn how identities work in\n",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://www.ory.sh/docs/next/kratos/concepts/identity-user-model"}),"ORY Kratos' User And Identity Model Documentation"),"."),Object(b.b)("a",{id:"delete-an-identity-parameters"}),Object(b.b)("h5",{id:"parameters-3"},"Parameters"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Parameter"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"In"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"path"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"ID is the identity's ID.")))),Object(b.b)("h4",{id:"responses-6"},"Responses"),Object(b.b)("a",{id:"delete-an-identity-responses"}),Object(b.b)("h5",{id:"overview-6"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"204"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.5"}),"No Content")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"typically 201."),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"None"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null})),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"404"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"}),"Not Found")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-6"},"Examples"),Object(b.b)("h6",{id:"404-response"},"404 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-6"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-deleteIdentity"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-deleteIdentity-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-deleteIdentity-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-deleteIdentity-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-deleteIdentity-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-deleteIdentity-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-deleteIdentity-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-deleteIdentity-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X DELETE /identities/{id} \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-deleteIdentity-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-deleteIdentity-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-deleteIdentity-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-deleteIdentity-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-deleteIdentity-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"ory-kratos-public-endpoints"}),Object(b.b)("h2",{id:"public-endpoints"},"Public Endpoints"),Object(b.b)("a",{id:"opIdinitializeSelfServiceBrowserLoginFlow"}),Object(b.b)("h3",{id:"initialize-browser-based-login-user-flow"},"Initialize browser-based login user flow"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /self-service/browser/flows/login HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"This endpoint initializes a browser-based user login flow. Once initialized, the\nbrowser will be redirected to ",Object(b.b)("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 ",Object(b.b)("inlineCode",{parentName:"p"},"urls.default_redirect_url"),"."),Object(b.b)("blockquote",null,Object(b.b)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...).")),Object(b.b)("p",null,"More information can be found at\n",Object(b.b)("a",Object(a.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"),"."),Object(b.b)("h4",{id:"responses-7"},"Responses"),Object(b.b)("a",{id:"initialize-browser-based-login-user-flow-responses"}),Object(b.b)("h5",{id:"overview-7"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"302"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"}),"Found")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"typically 201."),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"None"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null})),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-7"},"Examples"),Object(b.b)("h6",{id:"500-response"},"500 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-7"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-initializeSelfServiceBrowserLoginFlow"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-initializeSelfServiceBrowserLoginFlow-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLoginFlow-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLoginFlow-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLoginFlow-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLoginFlow-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLoginFlow-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLoginFlow-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /self-service/browser/flows/login \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLoginFlow-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLoginFlow-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLoginFlow-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLoginFlow-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLoginFlow-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdinitializeSelfServiceBrowserLogoutFlow"}),Object(b.b)("h3",{id:"initialize-browser-based-logout-user-flow"},"Initialize Browser-Based Logout User Flow"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /self-service/browser/flows/logout HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"This endpoint initializes a logout flow."),Object(b.b)("blockquote",null,Object(b.b)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...).")),Object(b.b)("p",null,"On successful logout, the browser will be redirected (HTTP 302 Found) to\n",Object(b.b)("inlineCode",{parentName:"p"},"urls.default_return_to"),"."),Object(b.b)("p",null,"More information can be found at\n",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://www.ory.sh/docs/next/kratos/self-service/flows/user-logout"}),"ORY Kratos User Logout Documentation"),"."),Object(b.b)("h4",{id:"responses-8"},"Responses"),Object(b.b)("a",{id:"initialize-browser-based-logout-user-flow-responses"}),Object(b.b)("h5",{id:"overview-8"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"302"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"}),"Found")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"typically 201."),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"None"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null})),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-8"},"Examples"),Object(b.b)("h6",{id:"500-response-1"},"500 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-8"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-initializeSelfServiceBrowserLogoutFlow"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-initializeSelfServiceBrowserLogoutFlow-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLogoutFlow-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLogoutFlow-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLogoutFlow-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLogoutFlow-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserLogoutFlow-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLogoutFlow-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /self-service/browser/flows/logout \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLogoutFlow-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLogoutFlow-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLogoutFlow-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLogoutFlow-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserLogoutFlow-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdinitializeSelfServiceProfileManagementFlow"}),Object(b.b)("h3",{id:"initialize-browser-based-profile-management-flow"},"Initialize browser-based profile management flow"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /self-service/browser/flows/profile HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"This endpoint initializes a browser-based profile management flow. Once\ninitialized, the browser will be redirected to ",Object(b.b)("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."),Object(b.b)("blockquote",null,Object(b.b)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...).")),Object(b.b)("p",null,"More information can be found at\n",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://www.ory.sh/docs/next/kratos/self-service/flows/user-profile-management"}),"ORY Kratos Profile Management Documentation"),"."),Object(b.b)("h4",{id:"responses-9"},"Responses"),Object(b.b)("a",{id:"initialize-browser-based-profile-management-flow-responses"}),Object(b.b)("h5",{id:"overview-9"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"302"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"}),"Found")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"typically 201."),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"None"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null})),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-9"},"Examples"),Object(b.b)("h6",{id:"500-response-2"},"500 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-9"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-initializeSelfServiceProfileManagementFlow"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-initializeSelfServiceProfileManagementFlow-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceProfileManagementFlow-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceProfileManagementFlow-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceProfileManagementFlow-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceProfileManagementFlow-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceProfileManagementFlow-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-initializeSelfServiceProfileManagementFlow-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /self-service/browser/flows/profile \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceProfileManagementFlow-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceProfileManagementFlow-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceProfileManagementFlow-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceProfileManagementFlow-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceProfileManagementFlow-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdcompleteSelfServiceBrowserVerificationFlow"}),Object(b.b)("h3",{id:"complete-the-browser-based-profile-management-flows"},"Complete the browser-based profile management flows"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"POST /self-service/browser/flows/verification/{via}/complete?request=string HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"This endpoint completes a browser-based profile management flow. This is usually\nachieved by POSTing data to this endpoint."),Object(b.b)("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 ",Object(b.b)("inlineCode",{parentName:"p"},"url.profile_ui")," for\nfurther steps."),Object(b.b)("blockquote",null,Object(b.b)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...) and HTML Forms.")),Object(b.b)("p",null,"More information can be found at\n",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://www.ory.sh/docs/kratos/selfservice/flows/verify-email-account-activation"}),"ORY Kratos Email and Phone Verification Documentation"),"."),Object(b.b)("a",{id:"complete-the-browser-based-profile-management-flows-parameters"}),Object(b.b)("h5",{id:"parameters-4"},"Parameters"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Parameter"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"In"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"request"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"query"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Request is the Request ID")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"via"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"path"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"What to verify")))),Object(b.b)("h5",{id:"detailed-descriptions"},"Detailed descriptions"),Object(b.b)("p",null,Object(b.b)("strong",{parentName:"p"},"request"),": Request is the Request ID"),Object(b.b)("p",null,"The value for this parameter comes from ",Object(b.b)("inlineCode",{parentName:"p"},"request")," URL Query parameter sent to\nyour application (e.g. ",Object(b.b)("inlineCode",{parentName:"p"},"/verify?request=abcde"),")."),Object(b.b)("p",null,Object(b.b)("strong",{parentName:"p"},"via"),": What to verify"),Object(b.b)("p",null,'Currently only "email" is supported.'),Object(b.b)("h4",{id:"responses-10"},"Responses"),Object(b.b)("a",{id:"complete-the-browser-based-profile-management-flows-responses"}),Object(b.b)("h5",{id:"overview-10"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"302"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"}),"Found")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"typically 201."),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"None"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null})),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-10"},"Examples"),Object(b.b)("h6",{id:"500-response-3"},"500 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-10"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-completeSelfServiceBrowserVerificationFlow"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-completeSelfServiceBrowserVerificationFlow-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-completeSelfServiceBrowserVerificationFlow-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-completeSelfServiceBrowserVerificationFlow-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-completeSelfServiceBrowserVerificationFlow-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-completeSelfServiceBrowserVerificationFlow-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-completeSelfServiceBrowserVerificationFlow-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-completeSelfServiceBrowserVerificationFlow-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X POST /self-service/browser/flows/verification/{via}/complete?request=string \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-completeSelfServiceBrowserVerificationFlow-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-completeSelfServiceBrowserVerificationFlow-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-completeSelfServiceBrowserVerificationFlow-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-completeSelfServiceBrowserVerificationFlow-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-completeSelfServiceBrowserVerificationFlow-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdinitializeSelfServiceBrowserRegistrationFlow"}),Object(b.b)("h3",{id:"initialize-browser-based-registration-user-flow"},"Initialize browser-based registration user flow"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /self-service/browser/flows/registration HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"This endpoint initializes a browser-based user registration flow. Once\ninitialized, the browser will be redirected to ",Object(b.b)("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 ",Object(b.b)("inlineCode",{parentName:"p"},"urls.default_redirect_url"),"."),Object(b.b)("blockquote",null,Object(b.b)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...).")),Object(b.b)("p",null,"More information can be found at\n",Object(b.b)("a",Object(a.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"),"."),Object(b.b)("h4",{id:"responses-11"},"Responses"),Object(b.b)("a",{id:"initialize-browser-based-registration-user-flow-responses"}),Object(b.b)("h5",{id:"overview-11"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"302"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"}),"Found")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"typically 201."),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"None"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null})),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-11"},"Examples"),Object(b.b)("h6",{id:"500-response-4"},"500 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-11"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-initializeSelfServiceBrowserRegistrationFlow"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-initializeSelfServiceBrowserRegistrationFlow-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserRegistrationFlow-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserRegistrationFlow-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserRegistrationFlow-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserRegistrationFlow-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserRegistrationFlow-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-initializeSelfServiceBrowserRegistrationFlow-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /self-service/browser/flows/registration \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserRegistrationFlow-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserRegistrationFlow-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserRegistrationFlow-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserRegistrationFlow-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserRegistrationFlow-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdinitializeSelfServiceBrowserVerificationFlow"}),Object(b.b)("h3",{id:"initialize-browser-based-verification-flow"},"Initialize browser-based verification flow"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /self-service/browser/flows/verification/init/{via} HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"This endpoint initializes a browser-based profile management flow. Once\ninitialized, the browser will be redirected to ",Object(b.b)("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."),Object(b.b)("blockquote",null,Object(b.b)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...).")),Object(b.b)("p",null,"More information can be found at\n",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://www.ory.sh/docs/kratos/selfservice/flows/verify-email-account-activation"}),"ORY Kratos Email and Phone Verification Documentation"),"."),Object(b.b)("a",{id:"initialize-browser-based-verification-flow-parameters"}),Object(b.b)("h5",{id:"parameters-5"},"Parameters"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Parameter"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"In"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"via"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"path"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"What to verify")))),Object(b.b)("h5",{id:"detailed-descriptions-1"},"Detailed descriptions"),Object(b.b)("p",null,Object(b.b)("strong",{parentName:"p"},"via"),": What to verify"),Object(b.b)("p",null,'Currently only "email" is supported.'),Object(b.b)("h4",{id:"responses-12"},"Responses"),Object(b.b)("a",{id:"initialize-browser-based-verification-flow-responses"}),Object(b.b)("h5",{id:"overview-12"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"302"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"}),"Found")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"typically 201."),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"None"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null})),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-12"},"Examples"),Object(b.b)("h6",{id:"500-response-5"},"500 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-12"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-initializeSelfServiceBrowserVerificationFlow"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-initializeSelfServiceBrowserVerificationFlow-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserVerificationFlow-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserVerificationFlow-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserVerificationFlow-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserVerificationFlow-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-initializeSelfServiceBrowserVerificationFlow-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-initializeSelfServiceBrowserVerificationFlow-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /self-service/browser/flows/verification/init/{via} \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserVerificationFlow-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserVerificationFlow-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserVerificationFlow-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserVerificationFlow-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-initializeSelfServiceBrowserVerificationFlow-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdselfServiceBrowserVerify"}),Object(b.b)("h3",{id:"complete-the-browser-based-verification-flows"},"Complete the browser-based verification flows"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /self-service/browser/flows/verification/{via}/confirm/{code} HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"This endpoint completes a browser-based verification flow."),Object(b.b)("blockquote",null,Object(b.b)("p",{parentName:"blockquote"},"This endpoint is NOT INTENDED for API clients and only works with browsers\n(Chrome, Firefox, ...) and HTML Forms.")),Object(b.b)("p",null,"More information can be found at\n",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://www.ory.sh/docs/kratos/selfservice/flows/verify-email-account-activation"}),"ORY Kratos Email and Phone Verification Documentation"),"."),Object(b.b)("a",{id:"complete-the-browser-based-verification-flows-parameters"}),Object(b.b)("h5",{id:"parameters-6"},"Parameters"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Parameter"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"In"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"code"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"path"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"via"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"path"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"What to verify")))),Object(b.b)("h5",{id:"detailed-descriptions-2"},"Detailed descriptions"),Object(b.b)("p",null,Object(b.b)("strong",{parentName:"p"},"via"),": What to verify"),Object(b.b)("p",null,'Currently only "email" is supported.'),Object(b.b)("h4",{id:"responses-13"},"Responses"),Object(b.b)("a",{id:"complete-the-browser-based-verification-flows-responses"}),Object(b.b)("h5",{id:"overview-13"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"302"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.4.3"}),"Found")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Empty responses are sent when, for example, resources are deleted. The HTTP status code for empty responses is"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"typically 201."),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"None"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null})),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-13"},"Examples"),Object(b.b)("h6",{id:"500-response-6"},"500 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-13"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-selfServiceBrowserVerify"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-selfServiceBrowserVerify-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-selfServiceBrowserVerify-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-selfServiceBrowserVerify-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-selfServiceBrowserVerify-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-selfServiceBrowserVerify-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-selfServiceBrowserVerify-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-selfServiceBrowserVerify-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /self-service/browser/flows/verification/{via}/confirm/{code} \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-selfServiceBrowserVerify-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-selfServiceBrowserVerify-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-selfServiceBrowserVerify-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-selfServiceBrowserVerify-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-selfServiceBrowserVerify-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdwhoami"}),Object(b.b)("h3",{id:"check-who-the-current-http-session-belongs-to"},"Check who the current HTTP session belongs to"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /sessions/whoami HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("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."),Object(b.b)("p",null,"This endpoint is useful for reverse proxies and API Gateways."),Object(b.b)("h4",{id:"responses-14"},"Responses"),Object(b.b)("a",{id:"check-who-the-current-http-session-belongs-to-responses"}),Object(b.b)("h5",{id:"overview-14"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"200"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"}),"OK")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"session"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemasession"}),"session"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"403"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.3"}),"Forbidden")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-14"},"Examples"),Object(b.b)("h6",{id:"200-response-5"},"200 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-14"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-whoami"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-whoami-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-whoami-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-whoami-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-whoami-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-whoami-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-whoami-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-whoami-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /sessions/whoami \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-whoami-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-whoami-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-whoami-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-whoami-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-whoami-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"ory-kratos-common"}),Object(b.b)("h2",{id:"common"},"common"),Object(b.b)("a",{id:"opIdgetSelfServiceBrowserLoginRequest"}),Object(b.b)("h3",{id:"get-the-request-context-of-browser-based-login-user-flows"},"Get the request context of browser-based login user flows"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /self-service/browser/flows/requests/login?request=string HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"This endpoint returns a login request's context with, for example, error details\nand other information."),Object(b.b)("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."),Object(b.b)("p",null,"More information can be found at\n",Object(b.b)("a",Object(a.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"),"."),Object(b.b)("a",{id:"get-the-request-context-of-browser-based-login-user-flows-parameters"}),Object(b.b)("h5",{id:"parameters-7"},"Parameters"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Parameter"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"In"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"request"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"query"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Request is the Login Request ID")))),Object(b.b)("h5",{id:"detailed-descriptions-3"},"Detailed descriptions"),Object(b.b)("p",null,Object(b.b)("strong",{parentName:"p"},"request"),": Request is the Login Request ID"),Object(b.b)("p",null,"The value for this parameter comes from ",Object(b.b)("inlineCode",{parentName:"p"},"request")," URL Query parameter sent to\nyour application (e.g. ",Object(b.b)("inlineCode",{parentName:"p"},"/login?request=abcde"),")."),Object(b.b)("h4",{id:"responses-15"},"Responses"),Object(b.b)("a",{id:"get-the-request-context-of-browser-based-login-user-flows-responses"}),Object(b.b)("h5",{id:"overview-15"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"200"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"}),"OK")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"loginRequest"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaloginrequest"}),"loginRequest"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"403"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.3"}),"Forbidden")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"404"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"}),"Not Found")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-15"},"Examples"),Object(b.b)("h6",{id:"200-response-6"},"200 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-15"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-getSelfServiceBrowserLoginRequest"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-getSelfServiceBrowserLoginRequest-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserLoginRequest-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserLoginRequest-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserLoginRequest-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserLoginRequest-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserLoginRequest-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getSelfServiceBrowserLoginRequest-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /self-service/browser/flows/requests/login?request=string \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserLoginRequest-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserLoginRequest-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserLoginRequest-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserLoginRequest-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserLoginRequest-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdgetSelfServiceBrowserProfileManagementRequest"}),Object(b.b)("h3",{id:"get-the-request-context-of-browser-based-profile-management-flows"},"Get the request context of browser-based profile management flows"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /self-service/browser/flows/requests/profile?request=string HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("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."),Object(b.b)("p",null,"More information can be found at\n",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://www.ory.sh/docs/next/kratos/self-service/flows/user-profile-management"}),"ORY Kratos Profile Management Documentation"),"."),Object(b.b)("a",{id:"get-the-request-context-of-browser-based-profile-management-flows-parameters"}),Object(b.b)("h5",{id:"parameters-8"},"Parameters"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Parameter"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"In"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"request"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"query"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Request is the Login Request ID")))),Object(b.b)("h5",{id:"detailed-descriptions-4"},"Detailed descriptions"),Object(b.b)("p",null,Object(b.b)("strong",{parentName:"p"},"request"),": Request is the Login Request ID"),Object(b.b)("p",null,"The value for this parameter comes from ",Object(b.b)("inlineCode",{parentName:"p"},"request")," URL Query parameter sent to\nyour application (e.g. ",Object(b.b)("inlineCode",{parentName:"p"},"/login?request=abcde"),")."),Object(b.b)("h4",{id:"responses-16"},"Responses"),Object(b.b)("a",{id:"get-the-request-context-of-browser-based-profile-management-flows-responses"}),Object(b.b)("h5",{id:"overview-16"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"200"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"}),"OK")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"profileManagementRequest"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaprofilemanagementrequest"}),"profileManagementRequest"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"403"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.3"}),"Forbidden")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"404"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"}),"Not Found")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-16"},"Examples"),Object(b.b)("h6",{id:"200-response-7"},"200 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-16"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-getSelfServiceBrowserProfileManagementRequest"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-getSelfServiceBrowserProfileManagementRequest-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserProfileManagementRequest-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserProfileManagementRequest-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserProfileManagementRequest-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserProfileManagementRequest-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserProfileManagementRequest-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getSelfServiceBrowserProfileManagementRequest-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /self-service/browser/flows/requests/profile?request=string \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserProfileManagementRequest-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserProfileManagementRequest-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserProfileManagementRequest-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserProfileManagementRequest-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserProfileManagementRequest-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdgetSelfServiceBrowserRegistrationRequest"}),Object(b.b)("h3",{id:"get-the-request-context-of-browser-based-registration-user-flows"},"Get the request context of browser-based registration user flows"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /self-service/browser/flows/requests/registration?request=string HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"This endpoint returns a registration request's context with, for example, error\ndetails and other information."),Object(b.b)("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."),Object(b.b)("p",null,"More information can be found at\n",Object(b.b)("a",Object(a.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"),"."),Object(b.b)("a",{id:"get-the-request-context-of-browser-based-registration-user-flows-parameters"}),Object(b.b)("h5",{id:"parameters-9"},"Parameters"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Parameter"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"In"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"request"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"query"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Request is the Registration Request ID")))),Object(b.b)("h5",{id:"detailed-descriptions-5"},"Detailed descriptions"),Object(b.b)("p",null,Object(b.b)("strong",{parentName:"p"},"request"),": Request is the Registration Request ID"),Object(b.b)("p",null,"The value for this parameter comes from ",Object(b.b)("inlineCode",{parentName:"p"},"request")," URL Query parameter sent to\nyour application (e.g. ",Object(b.b)("inlineCode",{parentName:"p"},"/registration?request=abcde"),")."),Object(b.b)("h4",{id:"responses-17"},"Responses"),Object(b.b)("a",{id:"get-the-request-context-of-browser-based-registration-user-flows-responses"}),Object(b.b)("h5",{id:"overview-17"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"200"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"}),"OK")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"registrationRequest"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaregistrationrequest"}),"registrationRequest"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"403"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.3"}),"Forbidden")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"404"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"}),"Not Found")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-17"},"Examples"),Object(b.b)("h6",{id:"200-response-8"},"200 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-17"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-getSelfServiceBrowserRegistrationRequest"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-getSelfServiceBrowserRegistrationRequest-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserRegistrationRequest-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserRegistrationRequest-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserRegistrationRequest-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserRegistrationRequest-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceBrowserRegistrationRequest-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getSelfServiceBrowserRegistrationRequest-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /self-service/browser/flows/requests/registration?request=string \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserRegistrationRequest-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserRegistrationRequest-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserRegistrationRequest-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserRegistrationRequest-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceBrowserRegistrationRequest-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdgetSelfServiceVerificationRequest"}),Object(b.b)("h3",{id:"get-the-request-context-of-browser-based-verification-flows"},"Get the request context of browser-based verification flows"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /self-service/browser/flows/requests/verification?request=string HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("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."),Object(b.b)("p",null,"More information can be found at\n",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://www.ory.sh/docs/kratos/selfservice/flows/verify-email-account-activation"}),"ORY Kratos Email and Phone Verification Documentation"),"."),Object(b.b)("a",{id:"get-the-request-context-of-browser-based-verification-flows-parameters"}),Object(b.b)("h5",{id:"parameters-10"},"Parameters"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Parameter"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"In"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"request"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"query"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Request is the Request ID")))),Object(b.b)("h5",{id:"detailed-descriptions-6"},"Detailed descriptions"),Object(b.b)("p",null,Object(b.b)("strong",{parentName:"p"},"request"),": Request is the Request ID"),Object(b.b)("p",null,"The value for this parameter comes from ",Object(b.b)("inlineCode",{parentName:"p"},"request")," URL Query parameter sent to\nyour application (e.g. ",Object(b.b)("inlineCode",{parentName:"p"},"/verify?request=abcde"),")."),Object(b.b)("h4",{id:"responses-18"},"Responses"),Object(b.b)("a",{id:"get-the-request-context-of-browser-based-verification-flows-responses"}),Object(b.b)("h5",{id:"overview-18"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"200"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"}),"OK")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"verificationRequest"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaverificationrequest"}),"verificationRequest"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"403"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.3"}),"Forbidden")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"404"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"}),"Not Found")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-18"},"Examples"),Object(b.b)("h6",{id:"200-response-9"},"200 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-18"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-getSelfServiceVerificationRequest"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-getSelfServiceVerificationRequest-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceVerificationRequest-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceVerificationRequest-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceVerificationRequest-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceVerificationRequest-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceVerificationRequest-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getSelfServiceVerificationRequest-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /self-service/browser/flows/requests/verification?request=string \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceVerificationRequest-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceVerificationRequest-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceVerificationRequest-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceVerificationRequest-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceVerificationRequest-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"opIdgetSelfServiceError"}),Object(b.b)("h3",{id:"get-user-facing-self-service-errors"},"Get user-facing self-service errors"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /self-service/errors HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"This endpoint returns the error associated with a user-facing self service\nerrors."),Object(b.b)("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."),Object(b.b)("p",null,"More information can be found at\n",Object(b.b)("a",Object(a.a)({parentName:"p"},{href:"https://www.ory.sh/docs/kratos/self-service/flows/user-facing-errors"}),"ORY Kratos User User Facing Error Documentation"),"."),Object(b.b)("a",{id:"get-user-facing-self-service-errors-parameters"}),Object(b.b)("h5",{id:"parameters-11"},"Parameters"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Parameter"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"In"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"query"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")))),Object(b.b)("h4",{id:"responses-19"},"Responses"),Object(b.b)("a",{id:"get-user-facing-self-service-errors-responses"}),Object(b.b)("h5",{id:"overview-19"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"200"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"}),"OK")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"User-facing error response"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaerrorcontainer"}),"errorContainer"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"403"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.3"}),"Forbidden")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"404"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.5.4"}),"Not Found")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"500"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.6.1"}),"Internal Server Error")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"genericError"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerror"}),"genericError"))))),Object(b.b)("h5",{id:"examples-19"},"Examples"),Object(b.b)("h6",{id:"200-response-10"},"200 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),'{\n  "errors": {},\n  "id": "string"\n}\n')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-19"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-getSelfServiceError"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-getSelfServiceError-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceError-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceError-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceError-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceError-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getSelfServiceError-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getSelfServiceError-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /self-service/errors \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceError-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceError-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceError-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceError-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getSelfServiceError-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("a",{id:"ory-kratos-version"}),Object(b.b)("h2",{id:"version"},"version"),Object(b.b)("a",{id:"opIdgetVersion"}),Object(b.b)("h3",{id:"get-service-version"},"Get service version"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{}),"GET /version HTTP/1.1\nAccept: application/json\n\n")),Object(b.b)("p",null,"This endpoint returns the service version typically notated using semantic\nversioning."),Object(b.b)("p",null,"If the service supports TLS Edge Termination, this endpoint does not require the\n",Object(b.b)("inlineCode",{parentName:"p"},"X-Forwarded-Proto")," header to be set."),Object(b.b)("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."),Object(b.b)("h4",{id:"responses-20"},"Responses"),Object(b.b)("a",{id:"get-service-version-responses"}),Object(b.b)("h5",{id:"overview-20"},"Overview"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Status"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Meaning"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Schema"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"200"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"https://tools.ietf.org/html/rfc7231#section-6.3.1"}),"OK")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"version"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaversion"}),"version"))))),Object(b.b)("h5",{id:"examples-20"},"Examples"),Object(b.b)("h6",{id:"200-response-11"},"200 response"),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),'{\n  "version": "string"\n}\n')),Object(b.b)("aside",{class:"success"},"This operation does not require authentication"),Object(b.b)("h4",{id:"code-samples-20"},"Code samples"),Object(b.b)("div",{class:"tabs",id:"tab-getVersion"},Object(b.b)("nav",{class:"tabs-nav"},Object(b.b)("ul",{class:"nav nav-tabs au-link-list au-link-list--inline"},Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link active",role:"tab",href:"#tab-getVersion-shell"},"Shell")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getVersion-go"},"Go")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getVersion-node"},"Node.js")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getVersion-java"},"Java")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getVersion-python"},"Python")),Object(b.b)("li",{class:"nav-item"},Object(b.b)("a",{class:"nav-link",role:"tab",href:"#tab-getVersion-ruby"},"Ruby")))),Object(b.b)("div",{class:"tab-content"},Object(b.b)("div",{class:"tab-pane active",role:"tabpanel",id:"tab-getVersion-shell"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-shell"}),"curl -X GET /version \\\n  -H 'Accept: application/json'\n"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getVersion-go"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getVersion-node"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getVersion-java"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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'))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getVersion-python"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))),Object(b.b)("div",{class:"tab-pane",role:"tabpanel",id:"tab-getVersion-ruby"},Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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"))))),Object(b.b)("h2",{id:"schemas"},"Schemas"),Object(b.b)("a",{id:"tocScredentialstype"},"CredentialsType"),Object(b.b)("h4",{id:"credentialstype"},"CredentialsType"),Object(b.b)("a",{id:"schemacredentialstype"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),'"string"\n')),Object(b.b)("p",null,Object(b.b)("em",{parentName:"p"},"CredentialsType represents several different credential types, like password\ncredentials, passwordless credentials,")),Object(b.b)("h4",{id:"properties"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"CredentialsType represents several different credential types, like password credentials, passwordless credentials,"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"and so on.")))),Object(b.b)("a",{id:"tocSerror"},"Error"),Object(b.b)("h4",{id:"error"},"Error"),Object(b.b)("a",{id:"schemaerror"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),'{\n  "message": "string"\n}\n')),Object(b.b)("h4",{id:"properties-1"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"message"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Code FormErrorCode ",Object(b.b)("inlineCode",{parentName:"td"},'json:"id,omitempty"'))))),Object(b.b)("a",{id:"tocSidentity"},"Identity"),Object(b.b)("h4",{id:"identity"},"Identity"),Object(b.b)("a",{id:"schemaidentity"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("h4",{id:"properties-2"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"addresses"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"[",Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaverifiableaddress"}),"VerifiableAddress"),"]"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemauuid"}),"UUID")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"traits"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schematraits"}),"Traits")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"traits_schema_id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"TraitsSchemaID is the ID of the JSON Schema to be used for validating the identity's traits.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"traits_schema_url"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"TraitsSchemaURL is the URL of the endpoint where the identity's traits schema can be fetched from. format: url")))),Object(b.b)("a",{id:"tocStraits"},"Traits"),Object(b.b)("h4",{id:"traits"},"Traits"),Object(b.b)("a",{id:"schematraits"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),"{}\n")),Object(b.b)("h4",{id:"properties-3"},"Properties"),Object(b.b)("p",null,Object(b.b)("em",{parentName:"p"},"None")),Object(b.b)("a",{id:"tocSuuid"},"UUID"),Object(b.b)("h4",{id:"uuid"},"UUID"),Object(b.b)("a",{id:"schemauuid"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),'"string"\n')),Object(b.b)("h4",{id:"properties-4"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("em",{parentName:"td"},"anonymous")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(uuid4)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")))),Object(b.b)("a",{id:"tocSverifiableaddress"},"VerifiableAddress"),Object(b.b)("h4",{id:"verifiableaddress"},"VerifiableAddress"),Object(b.b)("a",{id:"schemaverifiableaddress"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("h4",{id:"properties-5"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"expires_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemauuid"}),"UUID")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"value"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"verified"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"boolean"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"verified_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"via"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaverifiableaddresstype"}),"VerifiableAddressType")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")))),Object(b.b)("a",{id:"tocSverifiableaddresstype"},"VerifiableAddressType"),Object(b.b)("h4",{id:"verifiableaddresstype"},"VerifiableAddressType"),Object(b.b)("a",{id:"schemaverifiableaddresstype"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),'"string"\n')),Object(b.b)("h4",{id:"properties-6"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("em",{parentName:"td"},"anonymous")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")))),Object(b.b)("a",{id:"tocScompleteselfservicebrowserprofilemanagementflowpayload"},"completeSelfServiceBrowserProfileManagementFlowPayload"),Object(b.b)("h4",{id:"completeselfservicebrowserprofilemanagementflowpayload"},"completeSelfServiceBrowserProfileManagementFlowPayload"),Object(b.b)("a",{id:"schemacompleteselfservicebrowserprofilemanagementflowpayload"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),'{\n  "traits": {}\n}\n')),Object(b.b)("h4",{id:"properties-7"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"traits"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"object"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Traits contains all of the identity's traits. type: string format: binary")))),Object(b.b)("a",{id:"tocSerrorcontainer"},"errorContainer"),Object(b.b)("h4",{id:"errorcontainer"},"errorContainer"),Object(b.b)("a",{id:"schemaerrorcontainer"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),'{\n  "errors": {},\n  "id": "string"\n}\n')),Object(b.b)("h4",{id:"properties-8"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"errors"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"object"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemauuid"}),"UUID")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")))),Object(b.b)("a",{id:"tocSform"},"form"),Object(b.b)("h4",{id:"form"},"form"),Object(b.b)("a",{id:"schemaform"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("p",null,Object(b.b)("em",{parentName:"p"},"HTMLForm represents a HTML Form. The container can work with both HTTP Form and\nJSON requests")),Object(b.b)("h4",{id:"properties-9"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"action"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Action should be used as the form action URL ",Object(b.b)("inlineCode",{parentName:"td"},'<form action="{{ .Action }}" method="post">'),".")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"errors"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"[",Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaerror"}),"Error"),"]"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Errors contains all form errors. These will be duplicates of the individual field errors.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"fields"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaformfields"}),"formFields")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Fields contains multiple fields")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"method"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Method is the form method (e.g. POST)")))),Object(b.b)("a",{id:"tocSformfield"},"formField"),Object(b.b)("h4",{id:"formfield"},"formField"),Object(b.b)("a",{id:"schemaformfield"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("p",null,Object(b.b)("em",{parentName:"p"},"Field represents a HTML Form Field")),Object(b.b)("h4",{id:"properties-10"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"disabled"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"boolean"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Disabled is the equivalent of ",Object(b.b)("inlineCode",{parentName:"td"},'<input disabled="{{.Disabled}}">'))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"errors"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"[",Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaerror"}),"Error"),"]"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Errors contains all validation errors this particular field has caused.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"name"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Name is the equivalent of ",Object(b.b)("inlineCode",{parentName:"td"},'<input name="{{.Name}}">'))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"pattern"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Pattern is the equivalent of ",Object(b.b)("inlineCode",{parentName:"td"},'<input pattern="{{.Pattern}}">'))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"required"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"boolean"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Required is the equivalent of ",Object(b.b)("inlineCode",{parentName:"td"},'<input required="{{.Required}}">'))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"type"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Type is the equivalent of ",Object(b.b)("inlineCode",{parentName:"td"},'<input type="{{.Type}}">'))),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"value"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"object"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Value is the equivalent of ",Object(b.b)("inlineCode",{parentName:"td"},'<input value="{{.Value}}">'))))),Object(b.b)("a",{id:"tocSformfields"},"formFields"),Object(b.b)("h4",{id:"formfields"},"formFields"),Object(b.b)("a",{id:"schemaformfields"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("p",null,Object(b.b)("em",{parentName:"p"},"Fields contains multiple fields")),Object(b.b)("h4",{id:"properties-11"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("em",{parentName:"td"},"anonymous")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"[",Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaformfield"}),"formField"),"]"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Fields contains multiple fields")))),Object(b.b)("a",{id:"tocSgenericerror"},"genericError"),Object(b.b)("h4",{id:"genericerror"},"genericError"),Object(b.b)("a",{id:"schemagenericerror"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("p",null,Object(b.b)("em",{parentName:"p"},"Error response")),Object(b.b)("h4",{id:"properties-12"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"error"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemagenericerrorpayload"}),"genericErrorPayload")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"nolint:deadcode,unused")))),Object(b.b)("a",{id:"tocSgenericerrorpayload"},"genericErrorPayload"),Object(b.b)("h4",{id:"genericerrorpayload"},"genericErrorPayload"),Object(b.b)("a",{id:"schemagenericerrorpayload"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("p",null,Object(b.b)("em",{parentName:"p"},"nolint:deadcode,unused")),Object(b.b)("h4",{id:"properties-13"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"code"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"integer(int64)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Code represents the error status code (404, 403, 401, ...).")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"debug"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Debug contains debug information. This is usually not available and has to be enabled.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"details"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"[object]"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb ",Object(b.b)("strong",{parentName:"td"},"additionalProperties")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"object"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"message"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"reason"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"request"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"status"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")))),Object(b.b)("a",{id:"tocShealthnotreadystatus"},"healthNotReadyStatus"),Object(b.b)("h4",{id:"healthnotreadystatus"},"healthNotReadyStatus"),Object(b.b)("a",{id:"schemahealthnotreadystatus"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),'{\n  "errors": {\n    "property1": "string",\n    "property2": "string"\n  }\n}\n')),Object(b.b)("h4",{id:"properties-14"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"errors"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"object"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Errors contains a list of errors that caused the not ready status.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb ",Object(b.b)("strong",{parentName:"td"},"additionalProperties")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")))),Object(b.b)("a",{id:"tocShealthstatus"},"healthStatus"),Object(b.b)("h4",{id:"healthstatus"},"healthStatus"),Object(b.b)("a",{id:"schemahealthstatus"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),'{\n  "status": "string"\n}\n')),Object(b.b)("h4",{id:"properties-15"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"status"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),'Status always contains "ok".')))),Object(b.b)("a",{id:"tocSloginrequest"},"loginRequest"),Object(b.b)("h4",{id:"loginrequest"},"loginRequest"),Object(b.b)("a",{id:"schemaloginrequest"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("h4",{id:"properties-16"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"active"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemacredentialstype"}),"CredentialsType")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"and so on.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"expires_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({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.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemauuid"}),"UUID")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"issued_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"IssuedAt is the time (UTC) when the request occurred.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"methods"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"object"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({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.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb ",Object(b.b)("strong",{parentName:"td"},"additionalProperties")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaloginrequestmethod"}),"loginRequestMethod")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"request_url"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({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.")))),Object(b.b)("a",{id:"tocSloginrequestmethod"},"loginRequestMethod"),Object(b.b)("h4",{id:"loginrequestmethod"},"loginRequestMethod"),Object(b.b)("a",{id:"schemaloginrequestmethod"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("h4",{id:"properties-17"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"config"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaloginrequestmethodconfig"}),"loginRequestMethodConfig")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"method"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemacredentialstype"}),"CredentialsType")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"and so on.")))),Object(b.b)("a",{id:"tocSloginrequestmethodconfig"},"loginRequestMethodConfig"),Object(b.b)("h4",{id:"loginrequestmethodconfig"},"loginRequestMethodConfig"),Object(b.b)("a",{id:"schemaloginrequestmethodconfig"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("h4",{id:"properties-18"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"action"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Action should be used as the form action URL ",Object(b.b)("inlineCode",{parentName:"td"},'<form action="{{ .Action }}" method="post">'),".")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"errors"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"[",Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaerror"}),"Error"),"]"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Errors contains all form errors. These will be duplicates of the individual field errors.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"fields"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaformfields"}),"formFields")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Fields contains multiple fields")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"method"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Method is the form method (e.g. POST)")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"providers"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"[",Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaformfield"}),"formField"),"]"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),'Providers is set for the "oidc" request method.')))),Object(b.b)("a",{id:"tocSprofilemanagementrequest"},"profileManagementRequest"),Object(b.b)("h4",{id:"profilemanagementrequest"},"profileManagementRequest"),Object(b.b)("a",{id:"schemaprofilemanagementrequest"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("p",null,Object(b.b)("em",{parentName:"p"},"Request presents a profile management request")),Object(b.b)("h4",{id:"properties-19"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"expires_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({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.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"form"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaform"}),"form")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"HTMLForm represents a HTML Form. The container can work with both HTTP Form and JSON requests")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemauuid"}),"UUID")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"identity"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaidentity"}),"Identity")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"issued_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"IssuedAt is the time (UTC) when the request occurred.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"request_url"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({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.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"update_successful"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"boolean"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({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.')))),Object(b.b)("a",{id:"tocSregistrationrequest"},"registrationRequest"),Object(b.b)("h4",{id:"registrationrequest"},"registrationRequest"),Object(b.b)("a",{id:"schemaregistrationrequest"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("h4",{id:"properties-20"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"active"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemacredentialstype"}),"CredentialsType")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"and so on.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"expires_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({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.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemauuid"}),"UUID")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"issued_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"IssuedAt is the time (UTC) when the request occurred.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"methods"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"object"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({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.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"\xbb ",Object(b.b)("strong",{parentName:"td"},"additionalProperties")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaregistrationrequestmethod"}),"registrationRequestMethod")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"request_url"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({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.")))),Object(b.b)("a",{id:"tocSregistrationrequestmethod"},"registrationRequestMethod"),Object(b.b)("h4",{id:"registrationrequestmethod"},"registrationRequestMethod"),Object(b.b)("a",{id:"schemaregistrationrequestmethod"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("h4",{id:"properties-21"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"config"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaregistrationrequestmethodconfig"}),"registrationRequestMethodConfig")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"method"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemacredentialstype"}),"CredentialsType")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"and so on.")))),Object(b.b)("a",{id:"tocSregistrationrequestmethodconfig"},"registrationRequestMethodConfig"),Object(b.b)("h4",{id:"registrationrequestmethodconfig"},"registrationRequestMethodConfig"),Object(b.b)("a",{id:"schemaregistrationrequestmethodconfig"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("h4",{id:"properties-22"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"action"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Action should be used as the form action URL ",Object(b.b)("inlineCode",{parentName:"td"},'<form action="{{ .Action }}" method="post">'),".")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"errors"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"[",Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaerror"}),"Error"),"]"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Errors contains all form errors. These will be duplicates of the individual field errors.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"fields"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaformfields"}),"formFields")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Fields contains multiple fields")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"method"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Method is the form method (e.g. POST)")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"providers"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"[",Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaformfield"}),"formField"),"]"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),'Providers is set for the "oidc" request method.')))),Object(b.b)("a",{id:"tocSsession"},"session"),Object(b.b)("h4",{id:"session"},"session"),Object(b.b)("a",{id:"schemasession"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("h4",{id:"properties-23"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"authenticated_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"expires_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"identity"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaidentity"}),"Identity")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"issued_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"sid"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemauuid"}),"UUID")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"true"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")))),Object(b.b)("a",{id:"tocSverificationrequest"},"verificationRequest"),Object(b.b)("h4",{id:"verificationrequest"},"verificationRequest"),Object(b.b)("a",{id:"schemaverificationrequest"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({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')),Object(b.b)("p",null,Object(b.b)("em",{parentName:"p"},"Request presents a verification request")),Object(b.b)("h4",{id:"properties-24"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"expires_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({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.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"form"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaform"}),"form")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"HTMLForm represents a HTML Form. The container can work with both HTTP Form and JSON requests")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"id"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemauuid"}),"UUID")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"issued_at"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string(date-time)"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"IssuedAt is the time (UTC) when the request occurred.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"request_url"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({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.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"success"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"boolean"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Success, if true, implies that the request was completed successfully.")),Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"via"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),Object(b.b)("a",Object(a.a)({parentName:"td"},{href:"#schemaverifiableaddresstype"}),"VerifiableAddressType")),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none")))),Object(b.b)("a",{id:"tocSversion"},"version"),Object(b.b)("h4",{id:"version-1"},"version"),Object(b.b)("a",{id:"schemaversion"}),Object(b.b)("pre",null,Object(b.b)("code",Object(a.a)({parentName:"pre"},{className:"language-json"}),'{\n  "version": "string"\n}\n')),Object(b.b)("h4",{id:"properties-25"},"Properties"),Object(b.b)("table",null,Object(b.b)("thead",{parentName:"table"},Object(b.b)("tr",{parentName:"thead"},Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Name"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Type"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Required"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Restrictions"),Object(b.b)("th",Object(a.a)({parentName:"tr"},{align:null}),"Description"))),Object(b.b)("tbody",{parentName:"table"},Object(b.b)("tr",{parentName:"tbody"},Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"version"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"string"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"false"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"none"),Object(b.b)("td",Object(a.a)({parentName:"tr"},{align:null}),"Version is the service's version.")))))}o.isMDXComponent=!0},214:function(e,t,n){"use strict";n.d(t,"a",(function(){return p})),n.d(t,"b",(function(){return d}));var a=n(0),r=n.n(a);function b(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){b(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 c(e,t){if(null==e)return{};var n,a,r=function(e,t){if(null==e)return{};var n,a,r={},b=Object.keys(e);for(a=0;a<b.length;a++)n=b[a],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var b=Object.getOwnPropertySymbols(e);for(a=0;a<b.length;a++)n=b[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=r.a.createContext({}),o=function(e){var t=r.a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):i({},t,{},e)),n},p=function(e){var t=o(e.components);return r.a.createElement(s.Provider,{value:t},e.children)},j={inlineCode:"code",wrapper:function(e){var t=e.children;return r.a.createElement(r.a.Fragment,{},t)}},O=Object(a.forwardRef)((function(e,t){var n=e.components,a=e.mdxType,b=e.originalType,l=e.parentName,s=c(e,["components","mdxType","originalType","parentName"]),p=o(n),O=a,d=p["".concat(l,".").concat(O)]||p[O]||j[O]||b;return n?r.a.createElement(d,i({ref:t},s,{components:n})):r.a.createElement(d,i({ref:t},s))}));function d(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var b=n.length,l=new Array(b);l[0]=O;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i.mdxType="string"==typeof e?e:a,l[1]=i;for(var s=2;s<b;s++)l[s]=n[s];return r.a.createElement.apply(null,l)}return r.a.createElement.apply(null,n)}O.displayName="MDXCreateElement"}}]);