Files
developer.sailpoint.com/docs/tools/sdk/go/Reference/Beta/Methods/CustomFormsAPI.md
2025-05-14 19:08:14 +00:00

66 KiB

id, title, pagination_label, sidebar_label, sidebar_class_name, keywords, slug, tags
id title pagination_label sidebar_label sidebar_class_name keywords slug tags
beta-custom-forms CustomForms CustomForms CustomForms gosdk
go
Golang
sdk
CustomForms
BetaCustomForms
/tools/sdk/go/beta/methods/custom-forms
SDK
Software Development Kit
CustomForms
BetaCustomForms

CustomFormsAPI

Use this API to build and manage custom forms. With this functionality in place, administrators can create and view form definitions and form instances.

Forms are composed of sections and fields. Sections split the form into logical groups of fields and fields are the data collection points within the form. Configure conditions to modify elements of the form as the responder provides input. Create form inputs to pass information from a calling feature, like a workflow, to your form.

Forms can be used within workflows as an action or as a trigger. The Form Action allows you to assign a form as a step in a running workflow, suspending the workflow until the form is submitted or times out, and the workflow resumes. The Form Submitted Trigger initiates a workflow when a form is submitted. The trigger can be configured to initiate on submission of a full form, a form element with any value, or a form element with a particular value.

Refer to Forms for more information about using forms in Identity Security Cloud.

All URIs are relative to https://sailpoint.api.identitynow.com/beta

Method HTTP request Description
create-form-definition Post /form-definitions Creates a form definition.
create-form-definition-by-template Post /form-definitions/template Create a form definition by template.
create-form-definition-dynamic-schema Post /form-definitions/forms-action-dynamic-schema Generate JSON Schema dynamically.
create-form-definition-file-request Post /form-definitions/{formDefinitionID}/upload Upload new form definition file.
create-form-instance Post /form-instances Creates a form instance.
delete-form-definition Delete /form-definitions/{formDefinitionID} Deletes a form definition.
export-form-definitions-by-tenant Get /form-definitions/export List form definitions by tenant.
get-file-from-s3 Get /form-definitions/{formDefinitionID}/file/{fileID} Download definition file by fileId.
get-form-definition-by-key Get /form-definitions/{formDefinitionID} Return a form definition.
get-form-instance-by-key Get /form-instances/{formInstanceID} Returns a form instance.
get-form-instance-file Get /form-instances/{formInstanceID}/file/{fileID} Download instance file by fileId.
import-form-definitions Post /form-definitions/import Import form definitions from export.
patch-form-definition Patch /form-definitions/{formDefinitionID} Patch a form definition.
patch-form-instance Patch /form-instances/{formInstanceID} Patch a form instance.
search-form-definitions-by-tenant Get /form-definitions Export form definitions by tenant.
search-form-element-data-by-element-id Get /form-instances/{formInstanceID}/data-source/{formElementID} Retrieves dynamic data by element.
search-form-instances-by-tenant Get /form-instances List form instances by tenant.
search-pre-defined-select-options Get /form-definitions/predefined-select-options List predefined select options.
show-preview-data-source Post /form-definitions/{formDefinitionID}/data-source Preview form definition data source.

create-form-definition

Creates a form definition.

API Spec

Path Parameters

Other Parameters

Other parameters are passed through a pointer to a apiCreateFormDefinitionRequest struct via the builder pattern

Name Type Description Notes
createFormDefinitionRequest CreateFormDefinitionRequest Body is the request payload to create form definition request

Return type

