Interface Scene7APIClient


  • @ProviderType
    public interface Scene7APIClient
    The Scene7APIClient provides the Scene7 SPS API methods used by CQ DAM. For more details about the methods please consult the SPS API. Return values and parameters are @NotNull by default.
    • Field Detail

      • CONTENTTYPE

        static final String CONTENTTYPE
        default content-type (i.e. 'application/soap+xml'), defaults to 'text/xml'
        See Also:
        Constant Field Values
      • RECORDS_PER_PAGE_NO_FILTER

        static final int RECORDS_PER_PAGE_NO_FILTER
        See Also:
        Constant Field Values
      • RECORDS_PER_PAGE_WITH_FILTER

        static final int RECORDS_PER_PAGE_WITH_FILTER
        See Also:
        Constant Field Values
    • Method Detail

      • deleteAsset

        Document deleteAsset​(String assetHandle,
                             S7Config s7Config)
                      throws IpsApiException
        Deletes an asset from Scene7.
        Parameters:
        assetHandle - the handle to the asset to delete
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • deleteAssets

        Document deleteAssets​(String[] assetHandleArr,
                              S7Config s7Config)
                       throws IpsApiException
        Delete multiple assets from Scene7.
        Parameters:
        assetHandleArr - the handle to the asset to delete
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • deleteFolder

        Document deleteFolder​(String folderHandle,
                              S7Config s7Config)
                       throws IpsApiException
        Deletes a folder from Scene7.
        Parameters:
        folderHandle - the handle to the folder to delete
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • getActiveJobs

        Document getActiveJobs​(String jobHandle,
                               String originalName,
                               S7Config s7Config)
                        throws IpsApiException
        Gets all jobs that are currently active in the system.
        Parameters:
        jobHandle - the handle to the job
        originalName - the original name of the job
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • getAssets

        Document getAssets​(String[] assetHandles,
                           String[] responseFields,
                           String[] excludeFields,
                           S7Config s7Config)
                    throws IpsApiException
        Gets assets from IPS.
        Parameters:
        assetHandles - the asset handles
        responseFields - a list of fields and subfields for inclusion in the response
        excludeFields - a list of fields and subfields for exclusion from the response
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • getAssociatedAssets

        Document getAssociatedAssets​(String assetHandle,
                                     String[] responseFields,
                                     String[] excludeFields,
                                     S7Config s7Config)
                              throws IpsApiException
        Gets assets associated with the specified asset and details about their relationship.
        Parameters:
        assetHandle - the handle to the asset
        responseFields - a list of fields and subfields for inclusion in the response
        excludeFields - a list of fields and subfields for exclusion from the response
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • getAssetsByName

        List<Scene7Asset> getAssetsByName​(String companyHandle,
                                          String[] responseFields,
                                          String[] names)
                                   throws IpsApiException
        Gets assets by name.
        Parameters:
        companyHandle - the handle to the company
        responseFields - a list of fields and subfields for inclusion in the response
        names - a string array of asset names
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • getAssetHandleByName

        String getAssetHandleByName​(String assetName)
                             throws IpsApiException
        Gets assethandle
        Parameters:
        assetName - a String array of asset names
        Returns:
        String assetHandle
        Throws:
        IpsApiException
      • getAssetHandleByName

        @Nullable
        @Nullable String getAssetHandleByName​(S7Config s7Config,
                                              String assetName)
                                       throws IpsApiException
        Search asset by name and return its handle, if exists.
        Parameters:
        s7Config - configuration to access Scene7 server
        assetName - asset name to look up
        Returns:
        asset handle, or null if not found
        Throws:
        IpsApiException - on error at Scene7
      • getCompanyMembership

        Document getCompanyMembership​(ResourceResolver resourceResolver,
                                      String userHandle,
                                      String email,
                                      String password,
                                      String region)
                               throws IpsApiException
        Gets a user's memberships.
        Parameters:
        resourceResolver - resource resolver used to access Scene7 configuration
        userHandle - the handle to the user whose memberships you want to obtain
        email - the user's email
        password - the user's password
        region - the user's region
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • getFolderTree

        Document getFolderTree​(String folderPath,
                               int depth,
                               String[] responseFields,
                               String[] excludeFields,
                               S7Config s7Config)
                        throws IpsApiException
        Gets folders and sub-folders in a hierarchical tree structure. The getFolderTree response is limited to a maximum of 100000 folders.
        Parameters:
        folderPath - the root folder to retrieve folders and all subfolders to the leaflevel; if excluded, the company root is used
        depth - a value of zero gets the top-level folder; any other value specifies the depth to descend into the tree
        responseFields - a list of fields and subfields for inclusion in the response
        excludeFields - a list of fields and subfields for exclusion from the response
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • getJobLogDetails

        Document getJobLogDetails​(String jobHandle,
                                  String originalName,
                                  S7Config s7Config)
                           throws IpsApiException
        Gets the details of job logs of a company.
        Parameters:
        jobHandle - a handle to an active or completed job
        originalName - the original name of the job log
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • getJobLogDetails

        Document getJobLogDetails​(String jobHandle,
                                  String originalName,
                                  int resultsPage,
                                  int recordsPerPage,
                                  String sortBy,
                                  String sortDirection,
                                  S7Config s7Config)
                           throws IpsApiException
        Gets the details of job logs of a company with specified parameters
        Parameters:
        jobHandle - a handle to an active or completed job
        originalName - the original name of the job log
        resultsPage - page number of recordsPerPage-results to return
        recordsPerPage - maximum number of detailArray items to return
        sortBy - one of the Job Detail Sort Field constant values (Date or LogType)
        sortDirection - one of the Sort Direction string constants
        s7Config - the Scene7 configuration
        Returns:
        the jobLogDetails API's response wrapped in a Document
        Throws:
        IpsApiException
      • getPropertySets

        Document getPropertySets​(String appSettingsTypeHandle,
                                 S7Config s7Config)
                          throws IpsApiException
        Gets property sets associated with a type handle.
        Parameters:
        appSettingsTypeHandle - the handle to the property set type
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • createPropertySet

        Document createPropertySet​(String typeHandle,
                                   PropertyArray props,
                                   S7Config s7Config)
                            throws IpsApiException
        Create PropertySet of given type, and store given Properties to it.
        Parameters:
        typeHandle - PropertySet type handle
        props - array of Properties to put into new PropertySet
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException - .
      • updatePropertySet

        Document updatePropertySet​(String setHandle,
                                   PropertyArray props,
                                   S7Config s7Config)
                            throws IpsApiException
        Update PropertySet with the new set of Properties, replacing existing ones.
        Parameters:
        setHandle - PropertySet handle
        props - array of Properties to put into PropsertySet
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException - .
      • updatePropertySet

        Document updatePropertySet​(String setHandle,
                                   String propKey,
                                   String propValue,
                                   S7Config s7Config)
                            throws IpsApiException
        Update single Property in the PropertySet.
        Parameters:
        setHandle - the PropertySet handle for the company settings
        propKey - property key name
        propValue - property key value
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • deletePropertySet

        Document deletePropertySet​(String propertySetHandle,
                                   S7Config s7Config)
                            throws IpsApiException
        Delete PropertySet by the given handle.
        Parameters:
        propertySetHandle - the PropertySet handle of the company settings
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException - .
      • getPropertySetTypes

        Document getPropertySetTypes​(S7Config s7Config)
                              throws IpsApiException
        Gets the property set types associated with the specified company from the S7Config object.
        Parameters:
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • getImageServerSettings

        Map<String,​Object> getImageServerSettings​(S7Config s7Config,
                                                        @Nullable
                                                        @Nullable String contextHandle)
                                                 throws IpsApiException
        Gets the preview or publish server settings based on contextHandle. If contextHandle is null, it fetches publish Serving settings by default.
        Parameters:
        s7Config - the Scene7 configuration
        contextHandle - Nullable context handle
        Returns:
        a map containing publish server settings like MaxPix, jpegQuality and others
        Throws:
        IpsApiException
      • setImageServerSettings

        Document setImageServerSettings​(S7Config s7Config,
                                        String contextHandle,
                                        ConfigSettingArray publishSettingArray)
                                 throws IpsApiException
        Sets the publish or preview Image server settings based on contextHandle
        Parameters:
        s7Config - the Scene7 configuration
        contextHandle - Nullable context handle
        publishSettingArray - Array of settings params
        Returns:
        Document response
        Throws:
        IpsApiException
      • getUserInfo

        Document getUserInfo​(ResourceResolver resourceResolver,
                             String email,
                             String password,
                             String region)
                      throws IpsApiException
        Gets information about a user.
        Parameters:
        resourceResolver - resource resolver used to access Scene7 configuration
        email - the user's email
        password - the user's password
        region - the user's region
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • searchAssets

        Document searchAssets​(String folder,
                              Boolean includeSubfolders,
                              Boolean published,
                              String[] assetTypes,
                              String[] assetSubTypes,
                              String[] responseFields,
                              String[] excludeFields,
                              int recordsPerPage,
                              int resultsPage,
                              String fileName,
                              String name,
                              S7Config s7Config)
                       throws IpsApiException
        Searches for assets based on one or more filter criteria.
        Parameters:
        folder - the root path for searching for assets; if omitted, the company root folder will be used
        includeSubfolders - if true, the search includes sub-folders
        published - if true, the search will include only published assets
        assetTypes - array of Asset Types to include in search
        assetSubTypes - array of sub Asset Types to include in search
        responseFields - a list of fields and subfields for inclusion in the response
        excludeFields - a list of fields and subfields for exclusion from the response
        recordsPerPage - maximum number of results to return
        resultsPage - specifies the page of results to return, based on recordsPerPage page size
        fileName - the filename for search asset
        name - the Scene7 name used for search asset
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • searchAssets

        Document searchAssets​(String folder,
                              Boolean includeSubfolders,
                              Boolean published,
                              String[] assetTypes,
                              String[] assetSubTypes,
                              String[] responseFields,
                              String[] excludeFields,
                              int recordsPerPage,
                              int resultsPage,
                              String fileName,
                              String name,
                              String conditionMode,
                              S7Config s7Config)
                       throws IpsApiException
        Searches for assets based on one or more filter criteria.
        Parameters:
        folder - the root path for searching for assets; if omitted, the company root folder will be used
        includeSubfolders - if true, the search includes sub-folders
        published - if true, the search will include only published assets
        assetTypes - array of Asset Types to include in search
        assetSubTypes - array of sub Asset Types to include in search
        responseFields - a list of fields and subfields for inclusion in the response
        excludeFields - a list of fields and subfields for exclusion from the response
        recordsPerPage - maximum number of results to return
        resultsPage - specifies the page of results to return, based on recordsPerPage page size
        fileName - the filename for search asset
        name - the Scene7 name used for search asset
        conditionMode - filename and asset name string comparison operator
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • searchAssetsByMetadata

        Document searchAssetsByMetadata​(String folder,
                                        Boolean includeSubfolders,
                                        String[] assetTypes,
                                        String[] assetSubTypes,
                                        Boolean published,
                                        MetadataCondition[] conditions,
                                        S7Config s7Config)
                                 throws IpsApiException
        Searches the metadata index repository for the given search terms.
        Parameters:
        folder - the root path for searching for assets; if omitted, the company root folder will be used
        includeSubfolders - if true, the search includes sub-folders
        assetTypes - array of Asset Types to include in search
        assetSubTypes - array of sub Asset Types to include in search
        published - if true, the search will include only published assets
        conditions - one or more query conditions that define the search criteria
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • searchAssetsByMetadata

        Document searchAssetsByMetadata​(String folder,
                                        Boolean includeSubfolders,
                                        String[] assetTypes,
                                        String[] assetSubTypes,
                                        Boolean published,
                                        MetadataCondition[] conditions,
                                        int recordsPerPage,
                                        int resultsPage,
                                        S7Config s7Config)
                                 throws IpsApiException
        Searches the metadata index repository for the given search terms, support loading assets by page
        Parameters:
        folder - the root path for searching for assets; if omitted, the company root folder will be used
        includeSubfolders - if true, the search includes sub-folders
        assetTypes - array of Asset Types to include in search
        assetSubTypes - array of sub Asset Types to include in search
        published - if true, the search will include only published assets
        conditions - one or more query conditions that define the search criteria
        recordsPerPage - maximum number of results to return
        resultsPage - specifies the page of results to return, based on recordsPerPage page size
        s7Config - the Scene7 configuration
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • submitReprocessAssetsThumbnailJob

        Document submitReprocessAssetsThumbnailJob​(@NotNull
                                                   @NotNull String jobName,
                                                   @NotNull
                                                   @NotNull S7Config s7Config,
                                                   String assetHandle,
                                                   long thumbnailTime)
                                            throws IpsApiException
        Submit a job to S7 for reprocessing video thumbnail to a specified video frame time
        Parameters:
        jobName - the name of the job
        s7Config - the Scene7 configuration
        assetHandle - the asset handle
        thumbnailTime - the frame time
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • getSystemProperties

        @Deprecated
        Document getSystemProperties​(S7Config s7Config)
        Deprecated.
        Retrieves the system properties XML document served by the GetSystemProperties SPS servlet. Deprecated
        Parameters:
        s7Config - the Scene7 configuration
        Returns:
        the SPS system properties wrapped in a Document
      • getOriginalFile

        InputStream getOriginalFile​(String assetHandle,
                                    S7Config s7Config)
                             throws IpsApiException
        Provides a way to get the originally uploaded file to the Scene7 servers after an asset has been processed.
        Parameters:
        assetHandle - the asset's handle (unique id generated by Scene7)
        s7Config - the Scene7 configuration
        Returns:
        an InputStream from which the file can be retrieved; the InputStream can be null if any error occurred
        Throws:
        IpsApiException
      • getIPSFile

        @Deprecated
        InputStream getIPSFile​(Scene7Asset asset,
                               S7Config s7Config)
        Deprecated.
        Incompatible with Scene7 IPS SSL endpoint. Please use getOriginalFile() instead.
        Provides a way to get the published image for a Scene7 asset
        Parameters:
        asset - the Scene7Asset asset object
        s7Config - the S7Config configuration
        Returns:
        an InputStream of the published image asset
      • getThumbnailForAsset

        InputStream getThumbnailForAsset​(Scene7Asset scene7Asset,
                                         S7Config s7Config)
                                  throws IpsApiException
        Retrieves a JPEG image in an InputStream that can be used as a thumbnail in CQ DAM. The image has the same size as the originally uploaded asset from Scene7.
        Parameters:
        scene7Asset - the Scene7 asset abstractization
        s7Config - the Scene7 configuration
        Returns:
        an InputStream from which the file can be retrieved; the InputStream can be null if any error occurred
        Throws:
        IpsApiException
      • setAssetPublishState

        Document setAssetPublishState​(String assetHandle,
                                      S7Config s7Config,
                                      String publishState)
                               throws IpsApiException
        Sets the publish state of a given Scene7 asset
        Parameters:
        assetHandle - the Scene7 asset handle
        publishState - the asset publish state
        s7Config - the Scene7 configuration
        Returns:
        the setAssetPublishState API's response wrapped in a Document
        Throws:
        IpsApiException
      • setAssetsPublishState

        Document setAssetsPublishState​(Set<String> assetHandles,
                                       S7Config s7Config,
                                       String publishState)
                                throws IpsApiException
        Sets the publish state of a given Scene7 assets
        Parameters:
        assetHandles - the Scene7 asset handles
        publishState - the asset publish state
        s7Config - the Scene7 configuration
        Returns:
        the setAssetPublishState API's response wrapped in a Document
        Throws:
        IpsApiException
      • createImageSet

        Document createImageSet​(S7Config s7Config,
                                String folderHandle,
                                String name,
                                String type,
                                @Nullable
                                @Nullable String thumbAssetHandle)
                         throws IpsApiException
        Create an ImageSet in a given Scene7 folder
        Parameters:
        s7Config - the Scene7 configuration
        folderHandle - Scene7 folder handle
        name - name of image set
        type - type of new image set
        thumbAssetHandle - (optional) asset handle of user-defined thumbnail image for set
        Returns:
        the IPS API response wrapped in a Document
        Throws:
        IpsApiException
      • updateImageSet

        Document updateImageSet​(S7Config s7Config,
                                String assetHandle,
                                @Nullable
                                @Nullable ImageSetMemberUpdateArray members,
                                @Nullable
                                @Nullable String thumbAssetHandle)
                         throws IpsApiException
        Update an ImageSet
        Parameters:
        s7Config - the Scene7 configuration
        assetHandle - asset handle of the image set to update
        members - (optional) list of imageset members (Null = not updated)
        thumbAssetHandle - (optional) asset handle of user-defined thumbnail image for set (Null = not updated)
        Returns:
        the IPS API response wrapped in a Document
        Throws:
        IpsApiException
      • getImageSetMembers

        Document getImageSetMembers​(S7Config s7Config,
                                    String assetHandle)
                             throws IpsApiException
        Get members of legacy ImageSet
        Parameters:
        s7Config - the Scene7 configuration
        assetHandle - asset handle of the ImageSet
        Returns:
        the IPS API response as XML Document
        Throws:
        IpsApiException - on error at IPS
      • createAssetSet

        Document createAssetSet​(S7Config s7Config,
                                String folderHandle,
                                String name,
                                String type,
                                @Nullable
                                @Nullable String setDefinition,
                                @Nullable
                                @Nullable String thumbAssetHandle)
                         throws IpsApiException
        Create an AssetSet in a given Scene7 folder
        Parameters:
        s7Config - the Scene7 configuration
        folderHandle - Scene7 folder handle
        name - name for new asset set
        type - type of new asset set
        setDefinition - (optional) set's definition string
        thumbAssetHandle - (optional) asset handle of user-defined thumbnail image for set
        Returns:
        the IPS API response wrapped in a Document
        Throws:
        IpsApiException
      • updateAssetSet

        Document updateAssetSet​(S7Config s7Config,
                                String assetHandle,
                                @Nullable
                                @Nullable String setDefinition,
                                @Nullable
                                @Nullable String thumbAssetHandle)
                         throws IpsApiException
        Update an AssetSet
        Parameters:
        s7Config - the Scene7 configuration
        assetHandle - asset handle of the asset set to update
        setDefinition - (optional) set's definition string (Null = not updated)
        thumbAssetHandle - (optional) asset handle of user-defined thumbnail image for set (Null = not updated)
        Returns:
        the IPS API response wrapped in a Document
        Throws:
        IpsApiException
      • createFolder

        Document createFolder​(String folderPath,
                              S7Config s7Config)
                       throws IpsApiException
        Create a folder on Scene7 server
        Parameters:
        folderPath - The root folder used to retrieve folders and all subfolders to the leaf level. If excluded, the company root is used.
        s7Config - the Scene7 configuration
        Returns:
        the createFolder API response wrapped in a Document
        Throws:
        IpsApiException
      • createViewerPreset

        Document createViewerPreset​(S7Config s7Config,
                                    String folderHandle,
                                    String name,
                                    String type,
                                    @Nullable
                                    @Nullable List<Scene7ConfigSetting> configSettings)
                             throws IpsApiException
        Create a preset view to determine what users can see. The preset view is applied when assets are published.
        Parameters:
        s7Config - the Scene7 configuration
        folderHandle - folder handle of the folder that contains the assets
        name - name for the viewer
        type - type of any available viewer in IPS
        configSettings - list containing Scene7ConfigSetting values to apply
        Returns:
        the createViewerPreset API response wrapped in a Document
        Throws:
        IpsApiException
      • getViewerConfigSettings

        Document getViewerConfigSettings​(S7Config s7Config,
                                         String assetHandle)
                                  throws IpsApiException
        Get all viewer configuration for the specified asset
        Parameters:
        s7Config - the Scene7 configuration
        assetHandle - asset handle for the asset in question
        Returns:
        the getViewerConfigSettings API response wrapped in a Document
        Throws:
        IpsApiException
      • setViewerConfigSettings

        Document setViewerConfigSettings​(S7Config s7Config,
                                         String assetHandle,
                                         String name,
                                         String type,
                                         List<Scene7ConfigSetting> configSettings)
                                  throws IpsApiException
        Attach viewer configuration settings to an asset Can be viewer preset or the source asset for the viewer
        Parameters:
        s7Config - the Scene7 configuration
        assetHandle - asset handle for the asset to modify
        name - name of the asset
        type - type of any available viewer in IPS
        configSettings - list containing Scene7ConfigSetting values to apply
        Throws:
        IpsApiException
      • addUser

        Document addUser​(S7Config s7Config,
                         String firstName,
                         String lastName,
                         String email,
                         String defaultRole,
                         String password,
                         @Nullable
                         @Nullable Instant passwordExpires,
                         boolean isValid,
                         List<Scene7CompanyMembership> membershipArray)
                  throws IpsApiException
        Creates a user account and adds the account to one of more companies
        Parameters:
        s7Config - The Scene7 configuration
        firstName - The user's first name
        lastName - The user's last name
        email - The user's email address
        defaultRole - The role for the user in the companies they belong, the IpsAdmin role overrides other per-company settings
        password - The user's password
        passwordExpires - The instant of expiration of the password
        isValid - Determine the user's validity
        membershipArray - List of Scene7CompanyMembership entries enumerating the membership of the user.
        Returns:
        Throws:
        IpsApiException
      • getAllUsers

        Document getAllUsers​(@NotNull
                             @NotNull S7Config s7Config,
                             boolean includeInvalid)
                      throws IpsApiException
        Return all users
        Parameters:
        s7Config - The Scene7 configuration
        includeInvalid - Indicate if invalid users should be included
        Returns:
        Throws:
        IpsApiException
      • getUsers

        Document getUsers​(@NotNull
                          @NotNull S7Config s7Config,
                          @Nullable
                          @Nullable Boolean includeInactive,
                          @Nullable
                          @Nullable Boolean includeInvalid,
                          @Nullable
                          @Nullable List<String> companyHandleArray,
                          @Nullable
                          @Nullable List<String> groupHandleArray,
                          @Nullable
                          @Nullable List<String> userRoleArray,
                          @Nullable
                          @Nullable String charFilterField,
                          @Nullable
                          @Nullable String charFilter,
                          @Nullable
                          @Nullable String sortBy,
                          @Nullable
                          @Nullable Integer recordsPerPage,
                          @Nullable
                          @Nullable Integer resultsPage)
                   throws IpsApiException
        Return a optionally sorted, filtered and paged list user results
        Parameters:
        s7Config - The Scene7 config
        includeInactive - Include or exclude inactive members
        includeInvalid - Include or exclude invalid members
        companyHandleArray - Filter results be company
        groupHandleArray - Filter results by group
        userRoleArray - Filter results by user role
        charFilterField - Filter results by field's string prefix
        charFilter - Filter results by a specific character
        sortBy - Choice of user sort field
        recordsPerPage - Number of records per page to return
        resultsPage - The desired result page
        Returns:
        Throws:
        IpsApiException
      • setUserInfo

        Document setUserInfo​(S7Config s7Config,
                             @Nullable
                             @Nullable String userHandle,
                             String firstName,
                             String lastName,
                             String email,
                             String defaultRole,
                             @Nullable
                             @Nullable Instant passwordExpires,
                             boolean isValid,
                             List<Scene7CompanyMembership> membershipArray)
                      throws IpsApiException
        Set user attributes
        Parameters:
        s7Config - The Scene7 config
        userHandle - User handle
        firstName - First name
        lastName - Last name
        email - Email address
        defaultRole - The role for the user in the companies they belong, the IpsAdmin role overrides other per-company settings
        passwordExpires - The password's expiration
        isValid - Determine if valid IPS user
        membershipArray - List of Scene7CompanyMembership entries enumerating the membership of the user
        Returns:
        Throws:
        IpsApiException
      • getImageFormats

        Document getImageFormats​(@NotNull
                                 @NotNull S7Config s7Config)
                          throws IpsApiException
        Returns image formats, such as PDF, EPS, SWF, and others.
        Parameters:
        s7Config - The Scene7 config
        Returns:
        Throws:
        IpsApiException
      • saveImageFormat

        Document saveImageFormat​(S7Config s7Config,
                                 @Nullable
                                 @Nullable String imageFormatHandle,
                                 String name,
                                 String urlModifier)
                          throws IpsApiException
        Create an image format.
        Parameters:
        s7Config - The Scene7 config
        imageFormatHandle - Image format handle you want to save
        name - Image format name
        urlModifier - IPS protocol query string
        Returns:
        Throws:
        IpsApiException
      • saveImageMap

        Document saveImageMap​(S7Config s7Config,
                              String assetHandle,
                              @Nullable
                              @Nullable String imageMapHandle,
                              String name,
                              String shapeType,
                              String region,
                              String action,
                              int position,
                              boolean enabled)
                       throws IpsApiException
        Create a new image map or edit an existing map
        Parameters:
        s7Config - The Scene7 config
        assetHandle - Handle to the asset the map belongs to
        imageMapHandle - Handle to the image map.
        name - Name of the image map
        shapeType - Choice of region shape
        region - A comma delimited list of points that define the region
        action - The href value associated with the image map
        position - The order in the list of image maps
        enabled - Whether this map is enabled
        Returns:
        Throws:
        IpsApiException
      • setImageMaps

        Document setImageMaps​(S7Config s7Config,
                              String assetHandle,
                              List<Scene7ImageMapDefinition> imageMap)
                       throws IpsApiException
        Sets the image map for an asset. You must have already created the image maps. Image maps are applied in order of retrieval from the array. This means the second image map overlays the first, the third overlays the second, and so on.
        Parameters:
        s7Config - The Scene7 config
        assetHandle - Handle to the asset
        imageMap - list of predefined Scene7ImageMapDefinition objects
        Returns:
        Throws:
        IpsApiException
      • getUploadTaskStatus

        Document getUploadTaskStatus​(String jobHandle,
                                     S7Config s7Config)
                              throws IpsApiException
        Retrieves Scene7 upload job processing status
        Parameters:
        jobHandle - Scene7 upload job handle
        s7Config - Scene7 configuration object
        Returns:
        the API's response wrapped in a Document
        Throws:
        IpsApiException
      • moveAsset

        Document moveAsset​(S7Config s7Config,
                           String assetHandle,
                           String folderHandle)
                    throws IpsApiException
        Moves an asset to a specific folder
        Parameters:
        s7Config - Scene7 configuration object
        assetHandle - Handle to the asset you want to move
        folderHandle - Handle to the destination folder
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException
      • moveAssets

        Document moveAssets​(S7Config s7Config,
                            Map<String,​String> assetFolderHandles)
                     throws IpsApiException
        Moves multiple assets independently of each other. It accomplishes this using the AssetMove type contained in the assetMoveArray. Each AssetMove field contains a destination folder
        Parameters:
        s7Config - Scene7 configuration object
        assetFolderHandles - Map that contains an asset and an asset destination folder
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException
      • moveFolder

        Document moveFolder​(S7Config s7Config,
                            String sourceFolderHandle,
                            String destinationFolderHandle)
                     throws IpsApiException
        Move a folder to a new location
        Parameters:
        s7Config - Scene7 configuration object
        sourceFolderHandle - Handle to the source folder
        destinationFolderHandle - Handle to the destination folder
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException
      • renameAsset

        Document renameAsset​(S7Config s7Config,
                             String assetHandle,
                             String name,
                             boolean validateName)
                      throws IpsApiException
        Rename an asset
        Parameters:
        s7Config - Scene7 configuration object
        assetHandle - Handle to the asset you want to move
        name - Asset's new name
        validateName - If the validateName is true and the asset type requires a unique IPS ID, then the new name is checked for global uniqueness and renameAsset throws a fault if it is not unique.
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException
      • renameFolder

        Document renameFolder​(S7Config s7Config,
                              String folderHandle,
                              String folderName)
                       throws IpsApiException
        Rename a folder
        Parameters:
        s7Config - Scene7 configuration object
        folderHandle - Handle to the folder
        folderName - New folder name
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException
      • renameAssetToUniqueName

        String renameAssetToUniqueName​(S7Config s7Config,
                                       String assetHandle,
                                       String newDesiredName)
                                throws IpsApiException
        Tries to rename given asset to the new name, maintaining the requirement of no duplicate asset names can exists in S7 for a given Company. If attempt was failed, it tries adding "-1" to the name, and repeat, then "-2" and so on. The maximum attempts count is 100. Note: when name ends with "-AVS" suffix - numbers are added before "-AVS" (S7 requirement).
        Parameters:
        s7Config - configuration for access to Scene7 server
        assetHandle - asset handle (ID)
        newDesiredName - new asset name, case-sensitive
        Returns:
        actual name which was able to rename
        Throws:
        IpsApiException - on error at Scene7
      • updateSmartCrops

        Document updateSmartCrops​(S7Config s7Config,
                                  SmartCropUpdateArray updateArray)
                           throws IpsApiException
        Update one or more Smart Crop sub asset(s)
        Parameters:
        s7Config - Scene7 configuration object
        updateArray - Array of SmartCropUpdate objects containing subasset handles and NormalizedCropRect values
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException
      • addSmartCrops

        Document addSmartCrops​(S7Config s7Config,
                               String assetHandle,
                               SmartCropAddArray addSmartCropArray)
                        throws IpsApiException
        Add one or more Smart Crop sub asset(s)
        Parameters:
        s7Config - Scene7 configuration object
        assetHandle - asset handle for asset to which smart crops are to be added
        addSmartCropArray - Array of SmartCropUpdate objects NormalizedCropRect values and their respective names
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException
      • getXMPPacket

        Document getXMPPacket​(S7Config s7Config,
                              String assetHandle)
                       throws IpsApiException
        Retrieves an XMP Metadata packet for the specified asset.
        Parameters:
        s7Config - Scene7 configuration object
        assetHandle - Handle to the asset you want to get XMP metadata
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException - in case of IPS failures or undefined data format
      • updateXMPPacket

        Document updateXMPPacket​(S7Config s7Config,
                                 String assetHandle,
                                 String xmpPacketAsXml)
                          throws IpsApiException
        Sets or updates an XMP metadata packet for an asset.
        Parameters:
        s7Config - Scene7 configuration object
        assetHandle - Handle to the asset you want to update XMP metadata
        xmpPacketAsXml - updated XMP packet to update asset metadata in XML format
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException - in case of IPS failures or undefined data format
      • getLoginStatus

        Document getLoginStatus​(ResourceResolver resourceResolver,
                                String email,
                                String password,
                                String region)
                         throws IpsApiException
        Checks the login in Scene7 with the given credentials
        Parameters:
        resourceResolver - Resource Resolver used to access Scene7 configuration
        email - Email id of the user
        password - Password of the user
        region - the user's region
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException - in case of IPS failures or undefined data format
      • setPassword

        Document setPassword​(S7Config s7Config,
                             String userHandle,
                             String password,
                             @Nullable
                             @Nullable Integer validityInDays)
                      throws IpsApiException
        Sets the password for a given user with an expiry of 100 years ahead from the current date.
        Parameters:
        s7Config - Scene7 configuration object
        userHandle - Scene7 User Handle of the user
        password - Password to be set
        validityInDays - Password validity in number of days. Set it to null/zero for default expiry of 100 years.
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException - in case of IPS failures or undefined data format
      • cdnCacheInvalidation

        Document cdnCacheInvalidation​(S7Config s7Config,
                                      UrlArray urlArray)
                               throws IpsApiException
        Forwards the supplied list of URLs to the Scene7 CDN (Content Distribution Network) provider to invalidate their existing cache of HTTP responses
        Parameters:
        s7Config - Scene7 configuration object
        urlArray - List of up to 1000 URLs to invalidate from the CDN cache
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException - in case of IPS failures or undefined data format
      • getSecureISAuthToken

        Document getSecureISAuthToken​(S7Config s7Config)
                               throws IpsApiException
        Gets the token for a given company to access secure preview IS.
        Parameters:
        s7Config - Scene7 configuration object
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException - in case of IPS failures or undefined data format
      • deleteSubAssets

        Document deleteSubAssets​(String companyHandle,
                                 String assetHandle,
                                 List<String> subAssetHandles,
                                 S7Config s7Config)
                          throws IpsApiException
        Deletes the sub assets for an asset
        Parameters:
        companyHandle - the scene7 handle to the company
        assetHandle - the scene7 handle to the main asset
        subAssetHandles - list of scene7 handles to the sub assets
        s7Config - the scene7 configuration
        Returns:
        The API's response wrapped in a Document
        Throws:
        IpsApiException - in case of IPS failures or undefined data format
      • getCompanyInfo

        GetCompanyInfoReturn getCompanyInfo​(String companyName,
                                            String companyHanlde,
                                            S7Config s7Config)
                                     throws IpsApiException
        Get the CompanyInfo given any one of the mandatory parameter - companyName or companyHandle
        Parameters:
        companyName - the name of the company
        companyHanlde - the handle of the company
        s7Config - the scene7 configuration
        Returns:
        response of company info params
        Throws:
        IpsApiException - in case of IPS failures or undefined data format