Create Account error via Access Request

Hi All,

We are using a web service connector and one of the http operation is Create Account. However, when I am trying to create an account using Access Request, I am getting this error:

Request completed

Exception occurred while performing 'Create' operation on identity 'null': Url: https://xxxxx/users, Message: 400 : Bad Request, HTTP Error Code: 400

Here is what my Create Account policy looks like:

Account Schema:

Create Account operation body:

{
    "user": {
        "name": "$plan.name$",
        "siteRole": "$plan.siteRole$"
    }
}

I dont know what seems to be missing in my configuration to prevent the error. Could you please help look at my existing configuration and provide feedback? Thank you so much!

Error 400 usually means that your request is formatted wrong, or it is missing required information. Check the API documentation for your Source to see what the required fields need to be in your Create Account payload.

This kind of looks like you are trying to create a user in Tableau. If that is the case, you might want to see what authentication method is setup. When Active Directory is used for authentication in Tableau, the name field needs to match the sAMAccountName of the user in your Active Directory domain.

1 Like

Thank you for the input, @Carlatto! The API call is working in postman but I will also look into the authentication method.

Hi @jasmedina

  1. Open postman and try create account via api over there . From postman itself get the curl command .

  1. Now go to ISC and use same curl command with unique static values.
  2. Try to do access request to invoke create account operation.
  3. Go directly to your target system and check if account is created.
  4. If not created, check ISC monitor to get activity id and search that activity id in search to see if all required values are getting passed.
  5. Also ensure about auth method as suggested by @Carlatto
3 Likes

@jasmedina please make sure your response mapping is correct in create HTTP operation, you need to map the unique id to correlate the newly created account.

I would recommend you go through below post, this issue was resolved here:

Web Services Create Operation Failing 404 error - Identity Security Cloud (ISC) / ISC Discussion and Questions - SailPoint Developer Community

1 Like

Based from this thread, I tried to hard code the values in the body and the access request went through. However, when I tried the $plan.attributeName$, I am getting the same error.

Hi @gourab! Can you elaborate more on step 2? Where should I put the curl command in ISC? I tried to hard code the body in the Create Account HTTP and the access request went through but when I used the $plan.attributeName, I am getting the same error.

@jasmedina I am not sure why are you adding entitlement in the body itself? It is not required.

When you request for an access, it first checks whether account is there or not, if there is no account it will create and add entitlement.

Meaning it two operations will be called, create and then add entitlement.

Hi @shekhardas1825! The attribute siteRole is a required attribute in the API call. I tagged it as an entitlement in the schema since there is no direct API call to pull in the siteRole for this application.

you can use curl on http operations General Information

1 Like

Hi @Gourab, I am still getting the same error even with curl. I also looked at the logs and it looks like it is not getting the json code in the body.

Bad Request","detail":"Required request body is missing

Hi @Carlatto, do you have a sample json body for your create account in Tableau? Thank you!

Hi @jasmedina
Could you please confirm if the request body is right?As you mentioned Tableau, I just found this page where a sample request body if given and it’s not a json

Page link: Users and Groups Methods - Tableau

Hello @jasmedina
Good day!

Once Check the create operation through Postman, Check whether account is created or not in target application.
After that write before operation rule.fetch what attribute are passing to create account ,Make it a jsonbody and set to requestEndPoint.

Thank you

hi @gourab! I just changed it to json since I am not pulling any accounts when I use xml. I also tried the XML call in postman and it is working fine.

Hi @vijayasaikoppineni! I was able to create the account successfully via postman. But when I tried it in sailpoint, the log is saying that the jsonbody is void.

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.