FormDefinitionResponse

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    createformdefinitionrequest := []byte(`{
          "owner" : {
            "name" : "Grant Smith",
            "id" : "2c9180867624cbd7017642d8c8c81f67",
            "type" : "IDENTITY"
          },
          "formConditions" : [ {
            "ruleOperator" : "AND",
            "effects" : [ {
              "config" : {
                "defaultValueLabel" : "Access to Remove",
                "element" : "8110662963316867"
              },
              "effectType" : "HIDE"
            }, {
              "config" : {
                "defaultValueLabel" : "Access to Remove",
                "element" : "8110662963316867"
              },
              "effectType" : "HIDE"
            } ],
            "rules" : [ {
              "sourceType" : "ELEMENT",
              "valueType" : "STRING",
              "source" : "department",
              "value" : "Engineering",
              "operator" : "EQ"
            }, {
              "sourceType" : "ELEMENT",
              "valueType" : "STRING",
              "source" : "department",
              "value" : "Engineering",
              "operator" : "EQ"
            } ]
          }, {
            "ruleOperator" : "AND",
            "effects" : [ {
              "config" : {
                "defaultValueLabel" : "Access to Remove",
                "element" : "8110662963316867"
              },
              "effectType" : "HIDE"
            }, {
              "config" : {
                "defaultValueLabel" : "Access to Remove",
                "element" : "8110662963316867"
              },
              "effectType" : "HIDE"
            } ],
            "rules" : [ {
              "sourceType" : "ELEMENT",
              "valueType" : "STRING",
              "source" : "department",
              "value" : "Engineering",
              "operator" : "EQ"
            }, {
              "sourceType" : "ELEMENT",
              "valueType" : "STRING",
              "source" : "department",
              "value" : "Engineering",
              "operator" : "EQ"
            } ]
          } ],
          "formInput" : [ {
            "description" : "A single dynamic scalar value (i.e. number, string, date, etc.) that can be passed into the form for use in conditional logic",
            "id" : "00000000-0000-0000-0000-000000000000",
            "label" : "input1",
            "type" : "STRING"
          }, {
            "description" : "A single dynamic scalar value (i.e. number, string, date, etc.) that can be passed into the form for use in conditional logic",
            "id" : "00000000-0000-0000-0000-000000000000",
            "label" : "input1",
            "type" : "STRING"
          } ],
          "name" : "My form",
          "description" : "My form description",
          "usedBy" : [ {
            "name" : "Access Request Form",
            "id" : "61940a92-5484-42bc-bc10-b9982b218cdf",
            "type" : "WORKFLOW"
          }, {
            "name" : "Access Request Form",
            "id" : "61940a92-5484-42bc-bc10-b9982b218cdf",
            "type" : "WORKFLOW"
          } ],
          "formElements" : [ {
            "id" : "00000000-0000-0000-0000-000000000000",
            "validations" : [ {
              "validationType" : "REQUIRED"
            }, {
              "validationType" : "REQUIRED"
            } ],
            "elementType" : "TEXT",
            "config" : {
              "label" : "Department"
            },
            "key" : "department"
          }, {
            "id" : "00000000-0000-0000-0000-000000000000",
            "validations" : [ {
              "validationType" : "REQUIRED"
            }, {
              "validationType" : "REQUIRED"
            } ],
            "elementType" : "TEXT",
            "config" : {
              "label" : "Department"
            },
            "key" : "department"
          } ]
        }`) // CreateFormDefinitionRequest | Body is the request payload to create form definition request (optional)

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.CreateFormDefinition(context.Background()).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.CreateFormDefinition(context.Background()).CreateFormDefinitionRequest(createFormDefinitionRequest).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.CreateFormDefinition``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `CreateFormDefinition`: FormDefinitionResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.CreateFormDefinition`: %v\n", resp)
}

[Back to top]

create-form-definition-by-template

Create a form definition by template.

API Spec

Path Parameters

Other Parameters

Other parameters are passed through a pointer to a apiCreateFormDefinitionByTemplateRequest struct via the builder pattern

Name Type Description Notes
createFormDefinitionRequest CreateFormDefinitionRequest Body is the request payload to create form definition request

Return type

FormDefinitionResponse

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    createformdefinitionrequest := []byte(`{
          "owner" : {
            "name" : "Grant Smith",
            "id" : "2c9180867624cbd7017642d8c8c81f67",
            "type" : "IDENTITY"
          },
          "formConditions" : [ {
            "ruleOperator" : "AND",
            "effects" : [ {
              "config" : {
                "defaultValueLabel" : "Access to Remove",
                "element" : "8110662963316867"
              },
              "effectType" : "HIDE"
            }, {
              "config" : {
                "defaultValueLabel" : "Access to Remove",
                "element" : "8110662963316867"
              },
              "effectType" : "HIDE"
            } ],
            "rules" : [ {
              "sourceType" : "ELEMENT",
              "valueType" : "STRING",
              "source" : "department",
              "value" : "Engineering",
              "operator" : "EQ"
            }, {
              "sourceType" : "ELEMENT",
              "valueType" : "STRING",
              "source" : "department",
              "value" : "Engineering",
              "operator" : "EQ"
            } ]
          }, {
            "ruleOperator" : "AND",
            "effects" : [ {
              "config" : {
                "defaultValueLabel" : "Access to Remove",
                "element" : "8110662963316867"
              },
              "effectType" : "HIDE"
            }, {
              "config" : {
                "defaultValueLabel" : "Access to Remove",
                "element" : "8110662963316867"
              },
              "effectType" : "HIDE"
            } ],
            "rules" : [ {
              "sourceType" : "ELEMENT",
              "valueType" : "STRING",
              "source" : "department",
              "value" : "Engineering",
              "operator" : "EQ"
            }, {
              "sourceType" : "ELEMENT",
              "valueType" : "STRING",
              "source" : "department",
              "value" : "Engineering",
              "operator" : "EQ"
            } ]
          } ],
          "formInput" : [ {
            "description" : "A single dynamic scalar value (i.e. number, string, date, etc.) that can be passed into the form for use in conditional logic",
            "id" : "00000000-0000-0000-0000-000000000000",
            "label" : "input1",
            "type" : "STRING"
          }, {
            "description" : "A single dynamic scalar value (i.e. number, string, date, etc.) that can be passed into the form for use in conditional logic",
            "id" : "00000000-0000-0000-0000-000000000000",
            "label" : "input1",
            "type" : "STRING"
          } ],
          "name" : "My form",
          "description" : "My form description",
          "usedBy" : [ {
            "name" : "Access Request Form",
            "id" : "61940a92-5484-42bc-bc10-b9982b218cdf",
            "type" : "WORKFLOW"
          }, {
            "name" : "Access Request Form",
            "id" : "61940a92-5484-42bc-bc10-b9982b218cdf",
            "type" : "WORKFLOW"
          } ],
          "formElements" : [ {
            "id" : "00000000-0000-0000-0000-000000000000",
            "validations" : [ {
              "validationType" : "REQUIRED"
            }, {
              "validationType" : "REQUIRED"
            } ],
            "elementType" : "TEXT",
            "config" : {
              "label" : "Department"
            },
            "key" : "department"
          }, {
            "id" : "00000000-0000-0000-0000-000000000000",
            "validations" : [ {
              "validationType" : "REQUIRED"
            }, {
              "validationType" : "REQUIRED"
            } ],
            "elementType" : "TEXT",
            "config" : {
              "label" : "Department"
            },
            "key" : "department"
          } ]
        }`) // CreateFormDefinitionRequest | Body is the request payload to create form definition request (optional)

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.CreateFormDefinitionByTemplate(context.Background()).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.CreateFormDefinitionByTemplate(context.Background()).CreateFormDefinitionRequest(createFormDefinitionRequest).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.CreateFormDefinitionByTemplate``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `CreateFormDefinitionByTemplate`: FormDefinitionResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.CreateFormDefinitionByTemplate`: %v\n", resp)
}

