Import Identity Profiles
POSThttps://sailpoint.api.identitynow.com/v3/identity-profiles/import
This imports previously exported identity profiles.
Request
- application/json
Body arrayrequired
Previously exported Identity Profiles.
- Array [
- ]
Version or object from the target service.
1
self object
object object
Responses
- 200
- 400
- 401
- 403
- 429
- 500
The result of importing Identity Profiles.
- application/json
- Schema
- Example (auto)
Schema
infos object[]required
warnings object[]required
errors object[]required
importedObjects object[]required
{
"infos": [
{
"key": "UNKNOWN_REFERENCE_RESOLVER",
"text": "Unable to resolve reference for object [type: IDENTITY, id: 2c91808c746e9c9601747d6507332ecz, name: random identity]",
"details": {
"details": "message details"
}
}
],
"warnings": [
{
"key": "UNKNOWN_REFERENCE_RESOLVER",
"text": "Unable to resolve reference for object [type: IDENTITY, id: 2c91808c746e9c9601747d6507332ecz, name: random identity]",
"details": {
"details": "message details"
}
}
],
"errors": [
{
"key": "UNKNOWN_REFERENCE_RESOLVER",
"text": "Unable to resolve reference for object [type: IDENTITY, id: 2c91808c746e9c9601747d6507332ecz, name: random identity]",
"details": {
"details": "message details"
}
}
],
"importedObjects": [
{
"type": "SOURCE",
"id": "2c9180835d191a86015d28455b4b232a",
"name": "HR Active Directory"
}
]
}
Client Error - Returned if the request body is invalid.
- application/json
- Schema
- Example (auto)
Schema
Fine-grained error code providing more detail of the error.
400.1 Bad Request Content
Unique tracking id for the error.
e7eab60924f64aa284175b9fa3309599
messages object[]
causes object[]
{
"detailCode": "400.1 Bad Request Content",
"trackingId": "e7eab60924f64aa284175b9fa3309599",
"messages": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The request was syntactically correct but its content is semantically invalid."
}
],
"causes": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The request was syntactically correct but its content is semantically invalid."
}
]
}
Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.
- application/json
- Schema
- Example (auto)
Schema
A message describing the error
JWT validation failed: JWT is expired
{
"error": "JWT validation failed: JWT is expired"
}
Forbidden - Returned if the user you are running as, doesn't have access to this end-point.
- application/json
- Schema
- Example (auto)
- 403
Schema
Fine-grained error code providing more detail of the error.
400.1 Bad Request Content
Unique tracking id for the error.
e7eab60924f64aa284175b9fa3309599
messages object[]
causes object[]
{
"detailCode": "400.1 Bad Request Content",
"trackingId": "e7eab60924f64aa284175b9fa3309599",
"messages": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The request was syntactically correct but its content is semantically invalid."
}
],
"causes": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The request was syntactically correct but its content is semantically invalid."
}
]
}
An example of a 403 response object
{
"detailCode": "403 Forbidden",
"trackingId": "b21b1f7ce4da4d639f2c62a57171b427",
"messages": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The server understood the request but refuses to authorize it."
}
]
}
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.
- application/json
- Schema
- Example (auto)
Schema
A message describing the error
Rate Limit Exceeded
{
"message": " Rate Limit Exceeded "
}
Internal Server Error - Returned if there is an unexpected error.
- application/json
- Schema
- Example (auto)
- 500
Schema
Fine-grained error code providing more detail of the error.
400.1 Bad Request Content
Unique tracking id for the error.
e7eab60924f64aa284175b9fa3309599
messages object[]
causes object[]
{
"detailCode": "400.1 Bad Request Content",
"trackingId": "e7eab60924f64aa284175b9fa3309599",
"messages": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The request was syntactically correct but its content is semantically invalid."
}
],
"causes": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The request was syntactically correct but its content is semantically invalid."
}
]
}
An example of a 500 response object
{
"detailCode": "500.0 Internal Fault",
"trackingId": "b21b1f7ce4da4d639f2c62a57171b427",
"messages": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "An internal fault occurred."
}
]
}
Authorization: oauth2
type: Personal Access Tokenscopes: idn:identity-profile:manage
- go
- powershellSailPoint SDK
- pythonSailPoint SDK
- csharp
- curl
- dart
- http
- java
- javascript
- kotlin
- c
- nodejs
- objective-c
- ocaml
- php
- r
- ruby
- rust
- shell
- swift
- NATIVE
package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sailpoint.api.identitynow.com/v3/identity-profiles/import"
method := "POST"
payload := strings.NewReader(`[
{
"version": 1,
"self": {
"type": "SOURCE",
"id": "2c9180835d191a86015d28455b4b232a",
"name": "HR Active Directory"
},
"object": {
"name": "aName",
"description": "My custom flat file profile",
"owner": {
"type": "IDENTITY",
"id": "2c9180835d191a86015d28455b4b232a",
"name": "William Wilson"
},
"priority": 10,
"authoritativeSource": {
"type": "SOURCE",
"id": "2c9180835d191a86015d28455b4b232a",
"name": "HR Active Directory"
},
"identityRefreshRequired": true,
"identityCount": 8,
"identityAttributeConfig": {
"enabled": true,
"attributeTransforms": [
{
"identityAttributeName": "email",
"transformDefinition": {
"type": "accountAttribute",
"attributes": {
"attributeName": "e-mail",
"sourceName": "MySource",
"sourceId": "2c9180877a826e68017a8c0b03da1a53"
}
}
}
]
},
"identityExceptionReportReference": {
"taskResultId": "2b838de9-db9b-abcf-e646-d4f274ad4238",
"reportName": "My annual report"
},
"hasTimeBasedAttr": true
}
}
]`)
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Accept", "application/json")
req.Header.Add("Authorization", "Bearer <TOKEN>")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}