Filter Organization - Intergraph Smart 3D Web API - Customization & Programming - Hexagon PPM

Intergraph Smart 3D Web API Programmers Reference

Language
English
Product
Intergraph Smart 3D Web API
Subproduct
Smart 3D Web APIs
Search by Category
Customization & Programming
Smart 3D Version
12.1 (2019)

Filter entities are organized based off their path in Smart 3D and are discoverable underneath FilterFolder entities. Filters under the "Catalog Filters" and "Plant Filters" are discoverable underneath the CatalogFiltersFolder and PlantFiltersFolder navigation properties off Plants, respectively.

Examples:

  • To view all filters under the Equipment folder in the example above, the following query could be used:

    GET <ServiceRoot>/Sites('MySiteAlias')/Plants('MyPlant')/CatalogFiltersFolder/ ChildFolders(‘{Default Filters oid}’)/ ChildFolders(‘{SP3D Report Filters oid}’)/ChildFolders(‘{Types of Reports oid}’)/ChildFolders(‘{Equipment oid}’)/Filters

  • To view all filters in general underneath a plant and its corresponding catalog the following query could be used:

    GET <ServiceRoot>/Sites('MySiteAlias')/Plants('MyPlant')/S3dFilters

  • To retrieve a filter entity by OID, and provide it as the key to the S3dFilters collection:

    GET <ServiceRoot>/Sites('MySiteAlias')/Plants('MyPlant')/S3dFilters('{0000272E-0000-0000-0300-8F1F455B1706}')/

  • To get a single filter using the path, the GetS3dFilterByPath function can be used:

    GET <ServiceRoot>/Sites('MySiteAlias')/Plants('MyPlant')/Com.Ingr.Smart3d.V1.GetS3dFilterByPath(filterPath= 'Catalog Filters; Default Filters;SP3D Report Filters;Types of Reports;Equipment;Equipment Finishing Sorted by Equipment Name')

Smart 3D filters implement the Smart API Parametric Filters Protocol. Therefore, information about the expected parameters to be supplied in the body to execute a filter are returned as part of instance annotation and not as properties on the S3dFilter entity. To request documentation for a parametric filter, query for a single instance with the $format=application.json;odata.metadata=full OData format parameter. In addition, you must include the Prefer HTTP header on the request with the value: odata.include-annotations="*".