[Back to top]

create-form-definition-dynamic-schema

Generate JSON Schema dynamically.

API Spec

Path Parameters

Other Parameters

Other parameters are passed through a pointer to a apiCreateFormDefinitionDynamicSchemaRequest struct via the builder pattern

Name Type Description Notes
body FormDefinitionDynamicSchemaRequest Body is the request payload to create a form definition dynamic schema

Return type

FormDefinitionDynamicSchemaResponse

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    body := []byte(`{
          "description" : "A description",
          "attributes" : {
            "formDefinitionId" : "00000000-0000-0000-0000-000000000000"
          },
          "id" : "00000000-0000-0000-0000-000000000000",
          "type" : "action",
          "versionNumber" : 1
        }`) // FormDefinitionDynamicSchemaRequest | Body is the request payload to create a form definition dynamic schema (optional)

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.CreateFormDefinitionDynamicSchema(context.Background()).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.CreateFormDefinitionDynamicSchema(context.Background()).Body(body).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.CreateFormDefinitionDynamicSchema``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `CreateFormDefinitionDynamicSchema`: FormDefinitionDynamicSchemaResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.CreateFormDefinitionDynamicSchema`: %v\n", resp)
}

[Back to top]

create-form-definition-file-request

Upload new form definition file. Parameter {formDefinitionID} should match a form definition ID.

API Spec

Path Parameters

Name Type Description Notes
ctx context.Context context for authentication, logging, cancellation, deadlines, tracing, etc.
formDefinitionID string FormDefinitionID String specifying FormDefinitionID

Other Parameters

Other parameters are passed through a pointer to a apiCreateFormDefinitionFileRequestRequest struct via the builder pattern

Name Type Description Notes

file | *os.File | File specifying the multipart |

Return type

FormDefinitionFileUploadResponse

HTTP request headers

  • Content-Type: multipart/form-data
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    formDefinitionID := `00000000-0000-0000-0000-000000000000` // string | FormDefinitionID  String specifying FormDefinitionID # string | FormDefinitionID  String specifying FormDefinitionID
    file := BINARY_DATA_HERE // *os.File | File specifying the multipart # *os.File | File specifying the multipart

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.CreateFormDefinitionFileRequest(context.Background(), formDefinitionID).File(file).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.CreateFormDefinitionFileRequest(context.Background(), formDefinitionID).File(file).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.CreateFormDefinitionFileRequest``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `CreateFormDefinitionFileRequest`: FormDefinitionFileUploadResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.CreateFormDefinitionFileRequest`: %v\n", resp)
}

[Back to top]

create-form-instance

Creates a form instance.

API Spec

Path Parameters

Other Parameters

Other parameters are passed through a pointer to a apiCreateFormInstanceRequest struct via the builder pattern

Name Type Description Notes
body CreateFormInstanceRequest Body is the request payload to create a form instance

Return type

