Files
developer.sailpoint.com/docs/api/v3/set-password.api.mdx
2024-03-06 16:17:34 -05:00

122 lines
33 KiB
Plaintext

---
id: set-password
sidebar_label: Set Identity's Password
hide_title: true
hide_table_of_contents: true
api: eJztHGtT47b2r2hyPxTYOG8I0GHuhEBodgmwSViWhZ2i2EoisKXUsgmB2f9+z5Fsx05gl223vW0nbe8lto+OzvthSX7KyQnzacClaDu53ZxiwRlVaip9J5fPBXSkcrtXufgW6VBBR8xjIsh9zuccpmyfT3AwDO2PuSKNszaBP6FiDgkkAXSEkkk8fCh9QgXhDiDgwaxArsW1aMxvEBue2mMqRowEY8Z9IqdiPnyNKjJlrkvgLxUzIocRFLVtGYpA/ZTAqnXC9dMZ0gI0BPKOCTJiArkF4gazaGz74ARB/DxRoT3WqMkVyERJQV3EzJQyoz+vjYNgonaLRYfdMxcFV1CUuxPJRVCwpVfkjijSCS/SEHADR7YW7H9ibJbBZmlsQCFI4+o6h8DS548a9ldbOuw6Rxzm83sg87QBT//g9JkJLJzAGvlUBNbQldP1gtZBJJ8ph9muUInRoGD2u6e1XQ5Xlu0zrV3qqvS0WtUDllhKpPWNDVDsxkZiET+pufpBXDBB6nqYsoL0iNgctH3lMtyAaH02BH3gnLFVBGMaECncGRmD+hHZdc5Q/2uKehiq6SfBbMK01C5lqNlACwvQ+plwtFgQeWxqaPA3TNj+bAJ2F3vSDVnr9hokuQ84uBiRSThwuf2OzdaR9r4kDviQzIPjuCA0JA2mUgEDfSAB5QI5hxtX70Pmz0jipW0xlK9X2321+BuOt2LBWhzGrxseAi0OMz0SiI98Tyt4l9zEMm87N3lyo2To28z8ThhZuMSLWD3wmwoHHkp4xpm6MfGgUiDNsZRKSy6CJUNfekb7PrvnMlSgRjWRQksetDcDVUw5hIaJL++BLBMikrmACiAdoXwYCOyqIAlPIqWFWASGkmok3h6AtefmFcv5u0QMUyUCXtd8x5Rq452LVbMykhHLmmJGfbBGn2g1FUgfvIxQxzE2h/6MvCzyFutumTltOjc3N7f0nl4L7k2kHxC8eChoUFlo8smY+T9nHhYUs0N0oQKosUXtQPqzlyDOYnW/BKAmzC583CztHAqk3wHQHtzKgpMw4G5hnyq2VfsZae4FPtpgxNFadJnYVp5EdwJ5aEDAiMe+nCpy+GAznafI07UgEPwDdvV5PnIfrhXZI2auAojugCFd/tp6wdG/1uae+XMKQyLcGEN0o6voWhZ7fk4V4tf31q5z5/2WtX2dWzdYfRaEvkiRYcSDZDD9qy8Ni2vZiXH0F5TQBLIGxpwseUjNsyznY8CENoPuBbElaiV38L89MjcEpLUtVECFzYArCG3AUyEOgWbcmmBTsqzzBTlFkog1CQFXzV1jj2jcxcPmfvHsXbNXPgM3ALjrnB5kzJbY5s9edJ2hLYvQzGXgC1zwYK2cR94y2ogeO7LFIYevLYjKSB68icA/qIK2iHLBA/UmLoN4l4y4SeUeHctcCkEpYA/BPKmh91OfYWgKUAIYKTCtxrqEe/n4ZjquLqJOVJUJJzqYcx8iRBwp8LGC0GYiXpzR9IyY1q6OIIwkiaVpknQ3GtsLaBCq7wqDo1QYtEzOt5RGs26qAGbfZbN8VBjE9BpgCIJJbkQOvBAepQPqTQSPgX85kC6kgPR8KAeofCOIfenMcrtP+pJDKZDbDfyQ5XO2FAEWwfCITiZuVPIUbxVWwk85BXx4FH9hrQC1sRzcMjsAvEAjyCeAbIdP5/kzBau06eeWy+t5jQNFq0l7EZnMeU5mgCIyQhi+TbdLdadm16v2Zm1zs1wqm1/DEi2VKsNh7gtAL1Ypr6MqW8hM5u3DfPaPjydvLqfvRn6l+aYt7jqXrc7+UfU8uO0cTjc/tX9zix9b7ke5bb89Ycr17ibuw9a9qN05tWKt2m7t9Pr7d5td8djd+ujdTg5P37SmvxxIvj+9/NS4a3x6V2yr6cNd7dSZDY62LmudXvC2edrk77aleudXN9udTu9D0Ruc1qYN5gayeVd3aP/isX90zNtb57S/GQzftCqHI+f27af65W+d7Yttv07PL5RXnVQ+BqXyZW3rU/eh9J52dsrv/ZC3Hyr+YbPVr0zOT0tT/01dvq/Xb2eTRn92dNENGgcqrF7a98274tb5Zue3pvjYeXy3b3epqp+IT07vuOhs/lI+Grkfjh6rH47POpTfH9WK8rhmj087XqvZdYuPH9TRw6ed7vhk239Q3aNW6514448PH/r8zYA+VBt7e6i1VKn1On3FkQQCKsbx9kFGVZcX7ysnt+9rnX47+HR7WTpplkqdi8OH44vWbef2Ljg9OvE6j+fVy8oH9+T2roIkJFXWtwloRAUdWHBUuMclnu4f4T+sDfiQoymxpLUjxqWwiMMxptSE2kcM+Sg0/WuBtIN07+lwhdEy5Gqc6gg60jflVtyADOGBQyDCMxLHMYhZXih0nZKJY8FmMS4DT+TUakohGKY/VfwFLh1ptS1glo8E5DyLCiua1aIByGIQ4k1o/sbMioRgtQ8syEUWLQbUmhS3S9XNUkYXzZO9xgA61Z4HfVn+9HyvESJP+pcHHaJNFf4+YJ7MHzT3oIvl+JfaHsO/QDNqJ67LX2cdc8VEQsamfTrm0Bsn4YerOPLoJP07Q49TG2yVKrWt3BcgEvBq4Dj0mFQTZRqAQJi45Nexs1Kq4J8sA11MgmDfLMmDWboKuR8Wu5ME85xYRei6dIAMmXyxLOaX8tuCN5a2d7Z3doblKt0e1hxa367Udna2yjvlze36gA52tH4hJbLnqGAi9PD1Tfvk17Pu6VH3sNeDu632Sbv3yyHO02q0j+HH0qucswXizAxputIov6Y+o7BIf7VSaVllTd1ok0PfBzuzoLbAogs82Ly+SeQygEyMdsfFPXW58wMV6bAAvLwJJem3HQRKQP3yhCOFTJOs+y9TeqAzeBhfDMrYjzRcISM+kEShDHW+k9RSzYgZlKVP7TvA9RqPPRccxpN4CLio9tcXpmV1RsHndiq14VaN0sp2rVzfHOwMabVa2tnc0dbkMaXoyIgmmpv6Pp0tTX2E1T23iStt0MgjCMRnFGSvCdCTwxAeME99Wwcaxyvkj55jYBM2I3p1GQ2VMdlvnpFanbhgf6G+T0cLQhDWeW/JR4Fzg/jU5yMuvuZOB4etxvlxH+50D9+fH/bgF+Ja8iJ8sSkcNEsgFWxhbN7gxAxMKeQ65oI4GFSdGxHWDWAIWpQ0IDdXagaFnge2NaShC/X6RjT7MyPSqOeFf+xK2m+g51jjBVaAFhDvQT8EAX5AMXdKk2M3IEtB92cdR5LcgCRJoRldL5AGdF3IJHUJeCMghfEzTKbQjqHrGgTDEFyZ6XeKMgyIkAG3WVYXc1EuRsw4oBynlYLOAZS/psoIQiBOs5n2wsRaIhIj/QDNRnJZ6vopoWmRzkQA/S6McN0ZiNH3QcIEEjvhgSJRONIlDAQeEcMlESsdJ3W46xhiDgKpn9k0VK/wuzPsGi3NWvLgnkXOpxvA5B3YXE1RRIqyomk5DVSirtjxoUFkrrPy3ZXvrnz3lb67+DCue6KnuvQpL5c+5yJemgEmlkofX1uPkCSzfhMpMo+rIVGJ9PaiHy1k6NdOE3xR8QPrI5PKl4hvJPow9wdxKxCn/rkukEAtR8PBECIRc3Y13XOKtaCMqKrLs7WkP+BgoOKZEhFX75L3Zn4ohH5vpvLEkUyJnwIypvdsvpKXLNVYprNbVZKrSnKVjVbZ6F+TjVaV5Mp3V777z/Tdr1aSCVXaW6I6SYWeR/2ZsbToud4aQwBgvksicTmtqsVqBZGRpMbKZSuH3KBSHpSHdZvVHFpztqo7w4q9VaGb9XK9PKhV6rl0rr+a+3HiZFmfSunb6FGLGIq4e6jjQgHGpQIpnezrvxAXu4YY1vTOnbhuBpmDSD8ntWNlZ7l27EuJG9dmcYWkMjWkSO0kgZgGsB7C+jEsAFAygrgocD2CS73vKOAeAyx6f4/LPa6dV6+FscCfWY1hAKwYR4mNLJmFC9sNgUIdCVyp9yuAYXFgkg2x5gMMuoIdQXT+gdVppKI/VMmTLnJ8jBzrzQEMHT2p3Defe7/bBuJ9jBE9o+AXXvSabgc3UwloCEzMSurOVX2+qs9XOX6V4/8dOX5Vn698d+W7/0zf/Y76PKqGXq7PAeDV9TnAFkokqaVaaFx/eZmuXSWiQJs3kbYd+vp1c1yD67oCTAkJmkilgwgNxnCV2QINt03Bb0gJfRcg4v03T6Ah0MyXAp3wQrzpRMip3oRzX30m3pidQ2Z/uHRCW79nxo3/ZpKClqvP0XRNnNMTGClrTtBI470+X8UvqKfVp/cTGjR5PBEQmZG+DWROoIf4SWnogjabJR6Bt3Pf/fItfj5Uv8aHQfICH8+J76tzATwBKhfYQ/I/o7rM3m2tr3Ogp2kCFB5QgXuf0zA9LMgNhUuQ8ySDTVxliSB94qVC9hn1oVsw6xprby/666nDO+awBOPYN4AjncWndRqp0zrmuIgvw9FYM9fIrKKgWxE8iIL7PXuMkavUzi7ShYCtxd7IHGn5vUdh1nUa9OKdZ9Hm48K1sMgBx+jEMZ0jTMSibv/+olNIC1QY0V6Z4y8kdfxFS+tPOgz0jCQiOrJrX3astT/pLBRugb7QW92yw4gJaURBinQd0ia2PqDyX0LQdNBVrkYheNrvJkvvr7O0R1iVUooky0xpcQsqRk3fMTiGMMZEB5ixdcEioZYTjnHbG61ZiAs35nxNhmd9+woSK0I60v6O7dsLNOOEFk5omTihIvpN3kLDAt9GHnQcMAbQnOtfR4KI0FRcNLiejfwafVGPwfRhA6kai5rsmovdeRCMfhH9AKETGAjTWHAnq4FwTSJcmLwywopfFSxKcJleV0LOXJCboTd5VYV59O/GL3LcmL9RORXu7EdH6Rciyd8n7v6fIt4q0vwbI01UAuObye78CMlh3Kxkj3x8+1DGs2cyVqcp/qzTFAuHKb7/LETmKMSP2L6f3r3/io30+RwGOm3wUZeaDq+ml1h+s6wP0eLJYniqc4Tu8qCHNufBsXpOo5m4NMBoqrOJPeZMv5OaMBpgX5LHiCY9nQGgGcO0w5RBNPIBBtKFgl6JDrirPwFwoQ+kAJPY8OMuHsB6K6POvwf+faZPVB/EIQNK9+h0Bkb30CM0IN+KKw5XdmjSn20ObRiCpG4gklFxLsCAhaIo6NbX99TpEBcvuM1S4eMbc0H0UNHKBQgSNYK9IHbVCSNd5ur4hnDZ5vBbuCFmWWPmTlDhYK4Mt9jPZ+i0+0sYAZkwllSQ/qgYDVJFhAUk2IgbY6gWSoWSPlYEzbtHRQrvC8egF+3pab5cs/omxOqbEN9RFK2+CbH6JsTqmxCrb0Ksvgmx+ibE6psQq29C/M2+CRG9EUPdFLWasEwOzfKLWeO6ymXWuD7nc2NcAoP7T0+4aosLPl/wto7auGoyX8/RaygwQK/e6kUWMDpsIk0xbfVn+sVetDy4vA8Kl5jMCLMi/FXYz6lVurNTXBvPDaJPXXhmwdGnU7iJ/7+bu4Z/4UJOTLeCh5/x/lMuXr4HGIMX//kfNX2iLQ==
sidebar_class_name: "post api-method"
info_path: docs/api/v3/identitynow-v-3-api
custom_edit_url: "https://github.com/sailpoint-oss/developer.sailpoint.com/issues/new?assignees=&labels=&template=bug-report.md&title=%5BBug%5D+Your+Bug+Report+Here Requesting changes to 'Set Identity's Password' (set-password)"
---
import ApiTabs from "@theme/ApiTabs";
import DiscriminatorTabs from "@theme/DiscriminatorTabs";
import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import SecuritySchemes from "@theme/ApiExplorer/SecuritySchemes";
import MimeTabs from "@theme/MimeTabs";
import ParamsItem from "@theme/ParamsItem";
import ResponseSamples from "@theme/ResponseSamples";
import SchemaItem from "@theme/SchemaItem";
import SchemaTabs from "@theme/SchemaTabs";
import TabItem from "@theme/TabItem";
<h1 className={"openapi__heading"}>Set Identity's Password</h1>
<MethodEndpoint method={"post"} path={"/set-password"}></MethodEndpoint>
This API is used to set a password for an identity.
An identity can change their own password (as well as any of their accounts' passwords) if they use a token generated by their IDN user, such as a [personal access token](https://developer.sailpoint.com/idn/api/authentication#personal-access-tokens) or ["authorization_code" derived OAuth token](https://developer.sailpoint.com/idn/api/authentication#authorization-code-grant-flow).
A token with [API authority](https://developer.sailpoint.com/idn/api/authentication#client-credentials-grant-flow) can be used to change **any** identity's password or the password of any of the identity's accounts.
"API authority" refers to a token that only has the "client_credentials" grant type.
You can use this endpoint to generate an `encryptedPassword` (RSA encrypted using publicKey).
To do so, follow these steps:
1. Use [Query Password Info](https://developer.sailpoint.com/idn/api/v3/query-password-info) to get the following information: `identityId`, `sourceId`, `publicKeyId`, `publicKey`, `accounts`, and `policies`.
2. Choose an account from the previous response that you will provide as an `accountId` in your request to set an encrypted password.
3. Use [Set Identity's Password](https://developer.sailpoint.com/idn/api/v3/set-password) and provide the information you got from your earlier query. Then add this code to your request to get the encrypted password:
```java
import javax.crypto.Cipher;
import java.security.KeyFactory;
import java.security.PublicKey;
import java.security.spec.X509EncodedKeySpec;
import java util.Base64;
String encrypt(String publicKey, String toEncrypt) throws Exception {
byte[] publicKeyBytes = Base64.getDecoder().decode(publicKey);
byte[] encryptedBytes = encryptRsa(publicKeyBytes, toEncrypt.getBytes("UTF-8"));
return Base64.getEncoder().encodeToString(encryptedBytes);
}
private byte[] encryptRsa(byte[] publicKeyBytes, byte[] toEncryptBytes) throws Exception {
PublicKey key = KeyFactory.getInstance("RSA").generatePublic(new X509EncodedKeySpec(publicKeyBytes));
String transformation = "RSA/ECB/PKCS1Padding";
Cipher cipher = Cipher.getInstance(transformation);
cipher.init(1, key);
return cipher.doFinal(toEncryptBytes);
}
```
In this example, `toEncrypt` refers to the plain text password you are setting and then encrypting, and the `publicKey` refers to the publicKey you got from the first request you sent.
You can then use [Get Password Change Request Status](https://developer.sailpoint.com/idn/api/v3/get-password-change-status) to check the password change request status. To do so, you must provide the `requestId` from your earlier request to set the password.
## Request
<MimeTabs className={"openapi-tabs__mime"}><TabItem label={"application/json"} value={"application/json-schema"}><details style={{}} className={"openapi-markdown__details mime"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-mime"}><h3 className={"openapi-markdown__details-summary-header-body"}>Body</h3><strong className={"openapi-schema__required"}>required</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"identityId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The identity ID that requested the password change","example":"8a807d4c73c545510173c545f0a002ff"}}></SchemaItem><SchemaItem collapsible={false} name={"encryptedPassword"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The RSA encrypted password","example":"XzN+YwKgr2C+InkMYFMBG3UtjMEw5ZIql/XFlXo8cJNeslmkplx6vn4kd4/43IF9STBk5RnzR6XmjpEO+FwHDoiBwYZAkAZK/Iswxk4OdybG6Y4MStJCOCiK8osKr35IMMSV/mbO4wAeltoCk7daTWzTGLiI6UaT5tf+F2EgdjJZ7YqM8W8r7aUWsm3p2Xt01Y46ZRx0QaM91QruiIx2rECFT2pUO0wr+7oQ77jypATyGWRtADsu3YcvCk/6U5MqCnXMzKBcRas7NnZdSL/d5H1GglVGz3VLPMaivG4/oL4chOMmFCRl/zVsGxZ9RhN8rxsRGFFKn+rhExTi+bax3A=="}}></SchemaItem><SchemaItem collapsible={false} name={"publicKeyId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The encryption key ID","example":"YWQ2NjQ4MTItZjY0NC00MWExLWFjMjktOGNmMzU3Y2VlNjk2"}}></SchemaItem><SchemaItem collapsible={false} name={"accountId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Account ID of the account This is specified per account schema in the source configuration. It is used to distinguish accounts. More info can be found here https://community.sailpoint.com/t5/IdentityNow-Connectors/How-do-I-designate-an-account-attribute-as-the-Account-ID-for-a/ta-p/80350","example":"CN=Abby Smith,OU=Austin,OU=Americas,OU=Demo,DC=seri,DC=acme,DC=com"}}></SchemaItem><SchemaItem collapsible={false} name={"sourceId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The ID of the source for which identity is requesting the password change","example":"8a807d4c73c545510173c545d4b60246"}}></SchemaItem></ul></details></TabItem></MimeTabs><div><div><ApiTabs><TabItem label={"202"} value={"202"}><div>
Reference to the password change.
</div><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"requestId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","nullable":true,"description":"The password change request ID","example":"089899f13a8f4da7824996191587bab9"}}></SchemaItem><SchemaItem collapsible={false} name={"state"} required={false} schemaName={"string"} qualifierMessage={"**Possible values:** [`IN_PROGRESS`, `FINISHED`, `FAILED`]"} schema={{"type":"string","enum":["IN_PROGRESS","FINISHED","FAILED"],"description":"Password change state","example":"IN_PROGRESS"}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n \"requestId\": \"089899f13a8f4da7824996191587bab9\",\n \"state\": \"IN_PROGRESS\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"400"} value={"400"}><div>
Client Error - Returned if the request body is invalid.
</div><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"detailCode"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Fine-grained error code providing more detail of the error.","example":"400.1 Bad Request Content"}}></SchemaItem><SchemaItem collapsible={false} name={"trackingId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Unique tracking id for the error.","example":"e7eab60924f64aa284175b9fa3309599"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>messages</strong><span className={"openapi-schema__name"}> object[]</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>
Generic localized reason for error
</div><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"locale"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US","nullable":true}}></SchemaItem><SchemaItem collapsible={false} name={"localeOrigin"} required={false} schemaName={"LocaleOrigin"} qualifierMessage={"**Possible values:** [`DEFAULT`, `REQUEST`, `null`]"} schema={{"type":"string","enum":["DEFAULT","REQUEST",null],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT","nullable":true,"title":"LocaleOrigin"}}></SchemaItem><SchemaItem collapsible={false} name={"text"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>causes</strong><span className={"openapi-schema__name"}> object[]</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>
Plain-text descriptive reasons to provide additional detail to the text provided in the messages field
</div><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"locale"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US","nullable":true}}></SchemaItem><SchemaItem collapsible={false} name={"localeOrigin"} required={false} schemaName={"LocaleOrigin"} qualifierMessage={"**Possible values:** [`DEFAULT`, `REQUEST`, `null`]"} schema={{"type":"string","enum":["DEFAULT","REQUEST",null],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT","nullable":true,"title":"LocaleOrigin"}}></SchemaItem><SchemaItem collapsible={false} name={"text"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n \"detailCode\": \"400.1 Bad Request Content\",\n \"trackingId\": \"e7eab60924f64aa284175b9fa3309599\",\n \"messages\": [\n {\n \"locale\": \"en-US\",\n \"localeOrigin\": \"DEFAULT\",\n \"text\": \"The request was syntactically correct but its content is semantically invalid.\"\n }\n ],\n \"causes\": [\n {\n \"locale\": \"en-US\",\n \"localeOrigin\": \"DEFAULT\",\n \"text\": \"The request was syntactically correct but its content is semantically invalid.\"\n }\n ]\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"401"} value={"401"}><div>
Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.
</div><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"error"} required={false} schemaName={""} qualifierMessage={undefined} schema={{"description":"A message describing the error","example":"JWT validation failed: JWT is expired"}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n \"error\": \"JWT validation failed: JWT is expired\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"403"} value={"403"}><div>
Forbidden - Returned if the user you are running as, doesn't have access to this end-point.
</div><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"detailCode"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Fine-grained error code providing more detail of the error.","example":"400.1 Bad Request Content"}}></SchemaItem><SchemaItem collapsible={false} name={"trackingId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Unique tracking id for the error.","example":"e7eab60924f64aa284175b9fa3309599"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>messages</strong><span className={"openapi-schema__name"}> object[]</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>
Generic localized reason for error
</div><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"locale"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US","nullable":true}}></SchemaItem><SchemaItem collapsible={false} name={"localeOrigin"} required={false} schemaName={"LocaleOrigin"} qualifierMessage={"**Possible values:** [`DEFAULT`, `REQUEST`, `null`]"} schema={{"type":"string","enum":["DEFAULT","REQUEST",null],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT","nullable":true,"title":"LocaleOrigin"}}></SchemaItem><SchemaItem collapsible={false} name={"text"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>causes</strong><span className={"openapi-schema__name"}> object[]</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>
Plain-text descriptive reasons to provide additional detail to the text provided in the messages field
</div><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"locale"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US","nullable":true}}></SchemaItem><SchemaItem collapsible={false} name={"localeOrigin"} required={false} schemaName={"LocaleOrigin"} qualifierMessage={"**Possible values:** [`DEFAULT`, `REQUEST`, `null`]"} schema={{"type":"string","enum":["DEFAULT","REQUEST",null],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT","nullable":true,"title":"LocaleOrigin"}}></SchemaItem><SchemaItem collapsible={false} name={"text"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n \"detailCode\": \"400.1 Bad Request Content\",\n \"trackingId\": \"e7eab60924f64aa284175b9fa3309599\",\n \"messages\": [\n {\n \"locale\": \"en-US\",\n \"localeOrigin\": \"DEFAULT\",\n \"text\": \"The request was syntactically correct but its content is semantically invalid.\"\n }\n ],\n \"causes\": [\n {\n \"locale\": \"en-US\",\n \"localeOrigin\": \"DEFAULT\",\n \"text\": \"The request was syntactically correct but its content is semantically invalid.\"\n }\n ]\n}"} language={"json"}></ResponseSamples></TabItem><TabItem label={"403"} value={"403"}><p> An example of a 403 response object</p><ResponseSamples responseExample={"{\n \"detailCode\": \"403 Forbidden\",\n \"trackingId\": \"b21b1f7ce4da4d639f2c62a57171b427\",\n \"messages\": [\n {\n \"locale\": \"en-US\",\n \"localeOrigin\": \"DEFAULT\",\n \"text\": \"The server understood the request but refuses to authorize it.\"\n }\n ]\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"429"} value={"429"}><div>
Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.
</div><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"message"} required={false} schemaName={""} qualifierMessage={undefined} schema={{"description":"A message describing the error","example":" Rate Limit Exceeded "}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n \"message\": \" Rate Limit Exceeded \"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"500"} value={"500"}><div>
Internal Server Error - Returned if there is an unexpected error.
</div><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"detailCode"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Fine-grained error code providing more detail of the error.","example":"400.1 Bad Request Content"}}></SchemaItem><SchemaItem collapsible={false} name={"trackingId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Unique tracking id for the error.","example":"e7eab60924f64aa284175b9fa3309599"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>messages</strong><span className={"openapi-schema__name"}> object[]</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>
Generic localized reason for error
</div><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"locale"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US","nullable":true}}></SchemaItem><SchemaItem collapsible={false} name={"localeOrigin"} required={false} schemaName={"LocaleOrigin"} qualifierMessage={"**Possible values:** [`DEFAULT`, `REQUEST`, `null`]"} schema={{"type":"string","enum":["DEFAULT","REQUEST",null],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT","nullable":true,"title":"LocaleOrigin"}}></SchemaItem><SchemaItem collapsible={false} name={"text"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>causes</strong><span className={"openapi-schema__name"}> object[]</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>
Plain-text descriptive reasons to provide additional detail to the text provided in the messages field
</div><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"locale"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The locale for the message text, a BCP 47 language tag.","example":"en-US","nullable":true}}></SchemaItem><SchemaItem collapsible={false} name={"localeOrigin"} required={false} schemaName={"LocaleOrigin"} qualifierMessage={"**Possible values:** [`DEFAULT`, `REQUEST`, `null`]"} schema={{"type":"string","enum":["DEFAULT","REQUEST",null],"description":"An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.","example":"DEFAULT","nullable":true,"title":"LocaleOrigin"}}></SchemaItem><SchemaItem collapsible={false} name={"text"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Actual text of the error message in the indicated locale.","example":"The request was syntactically correct but its content is semantically invalid."}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n \"detailCode\": \"400.1 Bad Request Content\",\n \"trackingId\": \"e7eab60924f64aa284175b9fa3309599\",\n \"messages\": [\n {\n \"locale\": \"en-US\",\n \"localeOrigin\": \"DEFAULT\",\n \"text\": \"The request was syntactically correct but its content is semantically invalid.\"\n }\n ],\n \"causes\": [\n {\n \"locale\": \"en-US\",\n \"localeOrigin\": \"DEFAULT\",\n \"text\": \"The request was syntactically correct but its content is semantically invalid.\"\n }\n ]\n}"} language={"json"}></ResponseSamples></TabItem><TabItem label={"500"} value={"500"}><p> An example of a 500 response object</p><ResponseSamples responseExample={"{\n \"detailCode\": \"500.0 Internal Fault\",\n \"trackingId\": \"b21b1f7ce4da4d639f2c62a57171b427\",\n \"messages\": [\n {\n \"locale\": \"en-US\",\n \"localeOrigin\": \"DEFAULT\",\n \"text\": \"An internal fault occurred.\"\n }\n ]\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem></ApiTabs></div></div>