FormInstanceResponse

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    body := []byte(`{
          "formInput" : {
            "input1" : "Sales"
          },
          "standAloneForm" : false,
          "createdBy" : {
            "id" : "00000000-0000-0000-0000-000000000000",
            "type" : "WORKFLOW_EXECUTION"
          },
          "recipients" : [ {
            "id" : "00000000-0000-0000-0000-000000000000",
            "type" : "IDENTITY"
          }, {
            "id" : "00000000-0000-0000-0000-000000000000",
            "type" : "IDENTITY"
          } ],
          "expire" : "2023-08-12T20:14:57.74486Z",
          "formDefinitionId" : "00000000-0000-0000-0000-000000000000",
          "state" : "ASSIGNED",
          "ttl" : 1571827560
        }`) // CreateFormInstanceRequest | Body is the request payload to create a form instance (optional)

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.CreateFormInstance(context.Background()).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.CreateFormInstance(context.Background()).Body(body).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.CreateFormInstance``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `CreateFormInstance`: FormInstanceResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.CreateFormInstance`: %v\n", resp)
}

[Back to top]

delete-form-definition

Deletes a form definition. Parameter {formDefinitionID} should match a form definition ID.

API Spec

Path Parameters

Name Type Description Notes
ctx context.Context context for authentication, logging, cancellation, deadlines, tracing, etc.
formDefinitionID string Form definition ID

Other Parameters

Other parameters are passed through a pointer to a apiDeleteFormDefinitionRequest struct via the builder pattern

Name Type Description Notes

Return type

map[string]interface{}

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    formDefinitionID := `00000000-0000-0000-0000-000000000000` // string | Form definition ID # string | Form definition ID

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.DeleteFormDefinition(context.Background(), formDefinitionID).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.DeleteFormDefinition(context.Background(), formDefinitionID).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.DeleteFormDefinition``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `DeleteFormDefinition`: map[string]interface{}
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.DeleteFormDefinition`: %v\n", resp)
}

[Back to top]

export-form-definitions-by-tenant

List form definitions by tenant. No parameters required.

API Spec

Path Parameters

Other Parameters

Other parameters are passed through a pointer to a apiExportFormDefinitionsByTenantRequest struct via the builder pattern

Name Type Description Notes
offset int64 Offset Integer specifying the offset of the first result from the beginning of the collection. The standard syntax described in V3 API Standard Collection Parameters. The offset value is record-based, not page-based, and the index starts at 0. [default to 0]
limit int64 Limit Integer specifying the maximum number of records to return in a single API call. The standard syntax described in V3 API Standard Collection Parameters. If it is not specified, a default limit is used. [default to 250]
filters string Filter results using the standard syntax described in V3 API Standard Collection Parameters Filtering is supported for the following fields and operators: name: eq, gt, sw, in description: eq, gt, sw, in created: eq, gt, sw, in modified: eq, gt, sw, in
sorters string Sort results using the standard syntax described in V3 API Standard Collection Parameters Sorting is supported for the following fields: name, description, created, modified [default to "name"]

Return type

[]ExportFormDefinitionsByTenant200ResponseInner

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    offset := 0 // int64 | Offset  Integer specifying the offset of the first result from the beginning of the collection. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). The offset value is record-based, not page-based, and the index starts at 0. (optional) (default to 0) # int64 | Offset  Integer specifying the offset of the first result from the beginning of the collection. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). The offset value is record-based, not page-based, and the index starts at 0. (optional) (default to 0)
    limit := 250 // int64 | Limit  Integer specifying the maximum number of records to return in a single API call. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). If it is not specified, a default limit is used. (optional) (default to 250) # int64 | Limit  Integer specifying the maximum number of records to return in a single API call. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). If it is not specified, a default limit is used. (optional) (default to 250)
    filters := `name sw "my form"` // string | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results)  Filtering is supported for the following fields and operators:  **name**: *eq, gt, sw, in*  **description**: *eq, gt, sw, in*  **created**: *eq, gt, sw, in*  **modified**: *eq, gt, sw, in* (optional) # string | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results)  Filtering is supported for the following fields and operators:  **name**: *eq, gt, sw, in*  **description**: *eq, gt, sw, in*  **created**: *eq, gt, sw, in*  **modified**: *eq, gt, sw, in* (optional)
    sorters := `name` // string | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results)  Sorting is supported for the following fields: **name, description, created, modified** (optional) (default to "name") # string | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results)  Sorting is supported for the following fields: **name, description, created, modified** (optional) (default to "name")

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.ExportFormDefinitionsByTenant(context.Background()).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.ExportFormDefinitionsByTenant(context.Background()).Offset(offset).Limit(limit).Filters(filters).Sorters(sorters).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.ExportFormDefinitionsByTenant``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `ExportFormDefinitionsByTenant`: []ExportFormDefinitionsByTenant200ResponseInner
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.ExportFormDefinitionsByTenant`: %v\n", resp)
}

[Back to top]

get-file-from-s3

Download definition file by fileId.

API Spec

Path Parameters

Name Type Description Notes
ctx context.Context context for authentication, logging, cancellation, deadlines, tracing, etc.
formDefinitionID string FormDefinitionID Form definition ID
fileID string FileID String specifying the hashed name of the uploaded file we are retrieving.

Other Parameters

Other parameters are passed through a pointer to a apiGetFileFromS3Request struct via the builder pattern

Name Type Description Notes

Return type

*os.File

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json, image/jpeg, image/png, application/octet-stream

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    formDefinitionID := `00000000-0000-0000-0000-000000000000` // string | FormDefinitionID  Form definition ID # string | FormDefinitionID  Form definition ID
    fileID := `00000031N0J7R2B57M8YG73J7M.png` // string | FileID  String specifying the hashed name of the uploaded file we are retrieving. # string | FileID  String specifying the hashed name of the uploaded file we are retrieving.

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.GetFileFromS3(context.Background(), formDefinitionID, fileID).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.GetFileFromS3(context.Background(), formDefinitionID, fileID).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.GetFileFromS3``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `GetFileFromS3`: *os.File
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.GetFileFromS3`: %v\n", resp)
}

[Back to top]

get-form-definition-by-key

Return a form definition. Parameter {formDefinitionID} should match a form definition ID.

API Spec

Path Parameters

Name Type Description Notes
ctx context.Context context for authentication, logging, cancellation, deadlines, tracing, etc.
formDefinitionID string Form definition ID

Other Parameters

Other parameters are passed through a pointer to a apiGetFormDefinitionByKeyRequest struct via the builder pattern

Name Type Description Notes

Return type

FormDefinitionResponse

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    formDefinitionID := `00000000-0000-0000-0000-000000000000` // string | Form definition ID # string | Form definition ID

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.GetFormDefinitionByKey(context.Background(), formDefinitionID).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.GetFormDefinitionByKey(context.Background(), formDefinitionID).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.GetFormDefinitionByKey``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `GetFormDefinitionByKey`: FormDefinitionResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.GetFormDefinitionByKey`: %v\n", resp)
}

[Back to top]

get-form-instance-by-key

Returns a form instance. Parameter {formInstanceID} should match a form instance ID.

API Spec

Path Parameters

Name Type Description Notes
ctx context.Context context for authentication, logging, cancellation, deadlines, tracing, etc.
formInstanceID string Form instance ID

Other Parameters

Other parameters are passed through a pointer to a apiGetFormInstanceByKeyRequest struct via the builder pattern

Name Type Description Notes

Return type

FormInstanceResponse

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    formInstanceID := `00000000-0000-0000-0000-000000000000` // string | Form instance ID # string | Form instance ID

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.GetFormInstanceByKey(context.Background(), formInstanceID).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.GetFormInstanceByKey(context.Background(), formInstanceID).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.GetFormInstanceByKey``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `GetFormInstanceByKey`: FormInstanceResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.GetFormInstanceByKey`: %v\n", resp)
}

[Back to top]

get-form-instance-file

Download instance file by fileId.

API Spec

Path Parameters

Name Type Description Notes
ctx context.Context context for authentication, logging, cancellation, deadlines, tracing, etc.
formInstanceID string FormInstanceID Form instance ID
fileID string FileID String specifying the hashed name of the uploaded file we are retrieving.

Other Parameters

Other parameters are passed through a pointer to a apiGetFormInstanceFileRequest struct via the builder pattern

Name Type Description Notes

Return type

*os.File

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json, image/jpeg, image/png, application/octet-stream

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    formInstanceID := `00000000-0000-0000-0000-000000000000` // string | FormInstanceID  Form instance ID # string | FormInstanceID  Form instance ID
    fileID := `00000031N0J7R2B57M8YG73J7M.png` // string | FileID  String specifying the hashed name of the uploaded file we are retrieving. # string | FileID  String specifying the hashed name of the uploaded file we are retrieving.

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.GetFormInstanceFile(context.Background(), formInstanceID, fileID).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.GetFormInstanceFile(context.Background(), formInstanceID, fileID).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.GetFormInstanceFile``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `GetFormInstanceFile`: *os.File
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.GetFormInstanceFile`: %v\n", resp)
}

[Back to top]

import-form-definitions

Import form definitions from export.

API Spec

Path Parameters

Other Parameters

Other parameters are passed through a pointer to a apiImportFormDefinitionsRequest struct via the builder pattern

Name Type Description Notes
body []ImportFormDefinitionsRequestInner Body is the request payload to import form definitions

Return type

ImportFormDefinitions202Response

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    body := []byte(`[{version=1, self={name=All fields not required, id=05ed4edb-d0a9-41d9-ad0c-2f6e486ec4aa, type=FORM_DEFINITION}, object={id=05ed4edb-d0a9-41d9-ad0c-2f6e486ec4aa, name=All fields not required, description=description, owner={type=IDENTITY, id=3447d8ec2602455ab6f1e8408a0f0150}, usedBy=[{type=WORKFLOW, id=5008594c-dacc-4295-8fee-41df60477304}, {type=WORKFLOW, id=97e75a75-c179-4fbc-a2da-b5fa4aaa8743}], formInput=[{type=STRING, label=input1, description=A single dynamic scalar value (i.e. number, string, date, etc) that can be passed into the form for use in conditional logic}], formElements=[{id=3069272797630701, elementType=SECTION, config={label=First Section, formElements=[{id=3069272797630700, elementType=TEXT, key=firstName, config={label=First Name}}, {id=3498415402897539, elementType=TEXT, key=lastName, config={label=Last Name}}]}}], formConditions=[{ruleOperator=AND, rules=[{sourceType=INPUT, source=Department, operator=EQ, valueType=STRING, value=Sales}], effects=[{effectType=HIDE, config={element=2614088730489570}}]}], created=2022-10-04T19:27:04.456Z, modified=2022-11-16T20:45:02.172Z}}]`) // []ImportFormDefinitionsRequestInner | Body is the request payload to import form definitions (optional)

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.ImportFormDefinitions(context.Background()).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.ImportFormDefinitions(context.Background()).Body(body).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.ImportFormDefinitions``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `ImportFormDefinitions`: ImportFormDefinitions202Response
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.ImportFormDefinitions`: %v\n", resp)
}

[Back to top]

patch-form-definition

Patch a form definition. Parameter {formDefinitionID} should match a form definition ID.

API Spec

Path Parameters

Name Type Description Notes
ctx context.Context context for authentication, logging, cancellation, deadlines, tracing, etc.
formDefinitionID string Form definition ID

Other Parameters

Other parameters are passed through a pointer to a apiPatchFormDefinitionRequest struct via the builder pattern

Name Type Description Notes

body | []map[string]map[string]interface{} | Body is the request payload to patch a form definition, check: https://jsonpatch.com |

Return type

FormDefinitionResponse

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    formDefinitionID := `00000000-0000-0000-0000-000000000000` // string | Form definition ID # string | Form definition ID
    body := []byte(`[{op=replace, path=/description, value=test-description}]`) // []map[string]map[string]interface{} | Body is the request payload to patch a form definition, check: https://jsonpatch.com (optional)

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.PatchFormDefinition(context.Background(), formDefinitionID).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.PatchFormDefinition(context.Background(), formDefinitionID).Body(body).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.PatchFormDefinition``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `PatchFormDefinition`: FormDefinitionResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.PatchFormDefinition`: %v\n", resp)
}

[Back to top]

patch-form-instance

Patch a form instance. Parameter {formInstanceID} should match a form instance ID.

API Spec

Path Parameters

Name Type Description Notes
ctx context.Context context for authentication, logging, cancellation, deadlines, tracing, etc.
formInstanceID string Form instance ID

Other Parameters

Other parameters are passed through a pointer to a apiPatchFormInstanceRequest struct via the builder pattern

Name Type Description Notes

body | []map[string]map[string]interface{} | Body is the request payload to patch a form instance, check: https://jsonpatch.com |

Return type

FormInstanceResponse

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    formInstanceID := `00000000-0000-0000-0000-000000000000` // string | Form instance ID # string | Form instance ID
    body := []byte(`[{op=replace, path=/state, value=SUBMITTED}, {op=replace, path=/formData, value={a-key-1=a-value-1, a-key-2=true, a-key-3=1}}]`) // []map[string]map[string]interface{} | Body is the request payload to patch a form instance, check: https://jsonpatch.com (optional)

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.PatchFormInstance(context.Background(), formInstanceID).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.PatchFormInstance(context.Background(), formInstanceID).Body(body).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.PatchFormInstance``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `PatchFormInstance`: FormInstanceResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.PatchFormInstance`: %v\n", resp)
}

[Back to top]

search-form-definitions-by-tenant

Export form definitions by tenant. No parameters required.

API Spec

Path Parameters

Other Parameters

Other parameters are passed through a pointer to a apiSearchFormDefinitionsByTenantRequest struct via the builder pattern

Name Type Description Notes
offset int64 Offset Integer specifying the offset of the first result from the beginning of the collection. The standard syntax described in V3 API Standard Collection Parameters. The offset value is record-based, not page-based, and the index starts at 0. [default to 0]
limit int64 Limit Integer specifying the maximum number of records to return in a single API call. The standard syntax described in V3 API Standard Collection Parameters. If it is not specified, a default limit is used. [default to 250]
filters string Filter results using the standard syntax described in V3 API Standard Collection Parameters Filtering is supported for the following fields and operators: name: eq, gt, sw, in description: eq, gt, sw, in created: eq, gt, sw, in modified: eq, gt, sw, in
sorters string Sort results using the standard syntax described in V3 API Standard Collection Parameters Sorting is supported for the following fields: name, description, created, modified [default to "name"]

Return type

ListFormDefinitionsByTenantResponse

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    offset := 250 // int64 | Offset  Integer specifying the offset of the first result from the beginning of the collection. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). The offset value is record-based, not page-based, and the index starts at 0. (optional) (default to 0) # int64 | Offset  Integer specifying the offset of the first result from the beginning of the collection. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). The offset value is record-based, not page-based, and the index starts at 0. (optional) (default to 0)
    limit := 250 // int64 | Limit  Integer specifying the maximum number of records to return in a single API call. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). If it is not specified, a default limit is used. (optional) (default to 250) # int64 | Limit  Integer specifying the maximum number of records to return in a single API call. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). If it is not specified, a default limit is used. (optional) (default to 250)
    filters := `name sw "my form"` // string | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results)  Filtering is supported for the following fields and operators:  **name**: *eq, gt, sw, in*  **description**: *eq, gt, sw, in*  **created**: *eq, gt, sw, in*  **modified**: *eq, gt, sw, in* (optional) # string | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results)  Filtering is supported for the following fields and operators:  **name**: *eq, gt, sw, in*  **description**: *eq, gt, sw, in*  **created**: *eq, gt, sw, in*  **modified**: *eq, gt, sw, in* (optional)
    sorters := `name` // string | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results)  Sorting is supported for the following fields: **name, description, created, modified** (optional) (default to "name") # string | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results)  Sorting is supported for the following fields: **name, description, created, modified** (optional) (default to "name")

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.SearchFormDefinitionsByTenant(context.Background()).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.SearchFormDefinitionsByTenant(context.Background()).Offset(offset).Limit(limit).Filters(filters).Sorters(sorters).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.SearchFormDefinitionsByTenant``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `SearchFormDefinitionsByTenant`: ListFormDefinitionsByTenantResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.SearchFormDefinitionsByTenant`: %v\n", resp)
}

[Back to top]

search-form-element-data-by-element-id

Retrieves dynamic data by element. Parameter {formInstanceID} should match a form instance ID. Parameter {formElementID} should match a form element ID at the data source configuration.

API Spec

Path Parameters

Name Type Description Notes
ctx context.Context context for authentication, logging, cancellation, deadlines, tracing, etc.
formInstanceID string Form instance ID
formElementID string Form element ID

Other Parameters

Other parameters are passed through a pointer to a apiSearchFormElementDataByElementIDRequest struct via the builder pattern

Name Type Description Notes

limit | int64 | Limit Integer specifying the maximum number of records to return in a single API call. The standard syntax described in V3 API Standard Collection Parameters. If it is not specified, a default limit is used. | [default to 250] filters | string | Filter results using the standard syntax described in V3 API Standard Collection Parameters Filtering is supported for the following fields and operators: value: eq, ne, in Supported composite operators: not Only a single not may be used, and it can only be used with the `in` operator. The `not` composite operator must be used in front of the field. For example, the following is valid: `not value in ("ID01")` | query | string | String that is passed to the underlying API to filter other (non-ID) fields. For example, for access profile data sources, this string will be passed to the access profile api and used with a "starts with" filter against several fields. |

Return type

ListFormElementDataByElementIDResponse

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    formInstanceID := `00000000-0000-0000-0000-000000000000` // string | Form instance ID # string | Form instance ID
    formElementID := `1` // string | Form element ID # string | Form element ID
    limit := 250 // int64 | Limit  Integer specifying the maximum number of records to return in a single API call. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). If it is not specified, a default limit is used. (optional) (default to 250) # int64 | Limit  Integer specifying the maximum number of records to return in a single API call. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). If it is not specified, a default limit is used. (optional) (default to 250)
    filters := `value eq "ID01"` // string | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results)  Filtering is supported for the following fields and operators:  **value**: *eq, ne, in*  Supported composite operators: *not*  Only a single *not* may be used, and it can only be used with the `in` operator. The `not` composite operator must be used in front of the field. For example, the following is valid: `not value in (\"ID01\")` (optional) # string | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results)  Filtering is supported for the following fields and operators:  **value**: *eq, ne, in*  Supported composite operators: *not*  Only a single *not* may be used, and it can only be used with the `in` operator. The `not` composite operator must be used in front of the field. For example, the following is valid: `not value in (\"ID01\")` (optional)
    query := `support` // string | String that is passed to the underlying API to filter other (non-ID) fields.  For example, for access  profile data sources, this string will be passed to the access profile api and used with a \"starts with\" filter against  several fields. (optional) # string | String that is passed to the underlying API to filter other (non-ID) fields.  For example, for access  profile data sources, this string will be passed to the access profile api and used with a \"starts with\" filter against  several fields. (optional)

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.SearchFormElementDataByElementID(context.Background(), formInstanceID, formElementID).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.SearchFormElementDataByElementID(context.Background(), formInstanceID, formElementID).Limit(limit).Filters(filters).Query(query).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.SearchFormElementDataByElementID``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `SearchFormElementDataByElementID`: ListFormElementDataByElementIDResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.SearchFormElementDataByElementID`: %v\n", resp)
}

[Back to top]

search-form-instances-by-tenant

List form instances by tenant. No parameters required.

API Spec

Path Parameters

This endpoint does not need any parameter.

Other Parameters

Other parameters are passed through a pointer to a apiSearchFormInstancesByTenantRequest struct via the builder pattern

Return type

[]FormInstanceResponse

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.SearchFormInstancesByTenant(context.Background()).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.SearchFormInstancesByTenant(context.Background()).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.SearchFormInstancesByTenant``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `SearchFormInstancesByTenant`: []FormInstanceResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.SearchFormInstancesByTenant`: %v\n", resp)
}

[Back to top]

search-pre-defined-select-options

List predefined select options. No parameters required.

API Spec

Path Parameters

This endpoint does not need any parameter.

Other Parameters

Other parameters are passed through a pointer to a apiSearchPreDefinedSelectOptionsRequest struct via the builder pattern

Return type

ListPredefinedSelectOptionsResponse

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.SearchPreDefinedSelectOptions(context.Background()).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.SearchPreDefinedSelectOptions(context.Background()).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.SearchPreDefinedSelectOptions``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `SearchPreDefinedSelectOptions`: ListPredefinedSelectOptionsResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.SearchPreDefinedSelectOptions`: %v\n", resp)
}

[Back to top]

show-preview-data-source

Preview form definition data source.

API Spec

Path Parameters

Name Type Description Notes
ctx context.Context context for authentication, logging, cancellation, deadlines, tracing, etc.
formDefinitionID string Form definition ID

Other Parameters

Other parameters are passed through a pointer to a apiShowPreviewDataSourceRequest struct via the builder pattern

Name Type Description Notes

limit | int64 | Limit Integer specifying the maximum number of records to return in a single API call. The standard syntax described in V3 API Standard Collection Parameters. If it is not specified, a default limit is used. | [default to 10] filters | string | Filter results using the standard syntax described in V3 API Standard Collection Parameters Filtering is supported for the following fields and operators: value: eq, ne, in Supported composite operators: not Only a single not may be used, and it can only be used with the `in` operator. The `not` composite operator must be used in front of the field. For example, the following is valid: `not value in ("ID01")` | query | string | String that is passed to the underlying API to filter other (non-ID) fields. For example, for access profile data sources, this string will be passed to the access profile api and used with a "starts with" filter against several fields. | formElementPreviewRequest | FormElementPreviewRequest | Body is the request payload to create a form definition dynamic schema |

Return type

PreviewDataSourceResponse

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

Example

package main

import (
	"context"
	"fmt"
	"os"
  
    
	sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)

func main() {
    formDefinitionID := `00000000-0000-0000-0000-000000000000` // string | Form definition ID # string | Form definition ID
    limit := 10 // int64 | Limit  Integer specifying the maximum number of records to return in a single API call. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). If it is not specified, a default limit is used. (optional) (default to 10) # int64 | Limit  Integer specifying the maximum number of records to return in a single API call. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). If it is not specified, a default limit is used. (optional) (default to 10)
    filters := `value eq "ID01"` // string | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results)  Filtering is supported for the following fields and operators:  **value**: *eq, ne, in*  Supported composite operators: *not*  Only a single *not* may be used, and it can only be used with the `in` operator. The `not` composite operator must be used in front of the field. For example, the following is valid: `not value in (\"ID01\")` (optional) # string | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results)  Filtering is supported for the following fields and operators:  **value**: *eq, ne, in*  Supported composite operators: *not*  Only a single *not* may be used, and it can only be used with the `in` operator. The `not` composite operator must be used in front of the field. For example, the following is valid: `not value in (\"ID01\")` (optional)
    query := `ac` // string | String that is passed to the underlying API to filter other (non-ID) fields.  For example, for access  profile data sources, this string will be passed to the access profile api and used with a \"starts with\" filter against  several fields. (optional) # string | String that is passed to the underlying API to filter other (non-ID) fields.  For example, for access  profile data sources, this string will be passed to the access profile api and used with a \"starts with\" filter against  several fields. (optional)
    formelementpreviewrequest := []byte(`{
          "dataSource" : {
            "config" : {
              "indices" : [ "identities" ],
              "query" : "*",
              "aggregationBucketField" : "attributes.cloudStatus.exact",
              "objectType" : "IDENTITY"
            },
            "dataSourceType" : "STATIC"
          }
        }`) // FormElementPreviewRequest | Body is the request payload to create a form definition dynamic schema (optional)

    

    configuration := sailpoint.NewDefaultConfiguration()
    apiClient := sailpoint.NewAPIClient(configuration)
    resp, r, err := apiClient.Beta.CustomFormsAPI.ShowPreviewDataSource(context.Background(), formDefinitionID).Execute()
	  //resp, r, err := apiClient.Beta.CustomFormsAPI.ShowPreviewDataSource(context.Background(), formDefinitionID).Limit(limit).Filters(filters).Query(query).FormElementPreviewRequest(formElementPreviewRequest).Execute()
    if err != nil {
	    fmt.Fprintf(os.Stderr, "Error when calling `CustomFormsAPI.ShowPreviewDataSource``: %v\n", err)
	    fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    }
    // response from `ShowPreviewDataSource`: PreviewDataSourceResponse
    fmt.Fprintf(os.Stdout, "Response from `CustomFormsAPI.ShowPreviewDataSource`: %v\n", resp)
}

[Back to top]