schema { query: Query mutation: Mutation subscription: Subscription } directive @canonical on OBJECT | INTERFACE | INPUT_OBJECT | UNION | ENUM | SCALAR | FIELD_DEFINITION | INPUT_FIELD_DEFINITION directive @computed(selectionSet: String!) on FIELD_DEFINITION """Marks an element of a GraphQL schema as no longer supported.""" directive @deprecated(reason: String = "No longer supported") on FIELD_DEFINITION | ARGUMENT_DEFINITION | INPUT_FIELD_DEFINITION | ENUM_VALUE """Marks an element of a GraphQL schema as experimental.""" directive @experimental on FIELD_DEFINITION | ARGUMENT_DEFINITION | INPUT_FIELD_DEFINITION | ENUM_VALUE | ENUM | INTERFACE | OBJECT | SCALAR | UNION | QUERY | MUTATION | SUBSCRIPTION | FIELD | INPUT_OBJECT """Directs the executor to include this field or fragment only when the `if` argument is true.""" directive @include(if: Boolean!) on FIELD | FRAGMENT_SPREAD | INLINE_FRAGMENT directive @key(selectionSet: String!) on OBJECT """Instruction for establishing a live connection that is updated once the underlying data changes.""" directive @live(if: Boolean = true, throttle: Int) on QUERY directive @merge(argsExpr: String, keyArg: String, keyField: String, key: [String!], additionalArgs: String) on FIELD_DEFINITION """Indicates exactly one field must be supplied and this field must not be `null`.""" directive @oneOf on INPUT_OBJECT """Directs the executor to skip this field or fragment when the `if` argument is true.""" directive @skip(if: Boolean!) on FIELD | FRAGMENT_SPREAD | INLINE_FRAGMENT """Exposes a URL that specifies the behavior of this scalar.""" directive @specifiedBy(url: String!) on SCALAR enum AccountCapabilityEnum { """The user can change details such as the company name.""" CAN_CHANGE_COMPANY_DETAILS """The user can change the billing details of the account.""" CAN_CHANGE_BILLING_DETAILS """The user can change the subscription of the account (not including content store subscriptions).""" CAN_CHANGE_SUBSCRIPTION """The user can purchase content on the content store.""" CAN_PURCHASE_CONTENT """The user can subscribe to content on the content store.""" CAN_SUBSCRIBE_TO_CONTENT """The user can invite new users to the account.""" CAN_INVITE_USER """The user can delete other users in the account.""" CAN_DELETE_USER """The user can create projects in the account.""" CAN_CREATE_PROJECT """The user can see all projects in the account, even those who are not actively shared with the user.""" CAN_ACCESS_ANY_PROJECT """The user can delete all projects in the account, even those who are not actively shared with the user.""" CAN_DELETE_ANY_PROJECT """The user can assign an account role to users in the account.""" CAN_ASSIGN_ACCOUNT_ROLE """The user can cancel the subscription of the account (not including content store subscriptions).""" CAN_CANCEL_SUBSCRIPTION """The user can see account details such as the company name.""" CAN_SEE_ACCOUNT_INFO """The user can see which subscription the account has.""" CAN_SEE_ACCOUNT_SUBSCRIPTION """ The user can see user info of other users in the system (including users in other accounts), such as first and last name, email address and their accounts. """ CAN_SEE_OTHER_USER_INFO """The user can change their own user information, such as first and last name.""" CAN_SET_OWN_USER_INFO """The user can delete his own account.""" CAN_DELETE_ACCOUNT """ The user can add/modify/delete custom documents that are linked to an account. (custom documents linked to project, asset, annotation, etc. have other permissions) """ CAN_EDIT_ACCOUNT_CUSTOM_DATA """ The user can export CSV usage reports that include user activity and resource consumption data for their own account. """ CAN_GENERATE_ACCOUNT_USAGE_REPORT """The user can create automation users with OAuth client credentials for programmatic API access.""" CAN_CREATE_CLIENT_CREDENTIALS """The user can view user groups of the account and their members.""" CAN_VIEW_USERGROUP """The user can create user groups in the account.""" CAN_CREATE_USERGROUP """The user can edit user groups of the account, such as their name and description.""" CAN_EDIT_USERGROUP """The user can delete user groups of the account.""" CAN_DELETE_USERGROUP """The user can add or remove members of user groups in the account.""" CAN_EDIT_USERGROUP_MEMBERS } enum AccountDeletionStatusEnum { SUCCESS ERROR } enum AccountLimitEnum { SEATS STORAGE STREAMING } enum AccountMembersOrderEnum { ACCOUNT_ROLE_ASC ACCOUNT_ROLE_DESC MODIFIED_AT_ASC MODIFIED_AT_DESC CREATED_AT_ASC CREATED_AT_DESC } """The fields by which account members can be ordered.""" enum AccountMembersOrderEnumV2 { CREATED_AT MODIFIED_AT FIRST_NAME LAST_NAME } enum AccountProfileOrderEnum { NAME_ASC NAME_DESC } enum AccountRoleEnum { ACCOUNT_ROLE_ADMIN ACCOUNT_ROLE_MAINTAINER ACCOUNT_ROLE_EMPLOYEE ACCOUNT_ROLE_MEMBER ACCOUNT_ROLE_LIMITED_ACCESS ACCOUNT_ROLE_EXTERNAL } enum AddressContentTypeEnum { IMAGE ELEVATION } enum AddressOrderEnum { MODIFIED_AT_ASC MODIFIED_AT_DESC CREATED_AT_ASC CREATED_AT_DESC } enum AddressSamplingModeEnum { POINT AREA } enum AddressTypeEnum { OGC_3D_TILES WFS WMS LTS WMTS PANORAMIC HSPC DOWNLOAD DOWNLOAD_ASSET_FILE ZIP JSON URL UNDEFINED } enum AddressTypeEnumV2 { """The artifact is intended to be persisted on the clients device.""" DOWNLOADABLE """The artifact is intended to be streamed and visualized by clients without downloading the whole file.""" STREAMABLE """The artifact is intended to be shown in full by the client without persisting it on the device.""" VISUALIZABLE } enum AddressViewingModeEnum { NOT_SPECIFIED WHITE REALISTIC WIREFRAME } enum AnnotationConflictTypeEnum { """Categories/Category values with the same ID were found. The names of the last modified were used.""" CATEGORY_DIFFERENT_NAME_CONFLICT @deprecated(reason: "No longer supported, termination planned for 2028-03-31.") """Values in categories were extended to fit both category definitions.""" CATEGORY_VALUE_CONFLICT """ Different priorities were found for the same Categories/Category values. The ones found from the last modified were used. """ CATEGORY_SAME_PRIORITY_CONFLICT """ Same orders were found for different Categories/Category values. The ones found from the last modified were used. """ CATEGORY_DIFFERENT_PRIORITY_CONFLICT """ Same names were found for different Categories/Category values. The imported ones were modified to avoid duplications. """ CATEGORY_SAME_NAME_CONFLICT @deprecated(reason: "No longer supported, termination planned for 2028-03-31.") """ A category and a free text category have the same name. The free text category name was changed to avoid duplication. """ CATEGORY_SAME_NAME_AS_FIELD_CONFLICT @deprecated(reason: "No longer supported, termination planned for 2028-03-31.") """ The geotag import could not be completed due to an internal error. This issue occurs when there is a problem on our side during processing. """ GEOTAGS_IMPORT_FAILED """"The geotag copy could not be completed due to an internal error. """" GEOTAGS_COPY_FAILED """Geotags with the same originalId but different names were found.""" GEOTAG_DIFFERENT_NAME_CONFLICT """Geotag text category value having the same value""" GEOTAG_TEXT_CATEGORY_SAME_VALUE_CONFLICT """Geotag list category value having the same value""" GEOTAG_LIST_CATEGORY_SAME_VALUE_CONFLICT """Geotag with same attachment external id but different thumbnail uri""" GEOTAG_ATTACHMENT_DIFFERENT_THUMBNAIL_URI_CONFLICT """Geotag with same attachment external id but different file uri""" GEOTAG_ATTACHMENT_DIFFERENT_FILE_URI_CONFLICT } enum ArtifactFileOrderEnum { NAME_ASC NAME_DESC } enum ArtifactOrderEnum { MODIFIED_AT_ASC MODIFIED_AT_DESC CREATED_AT_ASC CREATED_AT_DESC } enum ArtifactOrderEnumV2 { CREATED_AT MODIFIED_AT } """The type of entity an artifact is attached to.""" enum ArtifactParentTypeEnum { """The artifact is attached to an asset (through its grouped asset).""" ASSET """The artifact is attached to a scene node.""" SCENE_NODE """The artifact is attached to an analysis.""" ANALYSIS """The artifact is attached to a floor plan.""" FLOOR_PLAN } """Status of an artifact. Uploaded artifacts go through UPLOADING → COMPLETE. Pipeline-produced artifacts start as PROCESSING and transition to COMPLETE or FAILED.""" enum ArtifactStatusEnum { """The artifact is being uploaded by a client.""" UPLOADING """The artifact is being processed on HxDR.""" PROCESSING """The artifact is complete and will not change anymore.""" COMPLETE """Creation of the artifact failed, for example due to failed processing.""" FAILED } enum ArtifactTypeEnum { MESH POINT_CLOUD PANORAMIC IMAGE_2D_ORTHO LIDAR LOCALIZATION VECTOR_OR_RASTER ZIP UNDEFINED } enum AssetOrderEnum { MODIFIED_AT_ASC MODIFIED_AT_DESC CREATED_AT_ASC CREATED_AT_DESC NAME_ASC NAME_DESC SIZE_ASC SIZE_DESC ASSET_TYPE_ASC ASSET_TYPE_DESC } enum AssetStatusEnum { ASSET_EMPTY ASSET_INCOMPLETE ASSET_COMPLETE } enum AssetTypeEnum { E57_UPLOAD BINZ_UPLOAD REVIT_UPLOAD NWD_UPLOAD IFC_UPLOAD B2G_UPLOAD B2G_AUTO_REGISTRATION @deprecated(reason: "In favour of AUTOREGISTRATION_RESULT") AUTOREGISTRATION_RESULT SCENE_EXPORT_RESULT COARSE_REGISTRATION_UPLOAD LAS_UPLOAD LGS_UPLOAD LGSX_UPLOAD HSPC_UPLOAD OGC3DTILES_UPLOAD HXCP_PURCHASE OBJ_UPLOAD GPR_SURVEY_UPLOAD GLB_UPLOAD GENERIC_SINGLE_FILE_UPLOAD GENERIC_MULTI_FILE_UPLOAD VECTOR_OR_RASTER_UPLOAD SHP_UPLOAD GEOJSON_UPLOAD GML_UPLOAD KML_UPLOAD GEOTIFF_UPLOAD FUSION_COVERAGE_UPLOAD UAV_IMAGES_UPLOAD UAV_VIDEO_UPLOAD FBX_UPLOAD DXF_UPLOAD NOT_RECOGNIZED @deprecated(reason: "In favour of GENERIC_SINGLE_FILE_UPLOAD or GENERIC_MULTI_FILE_UPLOAD") NOT_SET CYCLONE_F360_UPLOAD DBX_UPLOAD } enum AssetVersionOrderEnum { CREATED_AT_ASC CREATED_AT_DESC MODIFIED_AT_ASC MODIFIED_AT_DESC SIZE_ASC SIZE_DESC VERSION_ASC VERSION_DESC } enum AutoRegistrationTypeEnum { POINT_CLOUD } enum BaselayerOriginEnum { HXDR CATALOG EXTERNAL_URL } enum BillingIntervalEnum { MONTH YEAR } enum ChecksumAlgorithmEnum { SHA1 SHA256 } enum ConsumptionTypeEnum { STREAMABLE DOWNLOADABLE """ deprecated Reason: we will generate 2 different addresses when an artifact is both """ STREAMABLE_AND_DOWNLOADABLE @deprecated(reason: " To be removed - added for the moment just for backwards compatibility") } enum DataCategoryEnum { PANORAMIC MESH SUB_SAMPLED_POINT_CLOUD POINT_CLOUD PURCHASED_DATA IMAGE_2D_ORTHO LIDAR LOCALIZATION DOCKER_IMAGE_CONFIG VECTOR_OR_RASTER FOLDER INTERMEDIATE_RESULT USD GENERIC_SINGLE_FILE GENERIC_MULTI_FILE DIRECTIONAL_POINT_CLOUD CAD_MODEL GPR_RAW GAUSSIAN_SPLATS TRAJECTORY SCENE_ATTACHMENT } enum DataTypeEnum { ORTHO_2D LIDAR MESH LAND_COVER POINT_CLOUD DSM DTM } """Deprecated, use the service type and consumption type combination""" enum DownloadTypeEnum { GENERIC ZIP JSON PTS LAS E57 OBJ IMAGES B2G NOT_APPLICABLE } enum DownloadableFormatEnum { GENERIC_FILE GEOTIFF B2G E57 BINARY_MAP LAS PTS GLB LGS JSON ZIP OBJ SLPK USD } enum EndpointTypeEnum { HSPC OGC_3D_TILES MESH WFS COG } enum EntityTypeEnum { USER PROJECT ASSET } enum FileOrderEnum { MODIFIED_AT_ASC MODIFIED_AT_DESC CREATED_AT_ASC CREATED_AT_DESC NAME_ASC NAME_DESC SIZE_ASC SIZE_DESC } enum FolderOrderEnum { MODIFIED_AT_ASC MODIFIED_AT_DESC CREATED_AT_ASC CREATED_AT_DESC NAME_ASC NAME_DESC } enum GeoJSONCoordinateType { Point LineString Polygon MultiPoint MultiLineString MultiPolygon } enum GeoreferencedArtifactTypeEnum { MESH POINT_CLOUD PANORAMIC IMAGE_2D_ORTHO LIDAR } enum ImplementedPipeline { MELOWN_VEF_TO_VEF_CLIP MELOWN_VEF_TO_OGC3DTILES_CLIP MELOWN_VEF_TO_SLPK_CLIP MYVR_HSPC_TO_LAS } enum ImplementedProcessingPipelines { AUTOREGISTRATION_B2G_TO_HSPC AUTOREGISTRATION_E57_TO_HSPC CYCLONE_SAN_RAMON_LGS_TO_HSPC GENERATE_FOLDER_STRUCTURE_FILE HTC_GPR_SURVEY_TO_HSPC HXDR_CATALOG_STREAMING_TILESET_MERGER HXDR_CONVERT_ASSET_TO_ARTIFACT HXDR_SCENE_NODE_REGISTRATION HXDR_SCENE_BIM_AUTO_ALIGNMENT HXDR_SCENE_DEVIATION_ANALYSIS HXDR_SCENE_TO_ASSET HXDR_ZIPPER IMMERSAL_COARSE_REGISTRATION_TO_VISUAL_MAP LUCIAD_BINZ_TO_OGC3DTILES LUCIAD_E57_TO_CUBEMAP LUCIAD_E57_TO_CUBEMAP_POST_PROCESSING LUCIAD_FUSION_COVERAGE_TO_LTS LUCIAD_GLB_TO_OGC3DTILES LUCIAD_IFC_TO_OGC3DTILES LUCIAD_LGS_CONVERTER LUCIAD_LGS_CONVERTER_POST_PROCESSING LUCIAD_OBJ_TO_OGC3DTILES LUCIAD_PANORAMIC_CONVERSION LUCIAD_REVIT_TO_OGC3DTILES LUCIAD_NWD_TO_OGC3DTILES LUCIAD_TIFF_TO_COG LUCIAD_USD_CONVERTER LUCIAD_DXF_TO_OGC3DTILES LUCIAD_DXF_TO_OGC3DTILES_POST_PROCESSING LUCIAD_VECTOR_OR_RASTER_TO_WMS LUCIAD_VECTOR_OR_RASTER_TO_WMTS LUCIAD_VECTOR_TO_WFS MELOWN_UAV_CONVERTER MELOWN_GAUSSIAN_SPLATTING MELOWN_VEF_TO_OGC3DTILES_CLIP MELOWN_VEF_TO_SLPK_CLIP MELOWN_VEF_TO_VEF_CLIP MYVR_E57_TO_HSPC MYVR_HSPC_TO_E57 MYVR_HSPC_TO_LAS MYVR_HSPC_TO_LAS_AOI MYVR_HSPC_TO_PTS MYVR_LAS_TO_HSPC GMAT_DBX_CONVERTER TECHNODIGIT_GENERATE_DEPTHMAPS TECHNODIGIT_HSPC_TO_LOW_QUALITY_OGC3DTILES TECHNODIGIT_HSPC_TO_OGC3DTILES TUKAN_B2G_TO_HSPC AI_HUB_POINT_CLOUD_CLASSIFICATION AI_HUB_IMAGE_BEAUTIFICATION } enum InputType { ASSET ARTIFACT PREVIOUS_OUTPUT CONFIG AOI DATASET LIMIT_BOX UNDEFINED } enum InvoiceStatusEnum { DRAFT OPEN PAID VOID UNCOLLECTIBLE } enum ItemCollectionType { FeatureCollection } enum ItemType { Feature } enum JobStatus { QUEUED SUBMITTED STARTED IN_PROGRESS COMPLETED FAILED CANCELLED TOO_MANY_RETRIES NOTHING_TO_DO } enum JobStatusGQL { STARTED COMPLETED FAILURE IN_PROGRESS CANCELLED SUBMITTED } enum JobType { POINT_CLOUD MESH PANORAMIC B2G CONVERT_TO_PTS UNDEFINED } enum JobTypeGQL { PROCESS FILE_UPLOAD FUSION_REGISTER } enum MeasurementAnnotationEnum { AREA ORTHOGONAL PLANAR_AREA } enum OrderItemStatusGQL { PENDING PROCESSING COMPLETED FAILED } enum OrderStatusGQL { PENDING STARTED COMPLETED FAILED } enum OutputFormat { LAS PTS E57 OGC3D_TILES ZIP BINARY_MAP WMS WMTS WFS LTS COG OBJ GLB SPZ FOLDER_ZIPPED USDZ } enum ParentTypeEnum { GROUPED_ASSET } enum PaymentMethodEnum { PAY_BY_INVOICE PAY_BY_CARD DEMO } enum PaymentMethodShopEnum { PAY_BY_INVOICE PAY_BY_CARD DEMO } enum PaymentSystemEnum { STRIPE LICENSE } enum PipelineResultAvailabilityEnum { """The pipeline result is always available after the pipeline has finished, regardless of the input data.""" ALWAYS """The pipeline result is only available if the input data meets certain criteria.""" DEPENDS_ON_INPUT_DATA } enum PipelineResultDataCategoryEnum { DIRECTIONAL_POINT_CLOUD GENERIC_SINGLE_FILE IMAGE_2D_ORTHO LOCALIZATION MESH PANORAMIC POINT_CLOUD SUB_SAMPLED_POINT_CLOUD USD VECTOR_OR_RASTER GAUSSIAN_SPLATS TRAJECTORY } enum PipelineStatus { CREATED WAITING_FOR_RESOURCE PREPARING PENDING RUNNING SUCCESS FAILED CANCELED SKIPPED MANUAL_TRIGGER SCHEDULED } enum PlatformCapabilityEnum { """The user can use the persist asset mutation.""" CAN_PERSIST_ASSET """The user can move or copy any asset from any folder to any other folder.""" CAN_MOVE_COPY_ASSET """The user can view any asset on the platform.""" CAN_VIEW_ASSET """The user can use the persist artifact mutation.""" CAN_PERSIST_ARTIFACT @deprecated(reason: "No longer supported, termination planned for 2026-09-30") """The user can edit any asset on the platform.""" CAN_EDIT_ACCOUNT """The user can view any account on the platform.""" CAN_VIEW_ACCOUNT """The user can change the account role of any user on the platform.""" CAN_CHANGE_ACCOUNT_ROLE """The user can change the tenant role of any user on the platform.""" CAN_CHANGE_TENANT_ROLE """The user can change the platform role of any user on the platform.""" CAN_CHANGE_PLATFORM_ROLE """The user can view any user on the platform.""" CAN_VIEW_USER """The user can delete any user on the platform.""" CAN_DELETE_USER """The user can delete any account on the platform.""" CAN_DELETE_ACCOUNT """The user can trigger data synchronisation jobs via mutations.""" CAN_TRIGGER_SYNC_JOB """The user can change the project owner of any project on the platform.""" CAN_CHANGE_PROJECT_OWNER """The user can create new tenants.""" CAN_CREATE_TENANT """The user can update tenant information of any tenant on the platform.""" CAN_UPDATE_TENANT """The user can set the default tenant for new accounts.""" CAN_SET_DEFAULT_TENANT """The user can delete tenants.""" CAN_DELETE_TENANT """The user can assign any account to any tenant.""" CAN_ASSIGN_ACCOUNT_TO_TENANT """The user can view any tenant on the platform.""" CAN_VIEW_TENANT """The user can access all entities on the platform.""" CAN_ACCESS_ALL_ENTITIES """The user can clear the cache of a specific entity.""" CAN_CLEAR_CACHE """The user can edit (including resending) DLQ messages.""" CAN_EDIT_DLQ_MESSAGE """The user can edit catalog items.""" CAN_EDIT_CATALOG_ITEM """The user can edit catalog layers.""" CAN_EDIT_CATALOG_LAYER """The user can edit catalog collections.""" CAN_EDIT_CATALOG_COLLECTION """The user can view any catalog security group on the platform.""" CAN_VIEW_CATALOG_SECURITY_GROUP """The user can edit catalog security groups.""" CAN_EDIT_CATALOG_SECURITY_GROUP """The user can view catalog items.""" CAN_VIEW_CATALOG_ITEM """The user can view catalog layers.""" CAN_VIEW_CATALOG_LAYER """The user can view catalog collections.""" CAN_VIEW_CATALOG_COLLECTION """The user can view any project on the platform.""" CAN_VIEW_PROJECT """The user can view any label on the platform.""" CAN_VIEW_LABEL """The uer can edit any label on the platform.""" CAN_EDIT_LABEL """The user can view platform wide pipeline usage.""" CAN_VIEW_PIPELINE_USAGE """The user can edit subscription information of any account on the platform.""" CAN_EDIT_ACCOUNT_SUBSCRIPTION """The user can view subscription information of any account on the platform.""" CAN_VIEW_ACCOUNT_SUBSCRIPTION """The user can edit any streaming subscription on the platform.""" CAN_EDIT_STREAMING_SUBSCRIPTION """The user can view platform wide usage information.""" CAN_VIEW_USAGE """The user can edit usage for a specific account.""" CAN_EDIT_USAGE """The user can generate vouchers for any account on the platform.""" CAN_GENERATE_VOUCHER """The user can view pipeline information for any pipeline on the platform.""" CAN_VIEW_PIPELINE_INFO """The user can view pipeline logs for any pipeline on the platform.""" CAN_VIEW_PIPELINE_LOGS """The user can zip pipeline result for any pipeline on the platform.""" CAN_ZIP_PIPELINE_RESULT """The user can trigger any pipeline on the platform.""" CAN_TRIGGER_ANY_PIPELINE """The user can view any cart on the platform.""" CAN_VIEW_CART """The user can edit any baselayer on the platform.""" CAN_EDIT_BASELAYER """ The user can generate CSV usage reports that include user activity and resource consumption data for any account on the platform. """ CAN_GENERATE_ANY_ACCOUNT_USAGE_REPORT """The user can move a project to a new tenant.""" CAN_MOVE_PROJECT_TO_TENANT """The user can release a scene lock owned by another user.""" CAN_EDIT_LOCK """The user can end a scene transaction lock owned by another user.""" CAN_EDIT_TRANSACTION """The user can view feature flags for all regions and tenants of the environment.""" CAN_VIEW_FEATURE_FLAGS """The user can create feature flags for all regions and tenants of the environment.""" CAN_CREATE_FEATURE_FLAGS """The user can edit feature flags for all regions and tenants of the environment.""" CAN_EDIT_FEATURE_FLAGS """The user can toggle feature flags for all regions and tenants of the environment.""" CAN_TOGGLE_FEATURE_FLAGS """The user can archive (soft delete) feature flags for all regions and tenants of the environment.""" CAN_ARCHIVE_FEATURE_FLAGS } enum PlatformRoleEnum { USER ADMIN SUPER_ADMIN CATALOG_ADMIN SUPPORT LIMITED_SUPPORT BE_SUPPORT } """Point Cloud Classification models""" enum PointCloudClassificationModelEnum { """ Point cloud classification model for indoor scenes. The model works best on data from terrestrial and kinematic laser scanners. """ PCC_IND_GEN """ Point cloud classification model for indoor construction scenes. The model works best on data from terrestrial and kinematic laser scanners. """ PCC_INDCS_GEN """ Point cloud classification model for outdoor scenes. The model works best on data from terrestrial laser scanners. """ PCC_OUTD_TLS """ Point cloud classification model for heavy construction sites in outdoor scenarios. The model works best on photogrammetry data from UAVs. """ PCC_OUTDHCS_UAV """ Point cloud classification model for industrial plant scenes. The model works best on data from terrestrial laser scanners. """ PCC_PLANT_TLS """ Point cloud classification model for rail scenes. The model works best on data from mobile mapping systems. """ PCC_RAIL_MMS """ Point cloud classification model for road scenes. The model works best on data from mobile mapping systems. """ PCC_ROAD_MMS } enum PolygonType { BBOX GEOJSON SHAPEFILE } enum ProcessingErrorLevel { WARNING ERROR } enum ProcessingErrorType { TOKENS_LIMIT_EXCEEDED INVALID_INPUT INVALID_ACCOUNT_OR_ADDRESS INTERNAL_ERROR MISSING_ARTIFACTS UNDEFINED NO_DATA } enum ProcessingPipelineName { AI_HUB_IMAGE_BEAUTIFICATION MELOWN_GAUSSIAN_SPLATTING MYVR_HSPC_TO_LAS MYVR_HSPC_TO_PTS MYVR_HSPC_TO_E57 TECHNODIGIT_HSPC_TO_OGC3DTILES TECHNODIGIT_HSPC_TO_LOW_QUALITY_OGC3DTILES IMMERSAL_COARSE_REGISTRATION_TO_VISUAL_MAP LUCIAD_VECTOR_OR_RASTER_TO_WMS @deprecated(reason: "No longer supported, termination planned for 2027-03-31.") LUCIAD_VECTOR_OR_RASTER_TO_WMTS @deprecated(reason: "No longer supported, termination planned for 2027-03-31.") LUCIAD_VECTOR_TO_WFS LUCIAD_FUSION_COVERAGE_TO_LTS @deprecated(reason: "No longer supported, termination planned for 2027-03-31.") LUCIAD_TIFF_TO_COG LUCIAD_USD_CONVERTER LUCIAD_DXF_TO_OGC3DTILES LUCIAD_DXF_TO_OGC3DTILES_POST_PROCESSING HXDR_ZIPPER } enum ProcessingPipelineNameForTokenQuotation { AUTOREGISTRATION_B2G_TO_HSPC AUTOREGISTRATION_E57_TO_HSPC TECHNODIGIT_HSPC_TO_OGC3DTILES } enum ProcessingStatus { CREATED WAITING_FOR_RESOURCE PREPARING PENDING RUNNING SUCCESS SUCCESS_NO_OUTPUT FAILED CANCELED SKIPPED MANUAL SCHEDULED } enum ProjectCapabilityEnum { """The user can modify the project, such as changing the project name and thumbnail.""" CAN_MODIFY_PROJECT """The user can delete the project.""" CAN_DELETE_PROJECT """The user can invite new users to the project with editor role.""" CAN_INVITE_EDITOR """The user can invite new users to the project with collaborator role.""" CAN_INVITE_COLLABORATOR """The user can invite new users to the project with viewer role.""" CAN_INVITE_VIEWER """The user can change the project role of other users in the project.""" CAN_ASSIGN_ROLE """The user can remove project members from the project.""" CAN_REMOVE_PROJECT_MEMBER """The user can create new grouped assets and upload files to folders in the project.""" CAN_UPLOAD_ASSET """The user can download files and artifacts from grouped assets in the project.""" CAN_DOWNLOAD_ASSET """The user can delete grouped assets in the project.""" CAN_DELETE_ASSET """The user can modify grouped assets in the project, such as their name.""" CAN_EDIT_ASSET """The user can create, update and delete tours on grouped assets in the project.""" CAN_CREATE_EDIT_TOUR """The user can create, update and delete annotations on grouped assets in the project""" CAN_CREATE_EDIT_ANNOTATION """The user can create, edit and delete labels on the project.""" CAN_CREATE_EDIT_PROJECT_LABEL """The user can create, edit and delete labels on grouped assets in the project.""" CAN_CREATE_EDIT_ASSET_LABEL """The user can create, edit and delete scenes in the project.""" CAN_CREATE_EDIT_SCENE """The user can expand annotations on scene root, group, and leaf nodes""" CAN_SEE_SCENE_NODE_ANNOTATION """The user can change which user owns the project.""" CAN_MODIFY_PROJECT_OWNER """The user can create a public sharing code for grouped assets and scenes in the project.""" CAN_PUBLIC_SHARE """The user can create, edit and delete folders in the project.""" CAN_CREATE_EDIT_FOLDER """The user can create, edit and delete config metadata objects in the project.""" CAN_CREATE_EDIT_CONFIG_METADATA """The user can create, edit and delete their own comments in the project.""" CAN_CREATE_EDIT_COMMENT """The user can delete any comments, including from other users, in the project.""" CAN_DELETE_ANY_COMMENT """The user can copy all label annotations along its children from a grouped asset to another one.""" CAN_COPY_LABEL_ANNOTATIONS """The user can create and edit analyses on scenes in the project.""" CAN_CREATE_EDIT_ANALYSIS """The user can delete analyses on scenes in the project.""" CAN_DELETE_ANALYSIS """The user can create and edit artifacts on analyses in the project.""" CAN_CREATE_EDIT_ARTIFACT } enum ProjectMemberOrderEnum { PROJECT_ROLE_ASC PROJECT_ROLE_DESC } enum ProjectOrderEnum { MODIFIED_AT_ASC MODIFIED_AT_DESC CREATED_AT_ASC CREATED_AT_DESC NAME_ASC NAME_DESC } enum ProjectRoleEnum { PROJECT_ROLE_OWNER PROJECT_ROLE_EDITOR PROJECT_ROLE_COLLABORATOR PROJECT_ROLE_VIEWER } enum ProjectsOrderEnum { MODIFIED_AT_ASC MODIFIED_AT_DESC CREATED_AT_ASC CREATED_AT_DESC NAME_ASC NAME_DESC } enum ProviderRole { PRODUCER LICENSOR PROCESSOR HOST } enum SavedFormat { ASCII_XYZ_GRID_ZIPPED AUTOREGISTRATION_DATASET_INDEX_MAPPING B2G BINARY_MAP BINARY_MAP_FILE COG TRUE_ORTHO_COG DSM_COG DTM_COG LAND_COVER_COG DBX E57_POINT_CLOUD E57_REFERENCE E57_REFERENCE_BOUNDS ER_MAPPER_BIN_GRID_ZIPPED ESRI_ARCGRID_ZIPPED FLOOR_PLANS FOLDER_STRUCTURE FOLDER_ZIPPED GEOJSON GEOTIFF GEOTIFF_ZIPPED GLB HSPC HSPC_PACK IMAGES IMMERSAL_COARSE_REGISTRATION @deprecated(reason: "In favour of COARSE_ALIGNMENT") JPG_ZIPPED LABEL_ANNOTATION LAS LGS LGSX LTS LUCIAD_PANORAMIC LUCIAD_PANORAMIC_NONTILED LWPO FINE_ALIGNMENT COARSE_ALIGNMENT CONTROL_POINTS METADATA METADATA_JSON MYVR_HSPC_EXPORTER_UAV_CONFIG MELOWN_VEF_CLIPPER_UAV_CONFIG OBJ OBJ_MTL_ZIPPED OGC3D_TILES OGC3D_TILES_ZIPPED PANORAMA_IMAGE_TILES PANORAMA_IMAGE_TILES_ZIPPED PANORAMIC_JXR_HDR PANORAMIC_JXR_SCANDEPTH SENSOR_INFO PNG_ZIPPED PROJECTION PTS RECTIFIED_COLORED_IMAGES_WITH_METADATA RECTIFIED_COLORED_IMAGES_WITH_METADATA_FULL DISTORTED_COLORED_IMAGES_WITH_METADATA GS_PLY SPZ RECTIFIED_GRAYSCALED_IMAGES_WITH_METADATA REFERENCE_BOUNDS SAN_RAMON_FINE_COARSE @deprecated(reason: "In favour of FINE_ALIGNMENT") SAN_RAMON_INTERMEDIATE_RESULT_ZIPPED SLPK SURFER_BINARY_GRID_ZIPPED TEXTURING_IMAGE SCENE_NODE_POSITIONING TRAJECTORY RAW_TRAJECTORY TRUE_ORTHO_INTERMEDIATE_RESULT DSM_INTERMEDIATE_RESULT DTM_INTERMEDIATE_RESULT LAND_COVER_INTERMEDIATE_RESULT UCS UNSPECIFIED USDZ WFS WMS WMTS PCC_CLASSES ZIP IFC BINZ REVIT NWD DXF GPR_SURVEY SHP GML OUTPUT_PROJECTION } enum SavedFormatEnum { HSPC HSPC_PACK IMMERSAL_COARSE_REGISTRATION @deprecated(reason: "In favour of COARSE_ALIGNMENT") AUTOREGISTRATION_DATASET_INDEX_MAPPING IMAGES PTS OBJ OBJ_MTL_ZIPPED LAS LGS LGSX LUCIAD_PANORAMIC LUCIAD_PANORAMIC_NONTILED @deprecated(reason: "In favour of TEXTURING_IMAGE") PANORAMIC_JXR_HDR PANORAMIC_JXR_SCANDEPTH SENSOR_INFO LABEL_ANNOTATION COARSE_ALIGNMENT CONTROL_POINTS FINE_ALIGNMENT PANORAMA_IMAGE_TILES PANORAMA_IMAGE_TILES_ZIPPED OGC3D_TILES OGC3D_TILES_ZIPPED SLPK E57_POINT_CLOUD E57_REFERENCE @deprecated(reason: "In favour of PROJECTION") E57_REFERENCE_BOUNDS @deprecated(reason: "In favour of REFERENCE_BOUNDS") REFERENCE_BOUNDS PROJECTION OUTPUT_PROJECTION GLB GEOTIFF COG TRUE_ORTHO_COG DSM_COG DTM_COG LAND_COVER_COG TRUE_ORTHO_INTERMEDIATE_RESULT DSM_INTERMEDIATE_RESULT DTM_INTERMEDIATE_RESULT LAND_COVER_INTERMEDIATE_RESULT FOLDER_ZIPPED FOLDER_STRUCTURE SAN_RAMON_INTERMEDIATE_RESULT_ZIPPED SAN_RAMON_FINE_COARSE @deprecated(reason: "In favour of FINE_ALIGNMENT") RECTIFIED_GRAYSCALED_IMAGES_WITH_METADATA RECTIFIED_COLORED_IMAGES_WITH_METADATA RECTIFIED_COLORED_IMAGES_WITH_METADATA_FULL DISTORTED_COLORED_IMAGES_WITH_METADATA GS_PLY SPZ B2G TRAJECTORY RAW_TRAJECTORY TEXTURING_IMAGE SCENE_NODE_POSITIONING MYVR_HSPC_EXPORTER_UAV_CONFIG MELOWN_VEF_CLIPPER_UAV_CONFIG METADATA_JSON METADATA BINARY_MAP_FILE BINARY_MAP JPG_ZIPPED GEOTIFF_ZIPPED PNG_ZIPPED ASCII_XYZ_GRID_ZIPPED ER_MAPPER_BIN_GRID_ZIPPED ESRI_ARCGRID_ZIPPED SURFER_BINARY_GRID_ZIPPED UNSPECIFIED WMS @deprecated(reason: "No longer supported, termination planned for 2028-09-30") WMTS @deprecated(reason: "No longer supported, termination planned for 2028-09-30") WFS LTS @deprecated(reason: "No longer supported, termination planned for 2028-09-30") USDZ LWPO DBX UCS PCC_CLASSES ZIP GEOJSON IFC BINZ REVIT NWD DXF GPR_SURVEY SHP GML FLOOR_PLANS } enum ScanningDeviceType { BLK2GO BLK2GO_PULSE @deprecated(reason: "deprecated in favor of BLK2GO, termination planned for 2027-03-31.") BLK2FLY BLKARC BLK360 BLK360_G1 @deprecated(reason: "deprecated in favor of BLK360, termination planned for 2027-03-31.") GENERIC MAGPIE RTC360 } """Used in Scene Lock definitions, controlling what operations the lock blocks for any user other than the lock owner.""" enum SceneLockOperationScopeEnum { """ Block any update (not block creation) with a UpdateScene[Group|Leaf]NodeInput where the transformation parameter is not null. Other updates (changing parent, visibility, etc), deleting, creating new children, and creating new versions are allowed. """ TRANSFORMATION """ Block any update, delete, creation of new children or versions. In addition, the lock should be enforced for the node’s attached external entities: annotations, custom-documents. """ ALL } """Used in Scene Lock definitions, controlling the extent the lock restrictions are applicable to the lock owner.""" enum SceneLockOwnerRestrictionEnum { """ The owner is not restricted by the lock: they are allowed to alter any node held by their lock, only other users are restricted. """ NONE """ The same restrictions apply to the owner as any other user when changing default versions of nodes held by their lock. The owner is allowed to freely change any non default versions of the nodes held by their lock. """ DEFAULT_VERSIONS """ The owner itself is subject to the same restrictions as any other user until the lock is released. This can be used to prevent the owner itself from accidentally making certain changes. """ FULL } """ Used for ordering Scenes in queries by modified at, created at, name or type. Each ordering can be ascending or descending. """ enum SceneOrderEnum { MODIFIED_AT_ASC MODIFIED_AT_DESC CREATED_AT_ASC CREATED_AT_DESC NAME_ASC NAME_DESC TYPE_ASC TYPE_DESC } enum SceneTypeEnum { """The default scene type for a regular scene.""" GENERIC """Scene used for manually aligning artifacts to be able to trigger a fine alignment / registration pipeline, e.g. if autoregistartion failed.""" ALIGNMENT """Scene type used for swarm scanning.""" SWARM_SCANNING } enum ServiceTypeEnum { OGC_3D_TILES WFS WMS @deprecated(reason: "No longer supported, termination planned for 2028-09-30") LTS @deprecated(reason: "No longer supported, termination planned for 2028-09-30") WMTS @deprecated(reason: "No longer supported, termination planned for 2028-09-30") HSPC JSON GEOJSON ZIP GENERIC_FILE LAS PTS E57 OBJ SLPK B2G LGS GEOTIFF GLB CUBEMAP_JSON PACK BINARY_MAP USD COG ZIP_ALL_FILES PANORAMIC @deprecated(reason: "To be removed - added for the moment just for backwards compatibility") DOWNLOAD @deprecated(reason: "To be removed - added for the moment just for backwards compatibility") DOWNLOAD_ASSET_FILE @deprecated(reason: "To be removed - added for the moment just for backwards compatibility") } """The direction in which a sorted field is ordered.""" enum SortOrderEnum { """Ascending order: smallest value first, e.g. the oldest date or A before Z.""" ASC """Descending order: largest value first, e.g. the newest date or Z before A.""" DESC } enum StreamableFormatEnum { HSPC HSPC_PACK WFS OGC_3D_TILES CUBEMAP_JSON COG GEOJSON } enum StripePaymentMethodLocalEnum { CARD INVOICE OTHER } enum SubscriptionAddonTypeEnum { STORAGE DOWNLOAD } enum SubscriptionLimitEnum { SEATS @deprecated(reason: "We no longer have this limit, termination planned for 2026-09-30") STORAGE STREAMING @deprecated(reason: "We no longer have this limit, termination planned for 2026-09-30") DOWNLOAD @deprecated(reason: "We no longer have this limit, termination planned for 2026-09-30") TOKENS @deprecated(reason: "We no longer have this limit, termination planned for 2026-09-30") IS_DEVICE_UPLOAD_LIMITED @deprecated(reason: "We no longer have this limit, termination planned for 2026-09-30") HAS_EXTERNAL_COLLABORATION @deprecated(reason: "We no longer have this limit, termination planned for 2026-09-30") HAS_PUBLIC_SHARING @deprecated(reason: "We no longer have this limit, termination planned for 2026-09-30") """Upload, download and processing usage are summed and counted towards this limit.""" UPLOAD_DOWNLOAD_PROCESSING } enum SubscriptionLimitsChangeTypeEnum { CURRENT_LIMITS DECREASE_LIMITS INCREASE_LIMITS MIXED_LIMITS } enum SubscriptionPaymentStatusEnum { PAID PENDING RETRYING FAILED } enum SubscriptionProviderTypeEnum { STRIPE @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") LICENSE SAP_FNO UNLIMITED NONE } enum SubscriptionTierChangeTypeEnum { UPGRADE_TIER DOWNGRADE_TIER CURRENT_TIER } enum TenantCapabilityEnum { """The user can view aggregated usage of the accounts in the tenant.""" CAN_VIEW_TENANT_USAGE """The user can generate a sales report.""" CAN_GENERATE_SALES_REPORT """The user can generate a voucher to invite new users into the tenant.""" CAN_GENERATE_VOUCHER """The user can list and filter the accounts in the tenant.""" CAN_SEARCH_ACCOUNTS """The user can set properties such as discount rate, reseller status, tax exemption status and more on any account in the same tenancy.""" CAN_SET_ACCOUNT_PROPERTIES """The user can change the owner account of any project in its tenant to another account in its tenant.""" CAN_CHANGE_PROJECT_OWNER """The user can create and manage demo projects.""" CAN_MANAGE_DEMO_PROJECT """The user can list users in their tenancy.""" CAN_LIST_USERS_IN_TENANT """The user can delete an account in their own tenancy.""" CAN_DELETE_ACCOUNT """The user can view the tenant pipeline usage.""" CAN_VIEW_TENANT_PIPELINE_USAGE """The user can modify custom data schema.""" CAN_EDIT_CUSTOM_DATA_SCHEMA } enum TenantDeletionStatus { SUCCESS ERROR } enum TenantRoleEnum { TENANT_ROLE_ADMIN TENANT_ROLE_USER } enum TokensTransactionActionTypeEnum { REFUND EXPORT MESHING AUTO_REGISTRATION EXPIRE CREDIT UNDEFINED } enum TourOrderEnum { CREATED_AT_ASC CREATED_AT_DESC MODIFIED_AT_ASC MODIFIED_AT_DESC NAME_ASC NAME_DESC } enum UploadStatusEnum { UPLOAD_NOT_STARTED UPLOAD_IN_PROGRESS UPLOAD_STALLED UPLOAD_ALL_PARTS_CONFIRMED UPLOAD_COMPLETE } enum UserDeletionStatusGQL { SUCCESS ERROR } enum UserFlagEnum { MARKETING_CONSENT LATEST_TOS_CONSENT @deprecated(reason: "Use TOS_CONSENT instead. Termination planned for 2025-09-01") TOS_CONSENT } enum UserProfileOrderEnum { LAST_NAME_ASC LAST_NAME_DESC } enum UserSettingsLanguageEnum { ENGLISH } enum UserSettingsListLayoutEnum { LIST TILE } enum UserSettingsMeasurementEnum { METRIC IMPERIAL } """ Measurement system used when presenting distance and length values to the user. Extends UserSettingsMeasurementEnum with a finer-grained set of imperial units, distinguishing between international feet (exact SI definition) and US survey feet (used in cadastral / land surveying in the US), each with an optional inch subdivision. """ enum UserSettingsMeasurementEnumV2 { """SI metric units (meters, centimeters, etc.).""" METRIC """ International feet (1 ft = 0.3048 m exactly, per NIST). Decimal subdivision. Use for general engineering and construction workflows outside the US. """ IMPERIAL_INTERNATIONAL_FEET """ International feet with feet-and-inches subdivision. Use when displaying measurements to end users accustomed to the feet-inch notation. """ IMPERIAL_INTERNATIONAL_FEET_INCH """ US Survey feet (1 ft = 1200/3937 m, ~2 ppm larger than international feet). Use for cadastral surveying and GIS workflows in the United States. """ IMPERIAL_SURVEY_FEET """ US Survey feet with feet-and-inches subdivision. Use when displaying US cadastral measurements to end users accustomed to the feet-inch notation. """ IMPERIAL_SURVEY_FEET_INCH } """ Validation error code @see https://github.com/colinhacks/zod/blob/master/ERROR_HANDLING.md """ enum ValidationErrorIssueCode { invalid_type invalid_literal unrecognized_keys invalid_union invalid_union_descriminator invalid_enum_value invalid_arguments invalid_return_type invalid_date invalid_string too_small too_big invalid_intersection_type not_multiple_of not_finite custom } enum ViewMode3DEnum { MESH PANORAMIC POINT_CLOUD GAUSSIAN_SPLATS } enum ViewPointParentTypeEnum { GROUPED_ASSET SCENE LEVEL } enum VisualizableFormatEnum { GENERIC_SINGLE_FILE } enum VoucherTypeEnum { SIGNUP LIMITS } input AccountAddressInput { street: String streetNumber: String postcode: String """This field is the state for US addresses, and the region for non-US addresses.""" state: String """The city can be short form or long form in US addresses.""" city: String """ This field contains the iso country code, use the 'allCountries' query to get the right country iso code. Not all countries are supported in the shop. Check the 'supportedCountries' query to see which one are supported. Having an unsupported country in this address only prevents the use of the shop, and the purchase of stripe subscriptions, not of the entire app. """ country: String additionalInfo: String } input AccountAddressValidationInput { accountAddressInput: AccountAddressInput tenantId: ID! } input AccountMemberInput { userToAssignUUID: ID! newUserRole: AccountRoleEnum! } input AccountMembersOfAccountInput { accountId: ID! orderBy: AccountMembersOrderEnum } """Input for the accountMembersV2 query.""" input AccountMembersV2Input { """The filter to apply to account members.""" filter: FilterAccountMembersV2Input """The sorting to apply to account members.""" sorting: AccountMembersV2SortingInput """The pagination logic of fetching account members.""" pagination: PaginationInput } """Sorting input for accountMembersV2 query.""" input AccountMembersV2SortingInput { """The field used for sorting.""" field: AccountMembersOrderEnumV2! """The sorting direction.""" order: SortOrderEnum! = ASC } input AccountProfilePageInput { pageNumber: Int! pageSize: Int! } input AccountPropertiesInput { discountRate: Float isReseller: Boolean taxExempt: Boolean paymentMethods: [PaymentMethodEnum!] accountId: ID! sapAccountNumber: String vatNumber: String referrerId: String } input AccountUpdateInput { company: String! logo: String phonenumber: String accountBillingEmail: String address: AccountAddressInput vatNumber: String referrerId: String } input AccountUsageInput { accountID: ID } input AddCartItemInput { quotationItemUUID: ID! coordinateSystem: String verticalCoordinateSystem: String imageFormat: String! } """ fileName can be either: * the name of the file, e.g. SomeFile.e57 * a relative path with file name, e.g. /folder1/folder2//SomeFile.e57 Relative paths and special characthers are not supported """ input AddFileInput { fileName: String! fileSize: BigInteger! groupedAssetId: ID! """If version is greater than 1, correct fileToken should be specified as well.""" version: Int = 1 fileToken: String } input AddLabelsInput { entityId: ID! entityType: EntityTypeEnum! labels: [LabelInput]! } """Input for the addToSceneLock mutation.""" input AddToSceneLockInput { """The scene nodes to be added to the existing lock. They must all belong to the same scene as the nodes in the existing lock.""" sceneNodeIds: [ID!]! """The ID of the lock to which the nodes will be added.""" sceneLockId: ID! } input AddressFilterInput { byAddressID: ID byServiceType: ServiceTypeEnum byConsumptionType: ConsumptionTypeEnum or: AddressOrFilterInput andNot: AddressNotFilterInput } input AddressNotFilterInput { byServiceType: ServiceTypeEnum byConsumptionType: ConsumptionTypeEnum andNot: AddressNotFilterInput } input AddressOrFilterInput { byServiceType: ServiceTypeEnum byConsumptionType: ConsumptionTypeEnum or: AddressOrFilterInput } input AddressPageInput { pageNumber: Int! pageSize: Int! } input AnnotationCategoryAssignmentInput { categoryId: ID! value: String } input AnnotationCategoryPredefinedValueInput { """optional. If populated, it refers to an update of an existing list item""" id: ID value: String """Accepts hex or rgb(a) color format""" color: String } """Type for adding/updating file attachments""" input AnnotationFileAttachmentInput { """Only specified when updating an existing attachment""" id: ID fileName: String! } """Type for adding/updating links""" input AnnotationLinkInput { """A valid URL or path to network resources""" link: String! } """ A camera position, defined by the yaw, pitch, roll, a reference point and the distance between the camera and that reference point. """ input AnnotationOrientationInput { distance: Float! pitch: Float! roll: Float! yaw: Float! ref: AnnotationPointInput! } """A point with an X, Y and Z coordinate.""" input AnnotationPointInput { x: Float! y: Float! z: Float! } """A rotation defined in degrees clockwise around the X, Y and Z axes.""" input AnnotationRotationInput { x: Float! y: Float! z: Float! } """ Provide filter conditions for the returned artifacts. When multiple conditions are given the returned results will match them all combined. """ input ArtifactFilterInput { artifactId: ID """ Returned artifacts must have a DataCategory from this list. If not provided (null or []) returned results are not filtered based on DataCategory. """ dataCategories: [DataCategoryEnum!] """ Returned artifacts must have a SavedFormat from this list. If not provided (null or []) returned results are not filtered based on SavedFormat. """ savedFormats: [SavedFormatEnum!] } input ArtifactPageInput { """Pages are 0-based so the first page is 0.""" pageNumber: Int! """Answers are limited to a fixed amount of 32 artifacts.""" pageSize: Int! } input ArtifactsFilterInput { """Only return artifacts with the given saved format. If not provided, all formats are included.""" format: [SavedFormatEnum!] """Only return artifacts with the given data category. If not provided, all data categories are included.""" dataCategory: [DataCategoryEnum!] """Only return artifacts with the given artifact status. If not provided, all statuses are included.""" status: [ArtifactStatusEnum!] """Only return artifacts with the given address type. If not provided, all types are included.""" type: [AddressTypeEnumV2!] """Only return artifacts with the given artifact id. If not provided, no filtering on artifact id is applied.""" artifactId: [ID!] } input ArtifactsOfGroupedAssetInput { groupedAssetId: ID! """If not provided, the first version will be used.""" groupedAssetVersion: Int = 1 artifactUuids: [ID!]! } input ArtifactsSortingInput { """The field by which the returned artifacts will be sorted. This field is required, if sorting is provided.""" field: ArtifactOrderEnumV2! """The order in which the returned artifacts will be sorted. Default is ascending.""" order: SortOrderEnum! = ASC } input AssetBBoxInput { longitude: Float! latitude: Float! width: Float! height: Float! } input AssetCountFilterInput { """Only count assets that have at least one of the given labels.""" byLabels: [ID!]! } input AssetPageInput { """Pages are 0-based so the first page is 0.""" pageNumber: Int! """Answers are limited to a fixed amount of 32 assets.""" pageSize: Int! """Optional offset when starting pagination, by default this is 0.""" pageOffset: Int } input AssetVersionPageInput { """Pages are 0-based so the first page is 0.""" pageNumber: Int! = 0 """Pages are limited to a fixed number of 32 versions.""" pageSize: Int! = 10 } input AssignAccountToTenantInput { accountId: ID! tenantId: ID! } input AssignTenantRoleToUserInput { userId: ID! tenantRole: TenantRoleEnum! } input AutoRegistrationContentInput { id: ID! } """ AUTO_REGISTRATION TRIGGERING * type:POINT_CLOUD * inputs: list of grouped Asset UUIDS """ input AutoRegistrationInput { type: AutoRegistrationTypeEnum! inputs: [AutoRegistrationContentInput]! } """ AUTO_REGISTRATION TRIGGERING V2 * inputs: list of grouped Asset UUIDS """ input AutoRegistrationInputV2 { inputs: [AutoRegistrationContentInput]! imageVersionOverrideMap: [DockerImageVersionOverrideInput!] } input BaselayerPageInput { pageNumber: Int! pageSize: Int! } input CartItemThumbnailInput { cartItemUUID: ID! } """Input for the changeAccountStorageRegion mutation.""" input ChangeAccountStorageRegionInput { """The account whose storage region is changed.""" accountId: ID! """ The alias of the region the account stores its data in, for example eu-1. The alias is case-insensitive and must be one of the regions configured on this platform (The valid list of storage regions can be queried with the allowedStorageRegions gql query) """ storageRegion: String! } input ChangePlatformRoleInput { """The id of the user to change the platform role for.""" userId: ID! """The role to assign to the given user.""" role: PlatformRoleEnum! """ Only applicable when setting to role LIMITED_SUPPORT. List of tenants the limited support user can perform support operations on. """ limitedToTenants: [ID!] } input ChangeProjectOwnerInput { tenantId: ID projectId: ID! newAccountId: ID! newProjectOwnerId: ID } input CompleteArtifactInput { groupedAssetId: ID! groupedAssetVersion: Int = 1 artifactId: ID! } input CompleteAssetInput { groupedAssetId: ID! version: Int = 1 } input CompleteUploadInput { groupedAssetId: ID! groupedAssetVersion: Int = 1 artifactId: ID! filename: String! parts: [CompletedUploadPartInput!]! } input CompletedUploadPartInput { filePart: Int! etag: String! """The checksum value of the part.""" checksum: String } input CopyAssetInput { groupedAssetId: ID! folderId: ID! } """The input to copy all geotags from one grouped asset to another.""" input CopyLabelAnnotationsInput { """The ID of the source grouped asset.""" sourceGroupedAssetId: ID! """The ID of the target grouped asset.""" targetGroupedAssetId: ID! } """The input to create a list-category""" input CreateAnnotationCategoryPredefinedListInput { projectId: ID! name: String! priority: Int values: [AnnotationCategoryPredefinedValueInput!]! } """The input for creating a new annotation text-category.""" input CreateAnnotationTextCategoryInput { """The project's id in which the category is defined.""" projectId: ID! name: String! """Generic priority; interpretation is up to the client. Eg it can be used as display order.""" priority: Int } input CreateArtifactInput { """The ID of the grouped asset this artifact belongs to.""" groupedAssetId: ID! """The version of the grouped asset this artifact belongs to. If not provided, the first version will be used.""" groupedAssetVersion: Int = 1 """ Token that must match the upload token of the target asset version. Required when groupedAssetVersion > 1. """ uploadToken: String """Category of the data contained in the artifact.""" dataCategory: DataCategoryEnum! """ Format in which the artifact is saved, this will be used to start a pipeline that transforms the original uploaded file to other formats. """ savedFormat: SavedFormatEnum! """ Flag indicating if the artifact is representing the original asset files, meaning it is created during the asset upload/creation phase """ originalAssetFiles: Boolean """ The name of the main file that is being uploaded. This can be the original file name when it is a single file, or the index file name when a multi files artifact. For dataCategory = GENERIC_SINGLE_FILE this property is obligatory. """ mainFileName: String """ Media type of the file represented by this artifact. Provide it when the media type is already known, or to store a custom one. The value is returned unchanged and is served as the Content-Type of the artifact download. When omitted, a media type is derived from the file. """ mediaType: String } input CreateArtifactInputV2 { """ The type of the parent entity the artifact is attached to. Supported values are ASSET, SCENE_NODE and ANALYSIS. FLOOR_PLAN is not supported. """ parentType: ArtifactParentTypeEnum! """ The id of the parent entity the artifact is attached to. When parentType is ASSET this is the id of the grouped asset, when parentType is SCENE_NODE this is the id of the scene node, and when parentType is ANALYSIS this is the id of the analysis. """ parentId: ID! """ The version of the grouped asset this artifact belongs to, when parentType is ASSET. Ignored for other parent types. If not provided, the first version will be used. """ groupedAssetVersion: Int = 1 """Token that must match the upload token of the target parent.""" uploadToken: String """Category of the data contained in the artifact.""" dataCategory: DataCategoryEnum! """ Format in which the artifact is saved, this will be used to start a pipeline that transforms the original uploaded file to other formats. """ savedFormat: SavedFormatEnum! """ Flag indicating if the artifact is representing the original asset files, meaning it is created during the asset upload/creation phase. """ originalAssetFiles: Boolean """ The name of the main file that is being uploaded. This can be the original file name when it is a single file, or the index file name when a multi files artifact. For dataCategory = GENERIC_SINGLE_FILE this property is obligatory. """ mainFileName: String """ Media type of the file represented by this artifact. Provide it when the media type is already known, or to store a custom one. The value is returned unchanged and is served as the Content-Type of the artifact download. When omitted, a media type is derived from the file. Must parse as a media type ("type/subtype", optional parameters). Any parseable value is accepted, including vendor-specific ones such as "custom/media-type". """ mediaType: String } input CreateAssetInput { folderId: ID name: String! description: String bbox: AssetBBoxInput assetType: AssetTypeEnum storageRegion: String """false if not specified""" hidden: Boolean } input CreateAssetInputV3 { folderId: ID! name: String! description: String bbox: AssetBBoxInput assetType: AssetTypeEnum storageRegion: String """false if not specified""" hidden: Boolean } """Input for the createAutomationUser mutation.""" input CreateAutomationUserInput { """Display name for the automation user.""" name: String! """ When the client credentials will expire. Must be in the future and at most one year from now. Credentials will be unusable within 24 hours of this date. """ expirationDate: DateTime! """Optional contact email for notifications. Must be a valid email format if provided.""" email: String } input CreateCartInput { userUUID: ID! } input CreateFolderInput { projectId: ID! parentFolderId: ID! name: String! description: String } input CreateGroupedAssetGeoreferenceInput { parentId: ID! name: String! flattenEnabled: Boolean! flattenScale: Float visible: [GroupedAssetGeoreferenceVisibilityInput!]! latitude: Float! longitude: Float! altitude: Float! pitch: Float! yaw: Float! roll: Float! anchorX: Float! anchorY: Float! anchorZ: Float! scaleX: Float! scaleY: Float! scaleZ: Float! } input CreateGroupedAssetTourInput { """Grouped asset ID""" groupedAssetId: ID! """Name""" name: String! """Description""" description: String """Path tension""" tension: Float! """Closed""" closed: Boolean """Keyframes""" keyframes: [GroupedAssetTourKeyframeCreateTourInput!]! } input CreateGroupedAssetTourKeyframeInput { """Tour ID""" tourId: ID! """Grouped asset ID""" groupedAssetId: ID! """Keyframe""" keyframe: GroupedAssetTourKeyframeInput! } input CreateGroupedAssetTourThumbnailInput { """Asset ID""" groupedAssetId: ID! """Tour ID""" tourId: ID! } """The input for creating a new label annotation.""" input CreateLabelAnnotationInputV2 { """The label's parent ID. For example, the ID of the GroupedAsset.""" parentId: ID! """The label's title.""" title: String! """A description of the label.""" description: String """File attachments""" files: [AnnotationFileAttachmentInput!] """Urls or paths of network resources""" links: [AnnotationLinkInput!] """Categories associated to the annotation""" categories: [AnnotationCategoryAssignmentInput!] """The label's data.""" data: LabelAnnotationDataInputV2! } """The input for creating a new level.""" input CreateLevelInput { """The level's parent ID.""" parentId: ID! """The level's title.""" title: String! """The order of the level""" order: Int """The level's data.""" data: LevelDataInput! } """The input for creating a new limiting box annotation.""" input CreateLimitingBoxAnnotationInputV2 { """The limiting box's parent ID. For example, the ID of the GroupedAsset.""" parentId: ID! """The limiting box's title.""" title: String! """A description of the limiting box.""" description: String """File attachments""" files: [AnnotationFileAttachmentInput!] """Urls or paths of network resources""" links: [AnnotationLinkInput!] """Categories associated to the annotation""" categories: [AnnotationCategoryAssignmentInput!] """The limiting box's data.""" data: LimitingBoxAnnotationDataInputV2! } """The input for creating a new measurement annotation.""" input CreateMeasurementAnnotationInputV2 { """The measurement's parent ID. For example, the ID of the GroupedAsset.""" parentId: ID! """The measurement's title.""" title: String! """A description of the measurement.""" description: String """File attachments""" files: [AnnotationFileAttachmentInput!] """Urls or paths of network resources""" links: [AnnotationLinkInput!] """Categories associated to the annotation""" categories: [AnnotationCategoryAssignmentInput!] """The measurement's data.""" data: MeasurementAnnotationDataInputV2! } input CreateProjectInput { name: String! description: String latitude: Float longitude: Float defaultStorageRegion: String } """Input for the createSceneFromFolder mutation.""" input CreateSceneFromFolderInput { """The ID of the folder that must be exported to the new scene.""" sourceFolderId: ID! """The name of the scene being created.""" name: String! } """Input for createSceneGroupNode mutation.""" input CreateSceneGroupNodeInput { """ The parent node under which the new group node will be created. This should be the root node or another group node. """ parentNodeId: ID! """The name of the new group node. This is used to find the node in the scene hierarchy.""" name: String! """Whether the node is visible in the scene (default view for all users).""" visible: Boolean """Transformation applied to the node. This should be relative to the parent node(s) transformation.""" transformation: SceneNodeTransformationInput """Effects applied to the node for viewing. This will only apply if the leaf node has no effects of its own.""" effects: SceneNodeEffectsInput """Initial child nodes of the group node. Additional child nodes can be added later with the moveSceneNode mutation.""" childNodeIds: [ID!] } """Input for the createScene mutation.""" input CreateSceneInput { """Project in which the scene will be created.""" projectId: ID! """The name of the scene being created.""" name: String! """GENERIC if not specified.""" type: SceneTypeEnum """ The geographic location of the scene. When this property is defined, the scene's coordinate system is an east-north-up (ENU) system with this point as its origin. Otherwise, the coordinate system is a right-handed, local Cartesian system with the Z axis pointing upwards. """ geolocation: SceneGeolocationInput } """Input for createSceneLeafNode mutation.""" input CreateSceneLeafNodeInput { """ The parent node under which the new leaf node will be created. This should be the root node or a group node. """ parentNodeId: ID! """Asset that the leaf node will represent.""" groupedAssetId: ID! """Artifacts of the grouped asset that will be visible in the scene node.""" visibleArtifactIds: [ID!]! """The name of the new leaf node. This is used to find the node in the scene hierarchy.""" name: String! """Whether the node is visible in the scene (default view for all users).""" visible: Boolean """Transformation applied to the node. This should be relative to the parent node(s) transformation.""" transformation: SceneNodeTransformationInput """Effects applied to the node for viewing.""" effects: SceneNodeEffectsInput } """Input for the createSceneLock mutation.""" input CreateSceneLockInput { """The scene nodes to be locked initially. They must all belong to the same scene.""" sceneNodeIds: [ID!]! """Name given by the user to identify the lock.""" name: String! """The operations to be blocked by the lock. Defaults to [ALL] if not provided.""" operationScopes: [SceneLockOperationScopeEnum!] """The extent to which lock restrictions are applied to the lock owner. Defaults to NONE if not provided.""" ownerRestriction: SceneLockOwnerRestrictionEnum } input CreateStreamingSubscriptionInput { accountUuid: ID! productCode: String! quadrants: [String!]! volumeInGB: Int! title: String! description: String } input CreateTenantInput { name: String! defaultTenant: Boolean } input CreationSubscriptionInput { tierPriceId: String! billingInterval: BillingIntervalEnum! seats: Int! addonPriceIds: [String!]! } input CreationSubscriptionInputV3 { tierPriceId: String! billingInterval: BillingIntervalEnum! seats: Int! addonPriceIds: [String!] } input DeleteArtifactInput { groupedAssetUuid: ID! artifactUuid: ID! version: Int } input DeleteAssetVersionInput { groupedAssetId: ID! version: Int! } input DeleteGroupedAssetTourInput { """Asset ID""" groupedAssetId: ID! """Tour ID""" tourId: ID! } input DeleteGroupedAssetTourKeyframeInput { """Tour ID""" groupedAssetId: ID! """Tour ID""" tourId: ID! """Keyframe ID""" keyframeId: ID! } input DeleteGroupedAssetTourThumbnailInput { """Asset ID""" groupedAssetId: ID! """Tour ID""" tourId: ID! } """Input for the deleteScene mutation.""" input DeleteSceneInput { """The ID of the scene to be deleted.""" sceneId: ID! """ When true, bypasses active transaction locks and forces deletion. Only available to administrators. """ force: Boolean } input DeleteStreamingSubscriptionInput { streamingSubscriptionUuid: ID! } input DeleteTenantInput { id: ID! migrationTenantId: ID } input DeletedPaymentCardInput { externalPaymentCardId: String! } input DockerImageVersionOverrideInput { """Name of the docker image to override""" dockerImageName: String! """Version that should be used for this image""" dockerImageVersion: String! } """Input for the endSceneTransaction mutation.""" input EndSceneTransactionInput { """The ID of the lock assigned to the transaction.""" sceneLockId: ID! """ If set to True the current state of the scene nodes in the transaction will be made default. If set to False the changes made in the transaction are aborted and the original state at the beginning of the transaction will be restored. """ commit: Boolean! } input EntityInput { entityType: EntityTypeEnum! entityIds: [ID]! } input ExternalProjectMemberInput { email: String projectUUID: ID } input FilePageInput { """Pages are 0-based so the first page is 0.""" pageNumber: Int! """Answers are limited to a fixed amount of 32 files.""" pageSize: Int! } input FilterAccountMembersInput { byNameOrEmail: String } """Filter for the accountMembersV2 query.""" input FilterAccountMembersV2Input { """If specific only account members whose first name, last name or email starts with this text will be returned (case-insensitive).""" byNameOrEmail: String } input FilterAccountProfileInput { tenantUUID: ID byCompanyName: String } input FilterArtifactFileInput { completed: Boolean } input FilterAssetInput { byAssetType: AssetTypeEnum byAssetName: String byGeoreferenceFlag: Boolean byAssetStatus: AssetStatusEnum byLabels: [ID!] or: FilterAssetOrInput not: FilterAssetNotInput """false if not specified""" includeHidden: Boolean } input FilterAssetNotInput { byAssetType: AssetTypeEnum byAssetStatus: AssetStatusEnum not: FilterAssetNotInput } input FilterAssetOrInput { byAssetType: AssetTypeEnum byAssetStatus: AssetStatusEnum or: FilterAssetOrInput } input FilterAssetVersionInput { byVersion: Int byAssetStatus: AssetStatusEnum } input FilterFileInput { byUploadStatus: [UploadStatusEnum] byFileName: String byFileId: ID } input FilterFolderInput { byFolderName: String } input FilterProjectInput { byProjectName: String byOwnedBy: ID byCreatedAt: DateTime } """Input for filtering scenes in the scenes query.""" input FilterSceneInput { """Filter scenes by name (partial matching supported)""" bySceneName: String """Filter scenes by type""" bySceneType: [SceneTypeEnum!] } """Input for filtering scene node versions.""" input FilterSceneNodeVersionInput { """If not specified, all versions are returned.""" byVersion: Int } input FilterUserProfileInput { tenantUUID: ID bySearchTerm: String byTenantRole: TenantRoleEnum } input FolderPageInput { """Pages are 0-based so the first page is 0.""" pageNumber: Int! """Answers are limited to a fixed amount of 32 folders.""" pageSize: Int! """Optional offset when starting pagination, by default this is 0.""" pageOffset: Int } input GenerateInviteInput { email: String! accountRole: AccountRoleEnum! message: String } input GenerateVoucherInput { voucherType: VoucherTypeEnum! limitsToApply: [LimitToApplyInput] expireAt: DateTime! tenantId: ID tenantRole: TenantRoleEnum reusable: Boolean } input GeoJSONShapeInput { type: GeoJSONCoordinateType! coordinates: JSON! bbox: [Float!] } input GeoreferencePaginationInput { pageNumber: Int! pageSize: Int! } input GetGroupedAssetTourInput { """Asset ID""" groupedAssetId: ID! """Tour ID""" tourId: ID! } input GetProjectsInput { paging: ProjectPageInput filter: FilterProjectInput orderBy: ProjectOrderEnum } input GroupedAssetGeoreferenceVisibilityInput { type: GeoreferencedArtifactTypeEnum! visible: Boolean! } input GroupedAssetPropertiesCreateTourInput { """Visible label annotations""" visibleLabelAnnotations: [ID] """Visible measurement annotations""" visibleMeasurementAnnotations: [ID] """Visible limiting box annotations""" selectedLimitingBoxAnnotation: ID """Visible artifacts""" visibleArtifacts: [ID!] } input GroupedAssetPropertiesInput { """Visible label annotations""" visibleLabelAnnotations: [ID] """Visible measurement annotations""" visibleMeasurementAnnotations: [ID] """Visible limiting box annotations""" selectedLimitingBoxAnnotation: ID """Visible artifacts""" visibleArtifacts: [ID!] } input GroupedAssetPropertiesUpdateInput { """Visible label annotations""" visibleLabelAnnotations: [ID] """Visible measurement annotations""" visibleMeasurementAnnotations: [ID] """Selected limiting box annotations""" selectedLimitingBoxAnnotation: ID """Visible artifacts""" visibleArtifacts: [ID!] } """Input for the groupedAssetReferences query.""" input GroupedAssetReferencesInput { """The grouped asset to retrieve the references for.""" groupedAssetId: ID! """If not specified, the first page is returned.""" pagination: PaginationInput } input GroupedAssetTourKeyframeCreateTourInput { """Camera viewpoint""" cameraViewpoint: TourCameraViewpointCreateTourInput! """Duration from tour start""" durationFromTourStart: BigInteger! """Path tension""" tension: Float! """Properties""" properties: GroupedAssetPropertiesCreateTourInput! } input GroupedAssetTourKeyframeInput { """Camera viewpoint""" cameraViewpoint: TourCameraViewpointInput! """Duration from tour start""" durationFromTourStart: BigInteger! """Path tension""" tension: Float! """Properties""" properties: GroupedAssetPropertiesInput } input GroupedAssetTourKeyframeUpdateInput { """Camera viewpoint""" cameraViewpoint: TourCameraViewpointUpdateInput! """Duration from tour start""" durationFromTourStart: BigInteger! """Path tension""" tension: Float! """Properties""" properties: GroupedAssetPropertiesUpdateInput } input HSPCInput { endpoint: String! label: String! viewingMode: AddressViewingModeEnum! baselayerOrigin: BaselayerOriginEnum! } input JobDetailPageableGQL { """Pages are 0-based so the first page is 0.""" pageNumber: Int! """Answers are limited to a fixed amount of 32 jobs.""" pageSize: Int! } input LTSInput { endpoint: String! label: String! reference: String! bounds: [Float!]! datasetId: String! levelCount: Int! level0Columns: Int! level0Rows: Int! tileWidth: Int! tileHeight: Int! viewingMode: AddressViewingModeEnum! contentType: AddressContentTypeEnum! samplingMode: AddressSamplingModeEnum! baselayerOrigin: BaselayerOriginEnum! } input LabelAnnotationDataInputV2 { """The label position. Usually this is defined in the CRS of the asset.""" position: AnnotationPointInput! """The camera point of view to look at this label.""" lookAt: AnnotationOrientationInput! } input LabelInput { name: String! } input LevelDataInput { """ The level's offset. The offset is applied after the rotation. When undefined, the offset is set to 0 on all axes. """ offset: Vector3Input """ The level's rotation, around the asset's center point. The rotation is applied before the offset. When undefined, the rotation is set to 0 on all axes. """ rotation: Vector3Input """The level's minimum coordinates""" min: Vector3Input! """The level's maximum coordinates.""" max: Vector3Input! } input LimitToApplyInput { limit: AccountLimitEnum! value: BigInteger! limitValidity: LimitValidityInput! } """ The limits in this voucher will be valid for (years, months, days) after being activated. """ input LimitValidityInput { days: Int! months: Int! years: Int! } input LimitingBoxAnnotationDataInputV2 { """ The limiting box's offset. The offset is applied after the rotation. When undefined, the offset is set to 0 on all axes. """ offset: AnnotationPointInput """ The limiting box's rotation, around the asset's center point. The rotation is applied before the offset. When undefined, the rotation is set to 0 on all axes. """ rotation: AnnotationRotationInput """The camera point of view to look at this limiting box.""" lookAt: AnnotationOrientationInput! """The limiting box's minimum X coordinate.""" minX: Float! """The limiting box's maximum X coordinate.""" maxX: Float! """The limiting box's minimum Y coordinate.""" minY: Float! """The limiting box's maximum Y coordinate.""" maxY: Float! """The limiting box's minimum Z coordinate.""" minZ: Float! """The limiting box's maximum Z coordinate.""" maxZ: Float! } input MeasurementAnnotationDataInputV2 { """The measurement points. Usually these are defined in the CRS of the asset.""" points: [AnnotationPointInput!]! """The camera point of view to look at this measurement.""" lookAt: AnnotationOrientationInput! """The measurement type.""" measurementType: MeasurementAnnotationEnum! } input MoveAssetInput { groupedAssetId: ID! folderId: ID! } """Input for moveSceneNode mutation.""" input MoveSceneNodeInput { """Id of the node to be moved.""" id: ID! """The new parent node of the scene node. This should be the root node or a group node.""" newParentNodeId: ID! } input MultiArtifactDownloadLinkInput { artifacts: [ArtifactsOfGroupedAssetInput!]! """Filename of the returned zip file without the extension.""" resultFileName: String! } input MultiAssetDownloadLinkInput { groupedAssetUUIDList: [ID!]! resultFileName: String! } input MultiFolderDownloadLinkInput { folderIdList: [ID!]! resultFileName: String! } input MultiGroupedAssetCopyInput { groupedAssetIdList: [ID!]! destinationFolderId: ID! } input MultiGroupedAssetMoveInput { groupedAssetIdList: [ID!]! destinationFolderId: ID! } input MultipartUploadCompleteInput { fileId: ID! multipartUploadsETags: [MultipartUploadETagInput!] } input MultipartUploadETagInput { part: Int! etag: String! } input MultipartUploadUrlInput { fileId: ID! partNumber: Int! md5: String } input OGC3DInput { endpoint: String! label: String! viewingMode: AddressViewingModeEnum! qualityFactor: Float! baselayerOrigin: BaselayerOriginEnum! } input OffsetPaginationInput { """ Page index, starts at 0. If an invalid page number is specified, it gets rectified and the applied page number gets returned in the return object. """ pageNumber: Int! """ Page size, max value is usually 32, but might change or differ without notice. If an invalid page size is specified, it gets rectified and the applied page size gets returned in the return object. """ pageSize: Int! """ Offsets the page by the given amount, must be positive and smaller than the max pageSize. Default is 0, and must be positive. If an invalid page offset is specified, it gets rectified and the applied page offset gets returned in the return object. """ pageOffset: Int } input OrderAddressInput { street: String! postcode: String! city: String! state: String country: String! } input PaginationInput { """ Page index, starts at 0. If an invalid page number is specified, it gets rectified and the applied page number gets returned in the return object. """ pageNumber: Int! """ Page size, max value is usually 32, but might change or differ without notice. If an invalid page size is specified, it gets rectified and the applied page size gets returned in the return object. """ pageSize: Int! } input PanoramicInput { endpoint: String! label: String! reference: String! bounds: [Float!]! datasetId: String! imageServerPrefix: String! viewingMode: AddressViewingModeEnum! baselayerOrigin: BaselayerOriginEnum! } input PatchArtifactInput { groupedAssetId: ID! groupedAssetVersion: Int = 1 artifactId: ID! filename: String! filePart: Int partSize: Int! """ The algorithm to use for calculating the checksum. Effective only when filePart is equal to 1. No checksum control if not set. """ checksumAlgorithm: ChecksumAlgorithmEnum """The checksum value of the part.""" checksum: String } input PaymentCardAddressInput { street: String state: String country: String city: String zip: String } input PaymentCardInput { externalPaymentCardId: String! expirationMonth: String expirationYear: String fullName: String address: PaymentCardAddressInput } input PersistAssetInput { folderId: ID! groupedAssetOutput: AssetTypeEnum! name: String! description: String thumbnailPath: String bbox: AssetBBoxInput """false if not specified""" hidden: Boolean } input PipelineUsageFilterInput { pipelineName: [ImplementedProcessingPipelines!] userUuid: ID accountUuid: ID processingStatus: [ProcessingStatus!] tenantUuid: ID startDate: String endDate: String processingRegion: [String!] """Filter results to runs whose data is stored in one of these regions.""" storageRegion: [String!] } input PlaceOrderInput { paymentMethod: PaymentMethodShopEnum } input Point3DInput { x: Float! y: Float! z: Float! } """ The `ProcessingPipelineTriggerInput` object required to execute the `triggerShopProcessingPipeline` mutation requires the below fields: 1) pipelineName: ImplementedPipelines! - The pipeline name to be triggered. Currently only MELOWN_VEF_TO_VEF_CLIP 2) pathToUploadedAoi: String! - The `path` returned by the `uploadPolygon` graphql mutation 3) catalogFeatureIds: [String]! - The featureIds of the catalog datasets. These are linked to the s3 buckets. 4) mailResultTo: String - The email address where to send the pipeline completion email. 5) callbackUrl: String - The API callback URL, to which to perform pipeline completion api callback. 6) coordinateSystem: String - Coordinate system (CRS) that should be used for the processing 7) verticalCoordinateSystem: String - Vertical coordinate system (CRS) that should be used for the processing Example query values: { catalogFeatureIds: ["NOB22", "NOB21", "f7a9d635-4587-4369-a731-a7af535033a4"], mailResultTo:"test.user@hexagon.com", pathToUploadedAoi: "shop/polygons/currentQuotation/14bbb1a0-29dd-3d1c-a45b-9fe8042630c5/9e18fcdb-f560-461f-b3ce-f8f5df3ec17e", pipelineName: MELOWN_VEF_TO_VEF_CLIP, callbackUrl:"https://myserver.com/signature?rfwetbdsgghgfb", coordinateSystem:"EPSG:3857" verticalCoordinateSystem:"EPSG:5703" } """ input ProcessingPipelineTriggerInput { pipelineName: ImplementedPipeline! pathToUploadedAoi: String! aoiType: PolygonType catalogFeatureIds: [String] coordinateSystem: String verticalCoordinateSystem: String mailResultTo: String callbackUrl: String } input ProcessingTokenQuotationInput { groupedAssetIds: [ID!]! processingPipelineNameForTokenQuotation: ProcessingPipelineNameForTokenQuotation! } input ProductInput { productCode: String! } input ProjectMemberInput { userToAssignUUID: ID! projectUUID: ID! newUserRole: ProjectRoleEnum! } input ProjectPageInput { """Pages are 0-based so the first page is 0.""" pageNumber: Int! """Answers are limited to a fixed amount of 32 projects.""" pageSize: Int! } input ProjectThumbnailInput { projectUUID: ID! } input ProjectsFilterInput { byProjectName: String byOwnedBy: ID byCreatedAt: DateTime } input ProjectsInput { pagination: ProjectsPaginationInput filter: ProjectsFilterInput orderBy: ProjectsOrderEnum } input ProjectsPaginationInput { pageNumber: Int! """Must be between 1 and 32 (inclusive).""" pageSize: Int! } input RecalculateGroupedAssetTourKeyframesInput { """Asset ID""" groupedAssetId: ID! """Tour ID""" tourId: ID! """New duration""" newDuration: Float """Distribute equally""" distributeEqually: Boolean } input RemoveCartItemInput { cartItemUUID: ID! } input RemoveLabelsInput { entityId: ID! entityType: EntityTypeEnum! labels: [LabelInput]! } input ReplayDlqMessagesInput { """ Must be set if messageIds is not set or empty. Only include messages received at or after this time. """ from: DateTime """ Must be set if messageIds is not set or empty Only include messages received before or at this time. """ to: DateTime """Only include messages of which the class name match this value exactly.""" messageClassFilter: String """ Override which queue(s) to send the messages to (e.g. because the original message was sent to a topic, but only one of the receivers failed) If null or an empty list, the message is sent to the recourse it was originally sent to. """ sendToQueueOverride: [String!] """If set and not empty, all other filters (including from and to) are ignored""" messageIds: [ID!] """ The amount of time between sending each message. There is no delay if not set. """ delayBetweenMessagesInMillis: Int """ Limit the maximum amount of messages sent. If not all messages matching the filters are sent, the exact same query can be called again to send the next batch, as previously sent messages are skipped. """ messagesSentLimit: Int """ Optional note to be stored with the replayed messages for tracking purposes. E.g. a ticket number or some special circumstances. """ note: String } input ReportGenerationInput { accountId: String! startTime: DateTime! endTime: DateTime! emailTo: String! emailCc: String emailBcc: String } input ReprocessAssetInput { groupedAssetId: ID! version: Int imageVersionOverrideMap: [DockerImageVersionOverrideInput!] } input ResolveDlqMessagesInput { """ Must be set if messageIds is not set or empty. Only include messages received at or after this time. """ from: DateTime """ Must be set if messageIds is not set or empty Only include messages received before or at this time. """ to: DateTime """Only include messages of which the class name match this value exactly.""" messageClassFilter: String """If set and not empty, all other filters (including from and to) are ignored""" messageIds: [ID!] """ Note to be stored with the resolved messages for tracking purposes. E.g. a ticket number or some special circumstances. """ note: String! } """ A georeferenced point, specifying the location of a scene's origin in the real world. When a scene has a geolocation, its coordinate system is an east-north-up (ENU) system with this point as its origin. This point is defined in WGS 84 (EPSG:4979). """ input SceneGeolocationInput { """Longitude of the scene origin in degrees.""" longitude: Float! """Latitude of the scene origin in degrees.""" latitude: Float! """The height of the scene origin in meters above the WGS 84 ellipsoid.""" height: Float! } """Input for the scene query.""" input SceneInput { """The ID of the scene to retrieve.""" sceneId: ID! } """Input for scene node effects values.""" input SceneNodeEffectsInput { """Contrast adjustment, range -1 to 1, where 0 is the default (no change).""" contrast: Float! """Brightness adjustment, range -1 to 1, where 0 is the default (no change).""" brightness: Float! """Saturation adjustment, range -1 to 1, where 0 is the default (no change).""" saturation: Float! """Opacity level, range 0 to 1, where 0 is fully transparent and 1 is fully opaque.""" opacity: Float! """Color tint to be applied to the node. Accepts hex or rgb(a) format.""" color: String } """Input for the sceneNode query.""" input SceneNodeInput { """The ID of the scene node to retrieve.""" nodeId: ID! } """Input for scene node transformation values.""" input SceneNodeTransformationInput { """Transformation position of the node relative to its parent node.""" position: SceneVector3Input """Transformation rotation of the node relative to its parent node.""" rotation: SceneVector3Input """Transformation scale of the node relative to its parent node.""" scale: SceneVector3Input } """Input for paginating scene node versions.""" input SceneNodeVersionPaginationInput { """ Page index, default value is 0. If an invalid page number is specified, it gets rectified and the applied page number gets returned in the return object. """ pageNumber: Int! """ Page size, default and max value is 32. If an invalid page size is specified, it gets rectified and the applied page size gets returned in the return object. """ pageSize: Int! } """Input for the sceneNodes query.""" input SceneNodesInput { """The IDs of the scene nodes to retrieve. Max number of ids is 1000.""" sceneNodeIds: [ID!]! } """Input for paginating scenes in the scenes query.""" input ScenePaginationInput { """ Page index, default value is 0. If an invalid page number is specified, it gets rectified and the applied page number gets returned in the return object. """ pageNumber: Int! """ Page size, default and max value is 32. If an invalid page size is specified, it gets rectified and the applied page size gets returned in the return object. """ pageSize: Int! """ Offsets the page by the given amount, must be positive and smaller than the max pageSize. If an invalid page offset is specified, it gets rectified and the applied page offset gets returned in the return object. """ pageOffset: Int } """3D vector input used for position, rotation, or scale in scene node transformations.""" input SceneVector3Input { """Value to be applied on the X axis.""" x: Float! """Value to be applied on the Y axis.""" y: Float! """Value to be applied on the Z axis.""" z: Float! } """Input for the scenes query.""" input ScenesInput { """The project to retrieve the scenes from.""" projectId: ID! """If not specified, the first page is returned.""" pagination: ScenePaginationInput """Order by which to sort the scenes. If not specified, scenes are returned in creation date order descending.""" orderBy: SceneOrderEnum """Filter criteria for scenes""" filter: FilterSceneInput } input SearchLabelsInput { entityId: ID entityType: EntityTypeEnum searchTerm: String pageNumber: Int! pageSize: Int! } input SearchLabelsInputV2 { """Id of the project or asset for label search""" entityId: ID! """Entity type to determine label search scope (PROJECT or ASSET)""" entityType: EntityTypeEnum! """Case-insensitive filter for label names""" searchTerm: String """Pagination parameters""" pagination: SearchLabelsPaginationInputV2! } input SearchLabelsPaginationInputV2 { """Page number starting at 0""" pageNumber: Int! """Page size (1 to 32 inclusive)""" pageSize: Int! } input SelectionInput { productIdentifier: String! dataType: DataTypeEnum! polygonDefType: PolygonType! polygonPath: String bbox: [Float!] } input SetActivePaymentCardInput { externalPaymentCardId: String! } input SetAssetVersionInput { groupedAssetId: ID! version: Int! } input SetViewpointInput { """ The ID of the entity to which the view point will be set. For instance the id of the Grouped Asset. """ entityId: ID! """The type of the entity.""" entityType: ViewPointParentTypeEnum! """The view point to be set. If absent, deletes any existing ViewPoint.""" viewpoint: ViewpointInput } input SignUpUserAccountAddressInput { street: String! postCode: String! city: String! state: String! country: String! streetNumber: String additionalInfo: String } input SignUpUserAccountProfileInput { companyName: String! accountPhone: String! accountAddress: SignUpUserAccountAddressInput! referrerId: String vatNumber: String } input SignupFromInviteInput { email: String! password: String! firstName: String! lastName: String! jobTitle: String accountUUID: ID! accountRole: AccountRoleEnum! signature: String! userFlags: [UserFlagSignupInput!] userSettings: UserSettingsSignupInput } input SignupFromInviteInputV2 { email: String! password: String! firstName: String! lastName: String! jobTitle: String accountUUID: ID! accountRole: AccountRoleEnum! signature: String! userFlags: [UserFlagSignupInput!] userSettings: UserSettingsSignupInputV2 } """ Input for signing up a user based on an account invitation. Supports extended measurement units via UserSettingsMeasurementEnumV2. The user is created within the account specified by accountUUID. """ input SignupFromInviteInputV3 { """Email address of the invited user. Must match the email the invitation was sent to.""" email: String! """Password for the new user account.""" password: String! """First name of the new user.""" firstName: String! """Last name of the new user.""" lastName: String! """Optional job title of the new user.""" jobTitle: String """UUID of the account the user is being invited to join.""" accountUUID: ID! """Account role to assign to the new user.""" accountRole: AccountRoleEnum! """Signed invitation signature authorizing the signup.""" signature: String! """Optional user flags to set at signup time (e.g. TOS consent).""" userFlags: [UserFlagSignupInput!] """Optional initial user settings. Defaults are applied for any omitted fields.""" userSettings: UserSettingsSignupInputV3 } input SignupInput { email: String! password: String! firstName: String! lastName: String! jobTitle: String accountInfo: SignUpUserAccountProfileInput! signature: String! userFlags: [UserFlagSignupInput!] userSettings: UserSettingsSignupInput } input SignupInputV2 { email: String! password: String! firstName: String! lastName: String! jobTitle: String accountInfo: SignUpUserAccountProfileInput! signature: String! userFlags: [UserFlagSignupInput!] userSettings: UserSettingsSignupInputV2 } """ Input for creating a new account with an account admin via a signed voucher. Supports extended measurement units via UserSettingsMeasurementEnumV2. """ input SignupInputV3 { """Email address of the new user. Must be unique within the system.""" email: String! """Password for the new user account.""" password: String! """First name of the new user.""" firstName: String! """Last name of the new user.""" lastName: String! """Optional job title of the new user.""" jobTitle: String """Account details for the newly created account.""" accountInfo: SignUpUserAccountProfileInput! """Signed voucher signature authorizing the signup.""" signature: String! """Optional user flags to set at signup time (e.g. TOS consent).""" userFlags: [UserFlagSignupInput!] """Optional initial user settings. Defaults are applied for any omitted fields.""" userSettings: UserSettingsSignupInputV3 } """Input for the startSceneTransaction mutation.""" input StartSceneTransactionInput { """The scene nodes to be added to the transaction. They must all belong to the same scene.""" sceneNodeIds: [ID!]! """Name given by the user to identify the different locks.""" name: String! } input SubscriptionQuotationAddonInput { id: String! selectedOptionId: String! } input SubscriptionQuotationInput { tierPriceId: String! billingInterval: BillingIntervalEnum! seats: Int! addonPriceIds: [String!]! } input TokensRefundInput { accountID: ID! numberOfTokens: Int! description: String! } input TokensTransactionsPageInput { pageNumber: Int! pageSize: Int! includingUndefined: Boolean } input TourCameraViewpointCreateTourInput { """Eye position""" eyePosition: Vector3Input! """Forward""" forward: Vector3Input! """Up""" up: Vector3Input! } input TourCameraViewpointInput { """Eye position""" eyePosition: Vector3Input! """Forward""" forward: Vector3Input! """Up""" up: Vector3Input! } input TourCameraViewpointUpdateInput { """Eye position""" eyePosition: Vector3Input! """Forward""" forward: Vector3Input! """Up""" up: Vector3Input! } input TourFilterInput { """By name""" byName: String } input TourInput { filter: TourFilterInput orderBy: TourOrderEnum paging: TourPageInput } input TourPageInput { """Page number""" pageNumber: Int! """Page size""" pageSize: Int! } input TriggerInput { groupedAssetId: ID! outputFormat: OutputFormat processingPipelineName: ProcessingPipelineName options: TriggerOptionsInput } input TriggerMeshingInput { groupedAssetId: ID! scanningDeviceType: ScanningDeviceType autoCleaning: Boolean vegetation: Boolean """Allows overriding a specific docker image version, mostly used for testing purposes""" imageVersionOverrides: [DockerImageVersionOverrideInput!] } """ Input containing optional options used for triggering pipelines, which includes the ability for defining the docker image versions used in the pipeline. To understand what docker images and their current versions are being used in a pipeline, use the "getPipelineDockerImageDefinitions" endpoint """ input TriggerOptionsInput { limitBoxId: ID """Allows overriding a specific docker image version, mostly used for testing purposes""" artifactSelectionForZippingPipeline: [SavedFormat!] imageVersionOverrides: [DockerImageVersionOverrideInput!] } input TriggerPointCloudClassificationInput { """Id of the grouped asset, for which the assigned hspc artifact should be classified""" groupedAssetId: ID! """Model used for the classification""" model: PointCloudClassificationModelEnum! """Allows overriding a specific docker image version, mostly used for testing purposes""" imageVersionOverrides: [DockerImageVersionOverrideInput!] } """Input for triggering the UAV pipeline""" input TriggerUavProcessingInput { """GroupedAssetId of the input to process, this should refer to a set of images with exif data.""" groupedAssetId: ID! """ Desired coordinate reference system of the output. Example input: "EPSG:4978". When not specified will use the default provided by the integrator. """ outputProjection: String } """The input for updating an existing annotation list-category.""" input UpdateAnnotationCategoryPredefinedListInput { id: ID! name: String! priority: Int values: [AnnotationCategoryPredefinedValueInput!]! } """The input for updating an existing annotation text-category.""" input UpdateAnnotationTextCategoryInput { id: ID! name: String! priority: Int } """ The assetType field is kept for backward-compatibility but intentionally ignored because changing the asset type after creation can have serious consequences for the processing pipelines. """ input UpdateAssetInput { groupedAssetId: ID! assetType: AssetTypeEnum name: String description: String bbox: AssetBBoxInput hidden: Boolean } input UpdateDemoProjectInput { projectUuid: ID! isDemoProject: Boolean } input UpdateFolderInput { projectId: ID! folderId: ID name: String! description: String } input UpdateGroupedAssetGeoreferenceInput { georeferenceId: ID! parentId: ID name: String! visible: [GroupedAssetGeoreferenceVisibilityInput!]! flattenEnabled: Boolean! flattenScale: Float latitude: Float! longitude: Float! altitude: Float! pitch: Float! yaw: Float! roll: Float! anchorX: Float! anchorY: Float! anchorZ: Float! scaleX: Float! scaleY: Float! scaleZ: Float! } input UpdateGroupedAssetTourInput { """Asset ID""" groupedAssetId: ID! """Tour ID""" tourId: ID! """Name""" name: String """Duration""" duration: Float """Description""" description: String """Path tension""" tension: Float! """Closed""" closed: Boolean } input UpdateGroupedAssetTourKeyframeInput { """Asset ID""" groupedAssetId: ID! """Tour ID""" tourId: ID! """Keyframe ID""" keyframeId: ID! """Keyframe""" keyframe: GroupedAssetTourKeyframeUpdateInput! } """The input for updating an existing label annotation.""" input UpdateLabelAnnotationInputV2 { """The ID of the label to update.""" annotationId: ID! """The new title of the label. When undefined, the title will remain unchanged.""" title: String """The new description of the label. When undefined, the description will remain unchanged.""" description: String """ File attachments. When undefined, the files will remain unchanged. When defined: - Attachments without an id are created - Existing attachments not in the list are deleted - Existing attachments in the list have their fileName updated """ files: [AnnotationFileAttachmentInput!] """Urls or paths of network resources. When undefined, the uris will remain unchanged""" links: [AnnotationLinkInput!] """Categories associated to the annotation. When undefined, the categories will remain unchanged""" categories: [AnnotationCategoryAssignmentInput!] """The new data of the label. When undefined, the data will remain unchanged.""" data: LabelAnnotationDataInputV2 } """The input for updating an existing level.""" input UpdateLevelInput { """The ID of the level to update.""" levelId: ID! """The new title of the level. When undefined, the title will remain unchanged.""" title: String """The order of the level""" order: Int """The new data of the level. When undefined, the data will remain unchanged.""" data: LevelDataInput } """The input for updating an existing limiting box annotation.""" input UpdateLimitingBoxAnnotationInputV2 { """The ID of the limiting box to update.""" annotationId: ID! """The new title of the limiting box. When undefined, the title will remain unchanged.""" title: String """The new description of the limiting box. When undefined, the description will remain unchanged.""" description: String """ File attachments. When undefined, the files will remain unchanged. When defined: - Attachments without an id are created - Existing attachments not in the list are deleted - Existing attachments in the list have their fileName updated """ files: [AnnotationFileAttachmentInput!] """Urls or paths of network resources. When undefined, the uris will remain unchanged""" links: [AnnotationLinkInput!] """Categories associated to the annotation. When undefined, the categories will remain unchanged""" categories: [AnnotationCategoryAssignmentInput!] """The new data of the limiting box. When undefined, the data will remain unchanged.""" data: LimitingBoxAnnotationDataInputV2 } """The input for updating an existing measurement annotation.""" input UpdateMeasurementAnnotationInputV2 { """The ID of the measurement to update.""" annotationId: ID! """The new title of the measurement. When undefined, the title will remain unchanged.""" title: String """The new description of the measurement. When undefined, the description will remain unchanged.""" description: String """ File attachments. When undefined, the files will remain unchanged. When defined: - Attachments without an id are created - Existing attachments not in the list are deleted - Existing attachments in the list have their fileName updated """ files: [AnnotationFileAttachmentInput!] """Urls or paths of network resources. When undefined, the uris will remain unchanged""" links: [AnnotationLinkInput!] """Categories associated to the annotation. When undefined, the categories will remain unchanged""" categories: [AnnotationCategoryAssignmentInput!] """The new data of the measurement. When undefined, the data will remain unchanged.""" data: MeasurementAnnotationDataInputV2 } input UpdateMediaTypeInput { """ The grouped asset the artifact belongs to. Used to authorize the change and to verify that the artifact really is part of it. """ groupedAssetId: ID! """The artifact to re-type. It must be complete and must belong to the current asset of the specified grouped asset.""" artifactId: ID! """ The new media type. Must parse as a media type ("type/subtype", optional parameters). It is not checked against a list of known media types, so custom values such as "custom/media-type" are accepted. It is served as the Content-Type of the download. """ mediaType: String! } input UpdateProjectInput { id: ID! name: String description: String latitude: Float longitude: Float } """ Input for updateSceneGroupNode mutation. If the field is not specified, the existing value will be kept. Note: child nodes can not be updated with this mutation, use moveSceneNode mutation to change parent of the child nodes. """ input UpdateSceneGroupNodeInput { """Id of the node to be updated.""" id: ID! """New name of the node.""" name: String """Whether the node is visible in the scene (default view for all users).""" visible: Boolean """New transformation applied to the node. This should be relative to the parent node(s) transformation.""" transformation: SceneNodeTransformationInput """New effects applied to the node for viewing. This will only apply if the leaf node has no effects of its own.""" effects: SceneNodeEffectsInput } """Input for the updateScene mutation.""" input UpdateSceneInput { """The ID of the scene to be updated.""" sceneId: ID! """New name of the scene.""" name: String! """ The geographic location of the scene. When this property is defined, the scene's coordinate system is an east-north-up (ENU) system with this point as its origin.. Otherwise, the coordinate system is a right-handed, local Cartesian system with the Z axis pointing upwards. """ geolocation: SceneGeolocationInput } """ Input for updateSceneLeafNode mutation. If the field is not specified, the existing value will be kept. Note: both groupedAssetId and visibleArtifactIds need to be specified to update the visible artifacts. """ input UpdateSceneLeafNodeInput { """Id of the node to be updated.""" id: ID! """Grouped asset the leaf node represents. If specified, then also the visibleArtifactIds must be specified.""" groupedAssetId: ID """Artifacts of the grouped asset that will be visible in the scene node.""" visibleArtifactIds: [ID!] """New name of the node.""" name: String """Whether the node is visible in the scene (default view for all users).""" visible: Boolean """New transformation applied to the node. This should be relative to the parent node(s) transformation.""" transformation: SceneNodeTransformationInput """New effects applied to the node for viewing.""" effects: SceneNodeEffectsInput } input UpdateStreamingSubscriptionInput { streamingSubscriptionUuid: ID! quadrants: [String!] enabled: Boolean volumeInGB: Int title: String description: String } input UpdateTenantInput { id: ID! name: String defaultSubscriptionProviderType: SubscriptionProviderTypeEnum isDemoProjectReady: Boolean isAddressValidationRequired: Boolean } """ Upgrade the specified grouped asset. If an expected current version is specified, the operation will be aborted in case the current version does not match, preventing concurrent modifications. """ input UpgradeAssetInput { groupedAssetId: ID! """ Optional: the version number the client expects to be the current latest. If the actual current version differs, the operation will be aborted. This implements optimistic concurrency control — the client declares "I last saw version N, only upgrade if that is still the latest." """ expectedCurrentVersion: Int } input UploadedPartsInput { fileId: ID! } input UrlInput { endpoint: String! boundsEndpoint: String! label: String! viewingMode: AddressViewingModeEnum! baselayerOrigin: BaselayerOriginEnum! } input UsageInput { accountID: ID } input UsageTenantInput { tenantID: ID } input UserFlagInput { flag: UserFlagEnum valid: Boolean } input UserFlagSignupInput { userFlag: UserFlagEnum! valid: Boolean! } input UserInput { userId: ID! } input UserProfilePageInput { pageNumber: Int! pageSize: Int! pageOffset: Int } input UserSettingsInput { measurementUnit: UserSettingsMeasurementEnum language: UserSettingsLanguageEnum listLayout: UserSettingsListLayoutEnum } input UserSettingsInputV2 { measurementUnit: UserSettingsMeasurementEnum """Language according to ISO-639-1 format, e.g. nl, en, fr""" isoLanguage: String listLayout: UserSettingsListLayoutEnum """Preferred view mode (mesh/point-cloud/panoramic) when opening 3D objects (assets or scenes)""" preferredViewMode3D: ViewMode3DEnum } """ User settings input for updateUserSettingsV3. Identical to UserSettingsInputV2 except measurementUnit accepts the granular UserSettingsMeasurementEnumV2 instead of the coarse two-value UserSettingsMeasurementEnum. All fields are optional; omitting a field leaves the current stored value unchanged. """ input UserSettingsInputV3 { """Granular measurement unit including international and US survey foot variants.""" measurementUnit: UserSettingsMeasurementEnumV2 """Language according to ISO-639-1 format, e.g. nl, en, fr""" isoLanguage: String listLayout: UserSettingsListLayoutEnum """Preferred view mode (mesh/point-cloud/panoramic) when opening 3D objects (assets or scenes)""" preferredViewMode3D: ViewMode3DEnum } input UserSettingsSignupInput { measurementUnit: UserSettingsMeasurementEnum language: UserSettingsLanguageEnum listLayout: UserSettingsListLayoutEnum } input UserSettingsSignupInputV2 { measurementUnit: UserSettingsMeasurementEnum """Language according to ISO-639-1 format, e.g. nl, en, fr""" isoLanguage: String listLayout: UserSettingsListLayoutEnum } """ User settings provided at signup. Uses UserSettingsMeasurementEnumV2 for finer-grained imperial unit selection compared to UserSettingsSignupInputV2. """ input UserSettingsSignupInputV3 { """Preferred measurement unit. Defaults to METRIC when omitted.""" measurementUnit: UserSettingsMeasurementEnumV2 """Language according to ISO-639-1 format, e.g. nl, en, fr""" isoLanguage: String """Preferred list layout for asset listings.""" listLayout: UserSettingsListLayoutEnum } input UserUpdateInput { firstName: String lastName: String jobTitle: String } """Request input to be used for any vector3 input.""" input Vector3Input { """x-component""" x: Float! """y-component""" y: Float! """z-component""" z: Float! } input ViewpointInput { """Eye position""" eyePosition: Vector3Input! """Forward vector""" forward: Vector3Input! """Up vector""" up: Vector3Input! } input WFSInput { endpoint: String! label: String! reference: String! bounds: [Float!]! datasetId: String! versions: [String!]! styleString: String! viewingMode: AddressViewingModeEnum! baselayerOrigin: BaselayerOriginEnum! } input WMSInput { endpoint: String! label: String! reference: String! bounds: [Float!]! datasetId: String! versions: [String!]! imageFormat: String! viewingMode: AddressViewingModeEnum! baselayerOrigin: BaselayerOriginEnum! } input WMTSInput { endpoint: String! label: String! reference: String! bounds: [Float!]! datasetId: String! imageFormat: String! levelCount: Int! level0Columns: Int! level0Rows: Int! tileWidth: Int! tileHeight: Int! contentType: AddressContentTypeEnum! samplingMode: AddressSamplingModeEnum! tileMatrixSet: String! tileMatrices: [Int!]! viewingMode: AddressViewingModeEnum! baselayerOrigin: BaselayerOriginEnum! } interface AddressInterface { """The path of the object. Needs to be appended to the domain of the backend to form a complete URL.""" endpoint: String! """ The region where the object is stored. See query allowedStorageRegions for possible values. The possible values may change without notice. """ storageRegion: String! } interface AnnotationCategoryInterface { id: ID! name: String! priority: Int } """Base interface for all annotation types""" interface AnnotationInterface { """The annotation's ID.""" id: ID! """ External identifier for lineage tracking. For copied annotations, this references the original annotation. For non-copied annotations or imports, this may be the annotation's UUID or an external system uuid. """ originalId: ID! """The annotation's title.""" title: String! """The annotation's description.""" description: String """The annotation's thumbnail path.""" thumbnailPath: String """The user who created this annotation.""" createdBy: SimpleUserProfileOutput! """The annotation's creation time.""" createdAt: DateTime! """The latest user to modify this annotation.""" modifiedBy: SimpleUserProfileOutput! """The annotation's latest modification time.""" modifiedAt: DateTime! """File attachments""" files: [AnnotationFileAttachmentOutput!]! """Urls or paths of network resources""" links: [AnnotationLinkOutput!]! """Categories associated to the annotation""" categories: [AnnotationCategoryAssignmentOutput!]! } interface ArtifactKindInterface { """The uuid of the artifact this kind belongs to.""" id: ID! """The format of the stored artifact.""" format: SavedFormatEnum! } """Basic error interface all soft errors are implementing""" interface BaseAccountInfoErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseAcsErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseAnnotationErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseArtifactErrorInterface implements BaseErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseAssetErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseCatalogErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseFolderErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseLabelErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseProcessingErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } interface BaseProcessingTokenQuotationErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseProjectErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseProjectsErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseQuotationErrorInterface implements BaseErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseShopErrorInterface implements BaseErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseSubscriptionErrorInterface implements BaseErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseSystemMonitorErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """Basic error interface all soft errors are implementing""" interface BaseUserErrorInterface { """ A pseudo-user friendly explanation on what happened and how to fix the issue. This will usually not be presented to the end user, but could be used as a fallback for backwards compatibility in case the error __typename is not implemented yet on consumers. """ message: String! } """ Cursor based pagination connection @see https://dev.to/mandiwise/graphql-pagination-primer-offset-vs-cursor-vs-relay-style-pagination-1a60 """ interface Connection { pageInfo: PageInfo! totalCount: Int! nodes: [Node!] edges: [Edge!] } interface CoreBaselayer { id: ID! endpoint: String! type: AddressTypeEnum! label: String! viewingMode: AddressViewingModeEnum! } interface CoreLayer { id: String! endpoint: String! signatureExpiration: DateTime sourceEndpoint: String! type: String! label: String viewingMode: String! } interface Edge { cursor: String! node: Node! } interface Error { """A developer friendly error message on what happened and how to rectify it.""" message: String! } interface Node { id: ID! } interface ProjectChangeCopyOperation implements Node { """ID of the node""" id: ID! sourceFolderId: ID! targetFolderId: ID! } interface ProjectChangeCreateOperation implements Node { """ID of the node""" id: ID! } interface ProjectChangeDeleteOperation implements Node { """ID of the node""" id: ID! } interface ProjectChangeFolderOperation { folderId: ID! } interface ProjectChangeGroupedAssetOperation { groupedAssetId: ID! } interface ProjectChangeMoveOperation implements Node { """ID of the node""" id: ID! sourceFolderId: ID! targetFolderId: ID! } interface ProjectChangeProjectOperation { projectId: ID! } interface ProjectChangeUpdateOperation implements Node { """ID of the node""" id: ID! """ JSON Paths to the updated fields relative to the grouped asset Example: '/name' """ paths: [String!]! } interface ProjectChangeUserAccessOperation implements Node { """ID of the node""" id: ID! userId: ID! } interface ProjectChangeVersioningOperation implements Node { """ID of the node""" id: ID! } interface Renderable { id: ID! endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! } """ Common properties for the Root/Group/Leaf SceneNodeOutputs. If you do not need the specifics of the concrete types you can define a fragment on this interface to access their common properties. """ interface SceneNodeInterface { """The unique identifier of the scene node.""" id: ID! """Unique identifier of the first version of this node.""" originalId: ID! """Version number of the scene node.""" version: Int! """Different versions of this scene node.""" versions(paging: PaginationInput, filter: FilterSceneNodeVersionInput): SceneNodeVersionsOutput! """Indicates whether this version is the default version for this scene node.""" defaultVersion: Boolean! """Scene to which this node belongs.""" scene: SceneOutput! """Lock information if the node is locked.""" lock: SceneLockOutput """User who created this scene node.""" createdBy: SimpleUserProfileOutput! """Time when this scene node was created.""" createdAt: DateTime! """User who last modified this scene node.""" modifiedBy: SimpleUserProfileOutput! """Time when this scene node was last modified.""" modifiedAt: DateTime! """ Time when this scene node or any related information was last modified. E.g. annotation, custom data, etc was modified. """ cascadeModifiedAt: DateTime! } interface Tour { """Can edit""" canEdit: Boolean! """Created at""" createdAt: DateTime! """Created by""" createdBy: SimpleUserProfileOutput! """ID""" id: ID! """Modified at""" modifiedAt: DateTime! """Name""" name: String! """Description""" description: String """Thumbnail path""" thumbnailPath: String """ Duration (in ms) Retrieved from the keyframe with the highest `durationFromTourStart` """ duration: Float! """Path tension""" tension: Float! } interface TourKeyframe { """ID""" id: ID! """Camera viewpoint""" cameraViewpoint: TourCameraViewpointOutput! """Duration from tour start""" durationFromTourStart: BigInteger! """Path tension""" tension: Float! } """User has insufficient rights to access the requested resource.""" type AccessDeniedError implements Error { message: String! } type AccountAddressOutput { street: String streetNumber: String postcode: String """The city can be short form or long form in US addresses.""" city: String """This field is the state for US addresses, and the region for non-US addresses.""" state: String """This field contains the iso country code.""" country: String additionalInfo: String } type AccountCapabilitiesOutput { """New enum members may be added without notice. Please implement the client in a way that can deal with this.""" accountCapabilities: [AccountCapabilityEnum!]! } type AccountDeletionOutput { account: AccountInfoOutput! status: AccountDeletionStatusEnum! message: String! } type AccountDetailOutput { accountInfo: AccountInfoOutput users: [UserProfileOutput]! } """The account address is not valid.""" type AccountInfoAccountAddressIsNotValidOutput implements BaseAccountInfoErrorInterface & BaseErrorInterface { message: String! } """The account company name is not valid.""" type AccountInfoAccountCompanyNameIsNotValidOutput implements BaseAccountInfoErrorInterface & BaseErrorInterface { message: String! } """The account email is not valid.""" type AccountInfoAccountEmailIsNotValidOutput implements BaseAccountInfoErrorInterface & BaseErrorInterface { message: String! } """The account legal entity could not be changed.""" type AccountInfoAccountLegalEntityCouldNotBeChangedOutput implements BaseAccountInfoErrorInterface & BaseErrorInterface { message: String! } """The action can not be performed.""" type AccountInfoErrorOperationNotAllowedOutput implements BaseAccountInfoErrorInterface & BaseErrorInterface { message: String! } type AccountInfoOutput { id: ID! company: String referrer: String logo: String phonenumber: String accountBillingEmail: String sapAccountNumber: String address: AccountAddressOutput addressValid: AddressValidOutput discountRate: Float isReseller: Boolean! taxExempt: Boolean! vatNumber: String paymentMethods: [PaymentMethodEnum!]! originalExternalAccount: String financialDetailsSynced: Boolean! paymentSystemIds: [PaymentSystemOutput!]! defaultStorageRegion: String! deleted: Boolean! tenantId: ID createdAt: DateTime accountUsageOutput: AccountUsageOutput } type AccountMembersPageOutput { pageNumber: Int! pageSize: Int! } type AccountMembersResultOutput { appliedFilters: FilterAccountMembersOutput orderBy: AccountMembersOrderEnum appliedPagination: AccountMembersPageOutput pageNumber: Int! pageSize: Int! total: Int! members: [UserProfileOutput]! } """Filters applied to the account members in the result of the accountMembersV2 query.""" type AccountMembersV2AppliedFilterOutput { byNameOrEmail: String } """Sorting applied to the account members in the result of the accountMembersV2 query.""" type AccountMembersV2AppliedSortingOutput { field: AccountMembersOrderEnumV2! order: SortOrderEnum! } """A page of account members matching the applied filter, sorting, and pagination.""" type AccountMembersV2Output { contents: [UserProfileOutput!]! totalCount: Int! appliedPagination: AppliedPaginationOutput! appliedFilter: AccountMembersV2AppliedFilterOutput appliedSorting: AccountMembersV2AppliedSortingOutput! } type AccountProfileAppliedPageOutput { pageNumber: Int! pageSize: Int! } type AccountProfileResultOutput { appliedFilters: FilterAccountProfileAppliedOutput! orderBy: AccountProfileOrderEnum! appliedPagination: AccountProfileAppliedPageOutput! pageNumber: Int! pageSize: Int! total: Int! contents: [AccountInfoOutput]! } """The Account Usage Output federated""" type AccountUsageOutput { """Account UUID""" accountID: ID! """Storage Artifacts""" storageArtifacts: BigInteger! streaming(startDate: DateTime, endDate: DateTime): StreamingUsageOutput! processing(startDate: DateTime, endDate: DateTime): [ProcessingUsageOutput!]! upload(startDate: DateTime, endDate: DateTime): UploadUsageOutput! totalProcessingInBytes(startDate: DateTime, endDate: DateTime): ProcessingInBytesUsageOutput! """Seats""" seats: Int! """Number of internal users.""" internalUsers: Int! """Number of external users.""" externalUsers: Int! """Storage Asset""" storageAssets: BigInteger! """Number of Projects""" projects: Int! } """One of the entities identified with a UUID could not be found.""" type AcsErrorEntityNotFoundOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """The provided address is invalid.""" type AcsErrorInvalidAddressOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """The provided invitation signature is not valid.""" type AcsErrorInvalidInvitationSignatureOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """The provided voucher is not valid.""" type AcsErrorInvalidVoucherOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """The user is not allowed to perform this operation.""" type AcsErrorOperationNotAllowedOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """The action can not be performed.""" type AcsErrorOperationNotPossibleOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """The project with given UUID could not be found.""" type AcsErrorProjectNotFoundOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """The user does not have access to the requested resource.""" type AcsErrorResourceAccessDeniedOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """The action is not possible because it would result in the seats limit being exceeded for the account.""" type AcsErrorSeatLimitReachedOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """The action is not possible because the storage limit is exceeded.""" type AcsErrorStorageLimitReachedOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """The tenant with given UUID could not be found.""" type AcsErrorTenantNotFoundOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """The system is receiving too many requests. Try again later.""" type AcsErrorTooManyRequestsOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """A user with the given email already exists in this account.""" type AcsErrorUserAlreadyExistsInAccountOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """A user with the given email already exists in another account.""" type AcsErrorUserAlreadyExistsInOtherAccountOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """A user with the given email already exists.""" type AcsErrorUserAlreadyExistsOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """The user with given UUID could not be found.""" type AcsErrorUserNotFoundOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } """The provided voucher is already used.""" type AcsErrorVoucherAlreadyUsedOutput implements BaseAcsErrorInterface & BaseErrorInterface { message: String! } type AddressAppliedFilterByConsumptionTypeOutput { or: [ConsumptionTypeEnum!]! not: [ConsumptionTypeEnum!]! } type AddressAppliedFilterByServiceTypeOutput { or: [ServiceTypeEnum!]! not: [ServiceTypeEnum!]! } type AddressAppliedFilterOutput { byAddressID: ID byServiceType: AddressAppliedFilterByServiceTypeOutput! byConsumptionType: AddressAppliedFilterByConsumptionTypeOutput! } type AddressAppliedPaginationOutput { pageNumber: Int! pageSize: Int! } """Deprecated - to be removed in https://hexagon.atlassian.net/browse/HXDR-5940 after 01.07.2025""" type AddressAssetFileDownloadOutput implements Renderable { id: ID! endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! expirationDate: String @deprecated(reason: "No longer filled") label: String! } type AddressCogOutput implements Renderable { id: ID! processingPipelineInfoV2: ProcessingPipelineInfoOutputV2 generatedPipelineArtifactInfo: GeneratedPipelineArtifactInfoOutput endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! } type AddressCubemapJsonOutput implements Renderable { id: ID! processingPipelineInfo: ProcessingPipelineInfoOutput @deprecated(reason: "Use processingPipelineInfoV2 and generatedPipelineArtifactInfo instead. Termination planned for 2026-12-01.") processingPipelineInfoV2: ProcessingPipelineInfoOutputV2 generatedPipelineArtifactInfo: GeneratedPipelineArtifactInfoOutput endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! } """Deprecated - to be removed in https://hexagon.atlassian.net/browse/HXDR-5940 after 01.07.2025""" type AddressDownloadOutput implements Renderable { id: ID! processingPipelineInfo: ProcessingPipelineInfoOutput endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! expirationDate: String @deprecated(reason: "No longer filled") } type AddressDownloadableOutput implements Renderable { id: ID! processingPipelineInfo: ProcessingPipelineInfoOutput @deprecated(reason: "Use processingPipelineInfoV2 and generatedPipelineArtifactInfo instead. Termination planned for 2026-12-01.") processingPipelineInfoV2: ProcessingPipelineInfoOutputV2 generatedPipelineArtifactInfo: GeneratedPipelineArtifactInfoOutput endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! expirationDate: String @deprecated(reason: "No longer filled") mediaType: String } type AddressGeoJsonOutput implements Renderable { id: ID! endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! } type AddressHspcOutput implements Renderable { id: ID! processingPipelineInfo: ProcessingPipelineInfoOutput @deprecated(reason: "Use processingPipelineInfoV2 and generatedPipelineArtifactInfo instead. Termination planned for 2026-12-01.") processingPipelineInfoV2: ProcessingPipelineInfoOutputV2 generatedPipelineArtifactInfo: GeneratedPipelineArtifactInfoOutput endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! } """Deprecated - to be removed after 01.03.2027""" type AddressJsonOutput implements Renderable { id: ID! parentUUID: ID! endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! s3Location: String! expirationDate: String @deprecated(reason: "No longer filled") downloadType: DownloadTypeEnum! } type AddressLtsOutput implements Renderable { id: ID! processingPipelineInfo: ProcessingPipelineInfoOutput @deprecated(reason: "Use processingPipelineInfoV2 and generatedPipelineArtifactInfo instead. Termination planned for 2026-12-01.") processingPipelineInfoV2: ProcessingPipelineInfoOutputV2 generatedPipelineArtifactInfo: GeneratedPipelineArtifactInfoOutput endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! datasetId: String! } type AddressOgc3DOutput implements Renderable { id: ID! processingPipelineInfo: ProcessingPipelineInfoOutput @deprecated(reason: "Use processingPipelineInfoV2 and generatedPipelineArtifactInfo instead. Termination planned for 2026-12-01.") processingPipelineInfoV2: ProcessingPipelineInfoOutputV2 generatedPipelineArtifactInfo: GeneratedPipelineArtifactInfoOutput endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! qualityFactor: Float! } type AddressPackOutput implements Renderable { id: ID! endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! expirationDate: String @deprecated(reason: "No longer filled") } type AddressPageOutput { parentId: ID! addressId: ID groupedAssetId: ID pageNumber: Int! pageSize: Int! filterType: AddressTypeEnum @deprecated(reason: "In favor of filterByServiceType") filterByServiceType: ServiceTypeEnum total: Int! contents: [AddressOutput!]! } type AddressPageOutputV2 { parentId: ID! groupedAssetId: ID appliedPagination: AddressAppliedPaginationOutput! appliedFilters: AddressAppliedFilterOutput! orderBy: AddressOrderEnum! total: Int! contents: [AddressOutput!]! } """Deprecated - to be removed in https://hexagon.atlassian.net/browse/HXDR-5940 after 01.07.2025""" type AddressPanoramicOutput implements Renderable { id: ID! processingPipelineInfo: ProcessingPipelineInfoOutput endpoint: String! endpointStorageRegion: String! type: AddressTypeEnum! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! } type AddressValidOutput { """True if the address is valid for making purchases.""" valid: Boolean! taxable: Boolean! """Describe the reason why the address is not valid, if it is valid the string is empty""" reason: String! } type AddressVisualizableOutput implements Renderable { id: ID! endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! mediaType: String } type AddressWfsOutput implements Renderable { id: ID! processingPipelineInfo: ProcessingPipelineInfoOutput @deprecated(reason: "Use processingPipelineInfoV2 and generatedPipelineArtifactInfo instead. Termination planned for 2026-12-01.") processingPipelineInfoV2: ProcessingPipelineInfoOutputV2 generatedPipelineArtifactInfo: GeneratedPipelineArtifactInfoOutput endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! datasetId: String! styleUrl: String } type AddressWmsOutput implements Renderable { id: ID! processingPipelineInfo: ProcessingPipelineInfoOutput @deprecated(reason: "Use processingPipelineInfoV2 and generatedPipelineArtifactInfo instead. Termination planned for 2026-12-01.") processingPipelineInfoV2: ProcessingPipelineInfoOutputV2 generatedPipelineArtifactInfo: GeneratedPipelineArtifactInfoOutput endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! datasetId: String! } type AddressWmtsOutput implements Renderable { id: ID! processingPipelineInfo: ProcessingPipelineInfoOutput @deprecated(reason: "Use processingPipelineInfoV2 and generatedPipelineArtifactInfo instead. Termination planned for 2026-12-01.") processingPipelineInfoV2: ProcessingPipelineInfoOutputV2 generatedPipelineArtifactInfo: GeneratedPipelineArtifactInfoOutput endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! datasetId: String! } type AddressZipAllFilesOutput implements Renderable { id: ID! endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! mediaType: String } """Deprecated - to be removed after 01.03.2027""" type AddressZipOutput implements Renderable { id: ID! parentUUID: ID! endpoint: String! endpointStorageRegion: String! serviceType: ServiceTypeEnum! consumptionType: ConsumptionTypeEnum! label: String! s3Location: String! expirationDate: String @deprecated(reason: "No longer filled") downloadType: DownloadTypeEnum! } type AnnotationCategoriesOutput { categories: [AnnotationCategoryInterface!]! } type AnnotationCategoryAssignmentOutput { categoryId: ID! categoryName: String! value: String color: String priority: Int } """a category with a list of predefined values""" type AnnotationCategoryPredefinedListOutput implements AnnotationCategoryInterface { id: ID! name: String! priority: Int values: [AnnotationCategoryPredefinedValueOutput!]! } """values, as they appear in a permitted list of values""" type AnnotationCategoryPredefinedValueOutput { id: ID! value: String """hex or rgb(a) color format""" color: String } """ Access to the requested action or resource denied. You do not have the required rights or your authentication token is incorrect. """ type AnnotationErrorAccessDeniedOutput implements BaseAnnotationErrorInterface & BaseErrorInterface { message: String! } """The given annotation (related entity) could not be found.""" type AnnotationErrorEntityNotFoundOutput implements BaseAnnotationErrorInterface & BaseErrorInterface { message: String! } """ Note: for many mutations, this error is incorrectly returned instead of a AnnotationErrorAccessDeniedOutput. Where both this error and AnnotationErrorAccessDeniedOutput are returned, this error means that the user is not allowed to perform the operation. For example because the user does not have the right project capability. """ type AnnotationErrorOperationNotAllowedOutput implements BaseAnnotationErrorInterface & BaseErrorInterface { message: String! } type AnnotationFileAttachmentOutput { id: ID! """ External identifier for lineage tracking. For copied attachments, this references the original attachment. For non-copied attachments, this is the attachment's UUID. """ originalId: ID! fileName: String! """populated only on the first time, when the file attachment is created (so when the input file has an empty `id`)""" uploadUrl: String """where to download the file from""" path: String! """ Optional - null until the asynchronous media type detection has completed. Always null for now, we'll revisit this soon. """ visualizablePath: String """ The media type of the attachment (e.g., "image/jpeg", "application/pdf"). Always null for now, we'll revisit this soon. """ mediaType: String } type AnnotationLinkOutput { link: String! } """ A camera position, defined by the yaw, pitch, roll, a reference point and the distance between the camera and that reference point. """ type AnnotationOrientationOutput { distance: Float! pitch: Float! roll: Float! yaw: Float! ref: AnnotationPointOutput! } """A point with an X, Y and Z coordinate.""" type AnnotationPointOutput { x: Float! y: Float! z: Float! } """A rotation defined in degrees clockwise around the X, Y and Z axes.""" type AnnotationRotationOutput { x: Float! y: Float! z: Float! } type AnnotationTextCategoryOutput implements AnnotationCategoryInterface { id: ID! name: String! priority: Int } type AnnotationThumbnailOutput { path: String! uploadUrl: String! } """Information of the applied filters for a scene query.""" type AppliedFilterSceneOutput { """The applied scene name filter. Null if no name filter was applied.""" bySceneName: String """The applied scene type filter. Null if no scene type filter was applied.""" bySceneType: [SceneTypeEnum!] } """The applied pagination with offset. This may be different from the requested pagination if the requested pagination is out of bounds.""" type AppliedOffsetPaginationOutput { """The number of the page that is returned. Starts at 0.""" pageNumber: Int! """ The maximum amount of items that are returned per page. If there are not enough items to fill the (last) page, less items may be contained in the result. """ pageSize: Int! """ The applied pageOffset, i.e. the number of items that are skipped. Typically used if not all items of the previous page were displayed or if the page size differs compared to the previous page. """ pageOffset: Int! } """The applied pagination. This may be different from the requested pagination if the requested pagination is out of bounds.""" type AppliedPaginationOutput { """The number of the page that is returned. Starts at 0.""" pageNumber: Int! """ The maximum amount of items that are returned per page. If there are not enough items to fill the (last) page, less items may be contained in the result. """ pageSize: Int! } """Pagination information applied to a scenes query result.""" type AppliedScenePaginationOutput { pageNumber: Int! pageSize: Int! pageOffset: Int! } type ArtifactAppliedFilterOutput { artifactId: ID """ Returned artifacts' DataCategory belongs to this list. If not provided (null or []) returned results are not filtered based on DataCategory. """ dataCategories: [DataCategoryEnum!] """ Returned artifacts' SavedFormat belongs to this list. If not provided (null or []) returned results are not filtered based on SavedFormat. """ savedFormats: [SavedFormatEnum!] } type ArtifactAppliedPageOutput { pageNumber: Int! pageSize: Int! } """The combination of the groupedAssetId and the optionally specified version does not point to any existing asset.""" type ArtifactErrorAssetVersionNotFoundOutput implements BaseArtifactErrorInterface & BaseErrorInterface { message: String! } """ The provided upload token does not match the token of the target asset version, or the token is missing for an asset version > 1. """ type ArtifactErrorInvalidUploadTokenOutput implements BaseArtifactErrorInterface & BaseErrorInterface { message: String! } """There is not enough storage left for uploading.""" type ArtifactErrorNotEnoughStorageOutput implements BaseArtifactErrorInterface & BaseErrorInterface { message: String! } """An external service, e.g. a cloud storage service, does not allow the operation.""" type ArtifactErrorOperationNotAllowedOutput implements BaseArtifactErrorInterface & BaseErrorInterface { message: String! } """Access to the requested action denied. You do not have the required rights or your authentication token is incorrect.""" type ArtifactErrorResourceAccessDeniedOutput implements BaseArtifactErrorInterface & BaseErrorInterface { message: String! } """An artifact with the given uuid cannot be found in the DB.""" type ArtifactErrorResourceNotFoundOutput implements BaseArtifactErrorInterface & BaseErrorInterface { message: String! } type ArtifactFileOutput { id: ID! filename: String! size: BigInteger! complete: Boolean! checksumAlgorithm: ChecksumAlgorithmEnum } type ArtifactFilesOutput { contents: [ArtifactFileOutput!]! appliedPagination: AppliedPaginationOutput! appliedOrdering: ArtifactFileOrderEnum! total: BigInteger! } type ArtifactItemOutput { id: ID! groupedAssetId: ID """The type of the parent entity this artifact is attached to.""" parentType: ArtifactParentTypeEnum! """ The id of the parent entity this artifact is attached to. When parentType is ASSET this is the id of the asset itself (not the grouped asset). """ parentId: ID! dataCategory: DataCategoryEnum! savedFormat: SavedFormatEnum! contentPath: String """Capped to MaxInt""" size: Int! @deprecated(reason: "Use sizeV2 instead. Termination planned for 2026-12-31") """Size of the artifact in bytes""" sizeV2: BigInteger! countsForStorage: Boolean! createdAt: DateTime! modifiedAt: DateTime! status: ArtifactStatusEnum! """The list of files if the artifact is in UPLOADING state. Error otherwise.""" files(paging: PaginationInput, filter: FilterArtifactFileInput, orderBy: ArtifactFileOrderEnum = NAME_ASC): ArtifactFilesUnion! addressesV2(paging: AddressPageInput, filter: AddressFilterInput, orderBy: AddressOrderEnum): AddressPageOutputV2! } type ArtifactKindFolderZippedOutput implements ArtifactKindInterface { id: ID! format: SavedFormatEnum! } type ArtifactKindGaussianSplatsOutput implements ArtifactKindInterface { id: ID! format: SavedFormatEnum! } type ArtifactKindGenericOutput implements ArtifactKindInterface { id: ID! format: SavedFormatEnum! } type ArtifactKindMeshOutput implements ArtifactKindInterface { id: ID! """True if the mesh has been simplified.""" simplified: Boolean! """True if the mesh has been beautified.""" beautified: Boolean! format: SavedFormatEnum! } type ArtifactKindPanoramicOutput implements ArtifactKindInterface { id: ID! """True if the panoramic image has been beautified.""" beautified: Boolean! format: SavedFormatEnum! } type ArtifactKindPointCloudOutput implements ArtifactKindInterface { id: ID! """ If the point cloud is classified, this contains info about the classification. If the point cloud is not classified, this is null. """ classificationInfo: ClassificationInfoOutput """ The limiting box information associated with this point cloud. Resolves to the limiting box annotation if the point cloud was generated from a limit box that still exists, to ErrorLimitBoxDeletedOutput if the source limit box has since been deleted, or to ErrorNoRelatedLimitBoxOutput if the point cloud was not generated from a limit box. """ limitBox: LimitBoxUnion! format: SavedFormatEnum! """True if the point cloud has been subsampled.""" subsampled: Boolean! """True if the point cloud is directional.""" directional: Boolean! } type ArtifactKindRasterOutput implements ArtifactKindInterface { id: ID! format: SavedFormatEnum! } type ArtifactKindVectorAndRasterOutput implements ArtifactKindInterface { id: ID! format: SavedFormatEnum! } type ArtifactKindVectorOutput implements ArtifactKindInterface { id: ID! format: SavedFormatEnum! } type ArtifactOutputV2 { id: ID! dataCategory: DataCategoryEnum! savedFormat: SavedFormatEnum! originalAssetFiles: Boolean! status: ArtifactStatusEnum! } type ArtifactPayloadOutput { id: ID! """Information specific to the status of the artifact.""" status: ArtifactStatusUnion! """Information specific to the type of the address of the artifact.""" type: AddressTypeUnion! """Information specific to the artifact kind.""" kind: ArtifactKindUnion! """The total size of all files in the artifact in bytes.""" size: BigInteger! """Whether the artifact is counted for storage.""" countsForStorage: Boolean! """The creation date of the artifact.""" createdAt: DateTime! """The user who created the artifact. This includes direct creation and creation via triggering of a pipeline.""" createdBy: SimpleUserProfileOutput! """The last modification date of the artifact.""" modifiedAt: DateTime """The user who last modified the artifact.""" modifiedBy: SimpleUserProfileOutput } type ArtifactResultOutput { parentId: ID! pageNumber: Int! pageSize: Int! filterType: ArtifactTypeEnum appliedPagination: ArtifactAppliedPageOutput total: Int! contents: [ArtifactItemOutput!]! } """DEPRECATED in favor of type `ArtifactResultOutputV3`""" type ArtifactResultOutputV2 { parentId: ID! pageNumber: Int! pageSize: Int! filterType: DataCategoryEnum orderBy: ArtifactOrderEnum appliedPagination: ArtifactAppliedPageOutput total: Int! contents: [ArtifactItemOutput!]! } type ArtifactResultOutputV3 { parentId: ID! appliedPagination: AppliedPaginationOutput appliedFilter: ArtifactAppliedFilterOutput total: Int! contents: [ArtifactItemOutput!]! } type ArtifactStatusCompletedOutput { """The ID of the address this status belongs to, identical to the ID of the enclosing payload.""" id: ID! """Information for downloading, streaming, or visualizing the artifact files.""" address: AddressUnion! } type ArtifactStatusFailedOutput { """The ID of the address this status belongs to, identical to the ID of the enclosing payload.""" id: ID! """Information about the failure""" reason: ArtifactFailedReasonUnion! } type ArtifactStatusProcessingOutput { """The ID of the address this status belongs to, identical to the ID of the enclosing payload.""" id: ID! """Information about the currently running pipeline for this artifact.""" processingPipelineInfo: ProcessingPipelineInfoUnion! } type ArtifactStatusUploadingOutput { """The ID of the address this status belongs to, identical to the ID of the enclosing payload.""" id: ID! """The list of files that have been created on the artifact so far.""" files(paging: PaginationInput, filter: FilterArtifactFileInput, orderBy: ArtifactFileOrderEnum = NAME_ASC): ArtifactFilesUnion! } type ArtifactsOutput { """The total number of artifacts that match the filter criteria, regardless of pagination.""" total: Int! """ The pagination details that were applied to the query, these may be different from the requested pagination, e.g. if no pagination was requested, or if the requested pagination was invalid. """ appliedPagination: AppliedPaginationOutput! """The list of artifacts that match the filter criteria and pagination.""" contents: [ArtifactPayloadOutput!]! } type AssetAppliedPageOutput { pageNumber: Int! pageSize: Int! pageOffset: Int } type AssetBBoxOutput { latitude: Float! longitude: Float! width: Float! height: Float! } type AssetCountOutput { all: Int! unassigned: Int! } """The action is not possible because there is no coarse registration json present.""" type AssetErrorCoarseRegistrationInputNotFound implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The action is not possible because there are too many coarse registration jsons.""" type AssetErrorCoarseRegistrationLimitOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The action is not possible because the download limit has been reached.""" type AssetErrorDownloadLimitReachedOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """An asset with the given name already exists at the same level.""" type AssetErrorDuplicateNameOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The requested feature is not available.""" type AssetErrorFeatureNotAvailableOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The action is not possible because the asset number for autoregistration exceeds limit.""" type AssetErrorGroupedAssetRegistrationLimitOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The action is not possible because grouped assets are not under the same folder.""" type AssetErrorGroupedAssetsNotUnderSameFolderOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The version is not allowed to be deleted (default or only version of the grouped asset).""" type AssetErrorIllegalVersionDeleteOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """ The given name contains one or more blacklisted characters. Blacklisted characters are: <,>,:,|,?,*,",\ """ type AssetErrorNameBlacklistedCharactersOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The given name is blank (empty, only spaces or null).""" type AssetErrorNameBlankOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """ The given name is a forbidden name with any capitalisation and any extension. Forbidden names are: "CON", "PRN", "AUX", "NUL", "COM1", "COM2", "COM3", "COM4", "COM5", "COM6", "COM7", "COM8", "COM9", "LPT1", "LPT2", "LPT3", "LPT4", "LPT5", "LPT6", "LPT7", "LPT8", "LPT9" """ type AssetErrorNameForbiddenOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The given name contains a forward slash.""" type AssetErrorNameForwardSlashOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The given name contains a leading or trailing space.""" type AssetErrorNameLeadingOrTrailingSpaceOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The given name contains a trailing dot.""" type AssetErrorNameTrailingDotOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The given name contains two dots in a row.""" type AssetErrorNameTwoDotsInRowOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """Access to the requested action denied. You do not have the required rights or your authentication token is incorrect.""" type AssetErrorOperationNotAllowedOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """ Operation cannot be performed due to a generic issue (e.g. a field being null in the DB or something being wrong with the input) """ type AssetErrorOperationNotPossibleOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The action is not possible because the processing limit has been reached.""" type AssetErrorProcessingLimitReachedOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """Access to a requested resource denied.""" type AssetErrorResourceAccessDeniedOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """Operation cannot be performed because a resource was not found in DB or cache""" type AssetErrorResourceNotFoundOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The action is not possible because the storage limit has been reached.""" type AssetErrorStorageLimitReachedOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """ The system is receiving too many requests. Try again later. This error will no longer occur but preserved for backward-compatibility. """ type AssetErrorTooManyRequestsOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } """The combination of groupedAssetId and version number is wrong.""" type AssetErrorVersionNotFoundOutput implements BaseAssetErrorInterface & BaseErrorInterface { message: String! } type AssetOutput { id: ID! groupedAssetId: ID! availableProcessingPipelines: AvailableProcessingPipelinesUnion! anchorPoint: Point3DOutput artifacts(paging: ArtifactPageInput, filter: ArtifactTypeEnum): ArtifactResultOutput @deprecated(reason: "Use artifactsV2 instead") artifactsV2(paging: ArtifactPageInput, filter: DataCategoryEnum, artifactId: ID, artifactOrderEnum: ArtifactOrderEnum): ArtifactResultOutputV2 @deprecated(reason: "No longer supported, in favour of query `artifactsV3`, termination planned for 2027-09-30") artifactsV3(paging: PaginationInput, filter: ArtifactFilterInput, orderBy: ArtifactOrderEnum): ArtifactResultOutputV3! withEmbeddedGeoreference: Boolean referencedBounds: ReferencedBoundsOutput storageRegion: String! files(paging: FilePageInput, filter: FilterFileInput, orderBy: FileOrderEnum): FileResultOutput! jobSummary: JobSummaryGQL @deprecated(reason: "No longer supported, see https://docs.hxdr.app/featuredoc/_quickstart/pipelines/status/status-retrieval, termination planned for 2025-06-31") jobDetail(paging: JobDetailPageableGQL): JobPage """ The primary artifact of the asset. Set to the first artifact uploaded for an asset that has no files. Null when no primary artifact has been set yet. """ primaryArtifact: ArtifactPayloadOutput ucs: [UcsOutput!]! } type AssetThumbnailOutput { uploadUrl: String! path: String! } type AssetVersionOutput { version: Int! assetId: ID! assetStatus: AssetStatusEnum! assetSize: BigInteger! createdBy: SimpleUserProfileOutput! modifiedBy: SimpleUserProfileOutput createdAt: DateTime! modifiedAt: DateTime fileToken: String } type AssetVersionResultOutput { groupedAssetId: ID! total: Int! pageNumber: Int! pageSize: Int! contents: [AssetVersionOutput!]! } """ Output type for available processing pipelines. A pipeline drops out of both lists as soon as it has been triggered on the asset once. A pipeline that succeeded, failed, was canceled or was deleted is not reported again. """ type AvailableProcessingPipelinesOutput { """List of pipelines that have not been triggered on the asset yet and can be triggered with the given input data.""" triggerable: [TriggerablePipelineOutput!]! """List of pipelines that have not been triggered on the asset yet but can't be triggered with the given input data.""" untriggerable: [UntriggerablePipelineOutput!]! } type BaselayerAppliedPageOutput { pageNumber: Int! pageSize: Int! } type BaselayerHspcOutput implements CoreBaselayer { id: ID! endpoint: String! type: AddressTypeEnum! label: String! viewingMode: AddressViewingModeEnum! } type BaselayerLtsOutput implements CoreBaselayer { id: ID! endpoint: String! type: AddressTypeEnum! label: String! viewingMode: AddressViewingModeEnum! reference: String! bounds: [Float!]! datasetId: String! levelCount: Int! level0Columns: Int! level0Rows: Int! contentType: AddressContentTypeEnum! tileWidth: Int! tileHeight: Int! samplingMode: AddressSamplingModeEnum! } type BaselayerOgc3DOutput implements CoreBaselayer { id: ID! endpoint: String! type: AddressTypeEnum! label: String! viewingMode: AddressViewingModeEnum! qualityFactor: Float! } type BaselayerPanoramicOutput implements CoreBaselayer { id: ID! endpoint: String! type: AddressTypeEnum! label: String! viewingMode: AddressViewingModeEnum! reference: String! bounds: [Float!]! datasetId: String! imageServerPrefix: String! } type BaselayerResultOutput { pageNumber: Int! pageSize: Int! filterType: AddressViewingModeEnum filterOrigin: BaselayerOriginEnum total: Int! appliedPagination: BaselayerAppliedPageOutput contents: [BaselayerOutput!]! } type BaselayerUrlOutput implements CoreBaselayer { id: ID! endpoint: String! boundsEndpoint: String! type: AddressTypeEnum! label: String! viewingMode: AddressViewingModeEnum! } type BaselayerWfsOutput implements CoreBaselayer { id: ID! endpoint: String! type: AddressTypeEnum! label: String! viewingMode: AddressViewingModeEnum! reference: String! bounds: [Float!]! datasetId: String! versions: [String!]! styleUrl: String } type BaselayerWmsOutput implements CoreBaselayer { id: ID! endpoint: String! type: AddressTypeEnum! label: String! viewingMode: AddressViewingModeEnum! reference: String! bounds: [Float!]! datasetId: String! versions: [String!]! imageFormat: String! } type BaselayerWmtsOutput implements CoreBaselayer { id: ID! endpoint: String! type: AddressTypeEnum! label: String! viewingMode: AddressViewingModeEnum! reference: String! bounds: [Float!]! datasetId: String! imageFormat: String! levelCount: Int! level0Columns: Int! level0Rows: Int! tileWidth: Int! tileHeight: Int! contentType: AddressContentTypeEnum! samplingMode: AddressSamplingModeEnum! tileMatrixSet: String! tileMatrices: [Int!]! } type CancelCurrentSubscriptionOutput { success: Boolean } type CartItemOutput { cartId: ID! cartItemId: ID! amount: BigDecimal! discountedAmount: BigDecimal! currency: String! resolutionUnit: String! resolutionValue: String! imageFormat: String! coordinateSystem: String! verticalCoordinateSystem: String polygonDefType: PolygonType! bbox: [Float!] productIdentifier: String! dataType: DataTypeEnum! polygonPath: String thumbnailPath: String createdAt: DateTime! modifiedAt: DateTime! } type CartItemThumbnailOutput { uploadUrl: String! path: String! } type CartOutput { cartId: ID! userId: ID! orderId: String! cartItems: [CartItemOutput!]! amount: BigDecimal! discountedAmount: BigDecimal! tax: BigDecimal! total: BigDecimal! currency: String! state: String! paymentPublicKey: String! createdAt: DateTime! modifiedAt: DateTime! } type CartesianBoundsOutput { origin: Point3DOutput! dimensions: ReferencedBoundsDimensionsOutput! } """Error when the input to create a new catalog item is not accepted.""" type CatalogErrorInvalidItemInputOutput implements BaseCatalogErrorInterface & BaseErrorInterface { message: String! } """Error when the layer input is not valid.""" type CatalogErrorInvalidLayerInputOutput implements BaseCatalogErrorInterface & BaseErrorInterface { message: String! } """Error when the layer or collection to be deleted still has items linked to it.""" type CatalogErrorNotEmptyOutput implements BaseCatalogErrorInterface & BaseErrorInterface { message: String! } """Error when an entity could not be found in the database""" type CatalogErrorNotFoundOutput implements BaseCatalogErrorInterface & BaseErrorInterface { message: String! } """Error when operation is not allowed for given user.""" type CatalogErrorOperationNotAllowedOutput implements BaseCatalogErrorInterface & BaseErrorInterface { message: String! } type ChangeProjectRoleOutput { result: Boolean! } type CheckoutOutput { cartId: ID! tax: BigDecimal! amount: BigDecimal! discountedAmount: BigDecimal! total: BigDecimal! currency: String! paymentSessionId: String! paymentId: String! paymentPublicKey: String! } """Information about a classified artifact.""" type ClassificationInfoOutput { """The identifier of the classifier model used.""" classifierModel: String! } """OAuth client credentials associated with a user.""" type ClientInfoOutput { id: ID! """The OAuth client_id used for authentication.""" clientId: String! """When the client credentials expire. Credentials will be unusable within 24 hours of this date.""" expiresAt: DateTime! } """ Information about the feature collection with id 'collectionId'. The response contains a link to the items in the collection (path '/collections/{collectionId}/items', link relation 'items') as well as key information about the collection. This information includes: * A local identifier for the collection that is unique for the dataset; * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); * An optional title and description for the collection; * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). * """ type Collection { """identifier of the collection used, for example, in URIs""" id: String! """human readable title of the collection""" title: String """ Detailed multi-line description to fully explain the catalog or collection. [CommonMark 0.29](http://commonmark.org/) syntax MAY be used for rich text representation. """ description: String! """the list of coordinate reference systems supported by the service""" crs: [String!] """ The extent of the features in the collection. In the Core only spatial and temporal extents are specified. Extensions may add additional members to represent other extents, for example, thermal or pressure ranges. """ extent: Extent! """indicator about the type of the items in the collection (the default value is "feature").""" itemType: String! features(dateTime: String, bbox: [Float!], offset: Int, limit: Int): Feature! """STAC version""" stacVersion: String! """List of keywords describing the collection.""" keywords: [String!]! """ License(s) of the data as a SPDX [License identifier](https://spdx.org/licenses/). Alternatively, use 'proprietary' if the license is not on the SPDX license list or 'various' if multiple licenses apply. In these two cases links to the license texts SHOULD be added, see the 'license' link relation type. Non-SPDX licenses SHOULD add a link to the license text with the 'license' relation in the links section. The license text MUST NOT be provided as a value of this field. If there is no public license URL available, it is RECOMMENDED to host the license text and link to it. """ license: String! """A list of providers, which may include all organizations capturing or processing the data or the hosting provider. Providers should be listed in chronological order with the most recent provider being the last element of the list.""" providers: [Provider!] """ Summaries are either a unique set of all available values *or* statistics. Statistics by default only specify the range (minimum and maximum values), but can optionally be accompanied by additional statistical values. The range can specify the potential range of values, but it is recommended to be as precise as possible. The set of values must contain at least one element and it is strongly recommended to list all values. It is recommended to list as many properties as reasonable so that consumers get a full overview of the Collection. Properties that are covered by the Collection specification (e.g. 'providers' and 'license') may not be repeated in the summaries. """ summaries: [Summary!] } """ STAC Collections Container - The feature collections shared by this API. The dataset is organized as one or more feature collections. """ type Collections { """List of all collections available in this catalog""" collections: [Collection!]! """Links to related resources including self, root, and other navigation links""" links: [Link!]! } type CompleteAssetOutput { success: Boolean! message: String! } type CompleteUploadOutput { success: Boolean! """The composite checksum of all parts.""" checksum: String } type ConfirmSubscriptionOutput { success: Boolean } type CoordinateSystemOutput { epsg: String! datum: String! projection: String } type CountryOutput { """Country iso code""" countryIsoCode: String! """country iso code 3 letters""" alpha3Code: String! countryName: String! isEuropeanUnion: Boolean! localizedNames: [LocalizedNameOutput!]! """True when an address is set with a country that requires specifying a state or region.""" addressesRequireRegion: Boolean! } """Successful result of the createAutomationUser mutation.""" type CreateAutomationUserOutput { """The newly created automation user.""" user: UserProfileOutput! """The OAuth client credentials issued for the automation user.""" clientInfo: ClientInfoOutput! """The client secret, returned only once at creation time. Store it securely.""" clientSecret: String! } type CreateStreamingSubscriptionOutput { streamingSubscriptionUuid: ID! userUuid: ID! productCode: String! quadrants: [String!]! enabled: Boolean! signature: String endpoints: [EndpointOutput!]! title: String! description: String volumeInGB: Int! } type DeleteAnnotationOutput { success: Boolean! } type DeleteArtifactOutput { success: Boolean! } type DeleteAssetOutput { success: Boolean! } type DeleteAssetThumbnailOutput { success: Boolean! } type DeleteAssetVersionOutput { success: Boolean! } type DeleteFolderOutput { success: Boolean! } """Response output to be used for any single delete mutation.""" type DeleteOperationOutput { """The ID of the object that was successfully deleted.""" id: ID! } type DeleteProjectOutput { success: Boolean! } type DeleteProjectThumbnailOutput { success: Boolean! } """Result of a successful scene node deletion.""" type DeleteSceneNodeOutput { success: Boolean! } """Result of a successful scene deletion.""" type DeleteSceneOutput { success: Boolean! } type DeleteStreamingSubscriptionOutput { success: Boolean! } type DeletedPaymentCardOutput { externalPaymentCardId: String! deleted: Boolean! } type DemoProjectOutput { id: ID! name: String! ownedBy: SimpleUserProfileOutput! } type DemoProjectResultOutput { total: Int! contents: [DemoProjectOutput!]! } type DockerDefinitionOutput { imageName: String! imageVersion: String! } type DownloadableAddressOutput implements AddressInterface { """The path of the object. Needs to be appended to the domain of the backend to form a complete URL.""" endpoint: String! """ The region where the object is stored. See query allowedStorageRegions for possible values. The possible values may change without notice. """ storageRegion: String! """The media type of the downloadable file, e.g. "application/pdf" or "image/png".""" mediaType: String """Multi file formats (e.g. HSPC) are zipped when downloaded. This field indicates whether the file is zipped or not.""" zipped: Boolean! } type DownloadableAddressTypeOutput { id: ID! """The format of the downloaded file.""" format: DownloadableFormatEnum! } type EndpointOutput { endpointType: EndpointTypeEnum! quadrantName: String! endpoint: String! } type EntityAccessOutput { success: Boolean! message: String } """The version number is not equal to the current version""" type ErrorConcurrentModificationOutput implements BaseErrorInterface { message: String! } """ The user is not allowed to perform the requested operation from or to a different account. """ type ErrorCrossAccountOperationNotAllowedOutput implements BaseErrorInterface { message: String! } """The requested name is already in use, it cannot be duplicated.""" type ErrorDuplicateNameOutput implements BaseErrorInterface { message: String! } """The input is invalid.""" type ErrorInputValidationFailedOutput implements BaseErrorInterface { message: String! } """The provided value is outside the allowed range or set of permitted values.""" type ErrorInvalidDateOutput implements BaseErrorInterface { message: String! } """The point cloud was generated from a limit box, but that limit box has since been deleted.""" type ErrorLimitBoxDeletedOutput implements BaseErrorInterface { message: String! } """The operation is not possible because the upload/download/processing limit has been reached.""" type ErrorLimitReachedOutput implements BaseErrorInterface { message: String! } """The action is forbidden by a Lock.""" type ErrorLockViolationOutput implements BaseErrorInterface { message: String! } type ErrorMaxStepsExceededOutput implements BaseErrorInterface { message: String! } """Negative order numbers are not allowed to be assigned to levels.""" type ErrorNegativeOrderOutput implements BaseErrorInterface { message: String! } """The point cloud was not generated from a limit box, so no limiting box annotation is associated with it.""" type ErrorNoRelatedLimitBoxOutput implements BaseErrorInterface { message: String! } """The user is not allowed to perform the query or mutation.""" type ErrorOperationNotAllowedOutput implements BaseErrorInterface { message: String! } """The operation cannot be performed due to a generic issue (e.g. a field being null in the DB)""" type ErrorOperationNotPossibleOutput implements BaseErrorInterface { message: String! } """The processing can not be started because there is already a pipeline running for that input""" type ErrorPipelineAlreadyTriggeredOutput implements BaseErrorInterface { message: String! } """ Returned when pipeline information for a processing artifact is temporarily unavailable, typically due to a short propagation delay after pipeline creation. """ type ErrorPipelineInformationNotYetAvailableOutput implements BaseErrorInterface { """A message explaining why the pipeline information is not available.""" message: String! } """The user does not have access to the requested resource.""" type ErrorResourceAccessDeniedOutput implements BaseErrorInterface { message: String! } """The requested resource could not be found.""" type ErrorResourceNotFoundOutput implements BaseErrorInterface { message: String! } """The uploaded schema is not a valid JSON schema""" type ErrorSchemaInvalidOutput implements BaseErrorInterface { message: String! } """The specified storage region is not one of the regions configured on this platform.""" type ErrorStorageRegionIsNotValidOutput implements BaseAccountInfoErrorInterface & BaseErrorInterface { message: String! } """When the user is not Hexagon SSO.""" type ErrorUserNotEligibleForPromotionOutput implements BaseErrorInterface { message: String! } """ The upgrade failed because the expected current version does not match the actual current version. This typically means another client has performed an upgrade in the meantime (concurrent modification). """ type ErrorVersionUpgradeFailedOutput implements BaseErrorInterface { message: String! """The actual current version of the grouped asset at the time of the attempted upgrade.""" actualCurrentVersion: Int! """The ID of the grouped asset that was targeted.""" groupedAssetId: ID! } type ExceededLimitOutput { name: SubscriptionLimitEnum! value: BigInteger! currentValue: BigInteger! addonAvailable: Boolean! } type ExecutedOutput { executed: Boolean! message: String } """STAC Extent - The extent of the features in the collection including spatial and temporal extents""" type Extent { """The spatial extent of the features in the collection""" spatial: PropertySpatial! """The temporal extent of the features in the collection""" temporal: PropertyTemporal! } type Feature { total: Float! returned: Float! contents: [FeatureItem!]! } type FeatureAsset { name: String! """Link to the asset object""" href: String """Displayed title""" title: String """Media type of the asset""" type: String """Purposes of the asset""" roles: [String!] """ Multi-line description to explain the asset. [CommonMark 0.29](http://commonmark.org/) syntax MAY be used for rich text representation. """ description: String } type FeatureAssets { """Asset thumbnail""" thumbnail: FeatureAsset! """Asset samples""" samples: [FeatureAsset!] """Asset shapefile""" shapefile: FeatureAsset } type FeatureItem { """Provider identifier, a unique id, potentially a link to a file.""" id: String! """STAC version""" stacVersion: String! """The GeoJSON type""" type: ItemType! """ Each bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth): * Lower left corner, coordinate axis 1 * Lower left corner, coordinate axis 2 * Minimum value, coordinate axis 3 (optional) * Upper right corner, coordinate axis 1 * Upper right corner, coordinate axis 2 * Maximum value, coordinate axis 3 (optional) The coordinate reference system of the values is WGS 84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84) unless a different coordinate reference system is specified in 'crs'. For WGS 84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge). If the vertical axis is included, the third and the sixth number are the bottom and the top of the 3-dimensional bounding box. If a feature has multiple spatial geometry properties, it is the decision of the server whether only a single spatial geometry property is used to determine the extent or all relevant geometries. """ bbox: [Float!]! geometry: GeoJSONShape! properties: FeatureProperties! assets: FeatureAssets! } type FeatureProperties { """Title""" title: String """Data type""" data_type: String """Data format""" format: String """Product Code""" productCode: String """Provider""" provider: String """srs""" srs: String """Sensor Type""" sensorType: String """Reference to raw output""" referenceToRawOutput: [String!] """Detailed Geometry""" detailedGeometry: GeoJSONShape """Year""" year: Int """ Either a date-time or an interval, open or closed. Date and time expressions adhere to RFC 3339. Open intervals are expressed using double-dots. Examples: * A date-time: "2018-02-12T23:20:50Z" Only features that have a temporal property that intersects the value of 'datetime' are selected. If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties. """ dateTime: DateTime """ In case the dateTime is empty, the startDateTime and the endDateTime need to provide a valid range """ startDateTime: DateTime """ In case the dateTime is empty, the startDateTime and the endDateTime need to provide a valid range """ endDateTime: DateTime """Ground sample distance""" gsd: Float """Vertical offset correction, if necessary""" verticalOffset: Float """Layer information for visual representation""" layerAddress: LayerAddress } type FileAppliedPageOutput { pageNumber: Int! pageSize: Int! } type FileFilterAppliedOutput { byUploadStatus: [UploadStatusEnum] byFileName: String } type FileOutput { id: ID! asset: AssetOutput path: String! assetPath: String! status: UploadStatusEnum! fileSize: BigInteger! parts: MultipartUploadPartsOutput uploadExpiration: DateTime createdBy: SimpleUserProfileOutput! createdAt: DateTime! modifiedAt: DateTime! """ The download link is generated on the fly and is valid for a limited time. It is not stored in the database. If the user is not allowed to download the file, this field will be an empty string. """ downloadLink: String! } type FileResultOutput { asset: AssetOutput pageNumber: Int! pageSize: Int! total: Int! appliedPagination: FileAppliedPageOutput appliedFilters: FileFilterAppliedOutput orderBy: FileOrderEnum contents: [FileStatusOutput]! } type FileStatusOutput { asset: AssetOutput uploadStatus: UploadStatusEnum total: Int! files: [FileOutput!] } type FilterAccountMembersOutput { byNameOrEmail: String } type FilterAccountProfileAppliedOutput { tenantUUID: ID byCompanyName: String } type FilterAssetAppliedOutput { byAssetType: AssetTypeEnum byAssetName: String byGeoreferenceFlag: Boolean byAssetStatus: AssetStatusEnum byLabels: [ID!] or: FilterAssetOrOutput not: FilterAssetNotOutput includeHidden: Boolean } type FilterAssetNotOutput { byAssetType: AssetTypeEnum byAssetStatus: AssetStatusEnum not: FilterAssetNotOutput } type FilterAssetOrOutput { byAssetType: AssetTypeEnum byAssetStatus: AssetStatusEnum or: FilterAssetOrOutput } type FilterFolderAppliedOutput { byFolderName: String } type FilterProjectAppliedOutput { byProjectName: String byOwnedBy: ID byCreatedAt: DateTime } type FilterUserProfileAppliedOutput { tenantUUID: ID bySearchTerm: String } """A floor plan placed in 3D space within a grouped asset, optionally associated with one or more levels.""" type FloorPlanOutput { id: ID! """ The artifact associated with this floor plan. Returns null if the floor plan has no artifact yet. If multiple artifacts share this floor plan as their parent, the most recently created one is returned. """ artifact: ArtifactItemOutput @deprecated(reason: "No longer supported, in favour of field `artifactV2`, termination planned for 2028-09-30.") """ The artifact payload associated with this floor plan. Resolves the floor plan's most recently created artifact and returns one of its artifact payloads, preferring a visualizable one, then a streamable one, then a downloadable one. Returns null if the floor plan has no artifact payloads yet. """ artifactV2: ArtifactPayloadOutput """Human-readable display name of the floor plan.""" displayName: String! """Position of the floor plan's origin in the parent grouped asset's coordinate system (meters).""" position: Vector3Output! """Rotation around the Z axis in degrees, clockwise.""" rotation: Float! """Width of the floor plan in meters.""" width: Float! """Height of the floor plan in meters.""" height: Float! } """Paginated result of floor plans for a grouped asset.""" type FloorPlanResultOutput { """The grouped asset ID for which the floor plans were retrieved.""" parentId: ID! """Pagination that was actually applied (may differ from requested if values were out of range).""" appliedPagination: AppliedPaginationOutput! """Total number of floor plans for the parent, regardless of pagination.""" total: Int! """Floor plans on the current page, ordered by displayName ascending.""" contents: [FloorPlanOutput!]! } type FolderAppliedPageOutput { pageNumber: Int! pageSize: Int! pageOffset: Int! } """A folder with the given name already exists at the same level.""" type FolderErrorDuplicateNameOutput implements BaseFolderErrorInterface & BaseErrorInterface { message: String! } """ The given name contains one or more blacklisted characters. Blacklisted characters are: <,>,:,|,?,*,",\ """ type FolderErrorNameBlacklistedCharactersOutput implements BaseFolderErrorInterface & BaseErrorInterface { message: String! } """The given name is blank (empty, only spaces or null).""" type FolderErrorNameBlankOutput implements BaseFolderErrorInterface & BaseErrorInterface { message: String! } """ The given name is a forbidden name with any capitalisation and any extension. Forbidden names are: "CON", "PRN", "AUX", "NUL", "COM1", "COM2", "COM3", "COM4", "COM5", "COM6", "COM7", "COM8", "COM9", "LPT1", "LPT2", "LPT3", "LPT4", "LPT5", "LPT6", "LPT7", "LPT8", "LPT9" """ type FolderErrorNameForbiddenOutput implements BaseFolderErrorInterface & BaseErrorInterface { message: String! } """The given name contains a forward slash.""" type FolderErrorNameForwardSlashOutput implements BaseFolderErrorInterface & BaseErrorInterface { message: String! } """The given name contains a leading or trailing space.""" type FolderErrorNameLeadingOrTrailingSpaceOutput implements BaseFolderErrorInterface & BaseErrorInterface { message: String! } """The given name contains a trailing dot.""" type FolderErrorNameTrailingDotOutput implements BaseFolderErrorInterface & BaseErrorInterface { message: String! } """The given name contains two dots in a row.""" type FolderErrorNameTwoDotsInRowOutput implements BaseFolderErrorInterface & BaseErrorInterface { message: String! } """Access to the requested action denied. You do not have the required rights or your authentication token is incorrect.""" type FolderErrorOperationNotAllowedOutput implements BaseFolderErrorInterface & BaseErrorInterface { message: String! } """Access to a requested resource denied.""" type FolderErrorResourceAccessDeniedOutput implements BaseFolderErrorInterface & BaseErrorInterface { message: String! } """The resource was not found in the system.""" type FolderErrorResourceNotFoundOutput implements BaseFolderErrorInterface & BaseErrorInterface { message: String! } """ The system is receiving too many requests. Try again later. This error will no longer occur but preserved for backward-compatibility. """ type FolderErrorTooManyRequestsOutput implements BaseFolderErrorInterface & BaseErrorInterface { message: String! } type FolderOutput { id: ID! name: String! description: String project: ProjectOutput parentFolder: FolderOutput nestingLevel: Int version: Int isRootFolder: Boolean isNestingLevelReached: Boolean folders(paging: FolderPageInput, filter: FilterFolderInput, orderBy: FolderOrderEnum): FolderResultOutput! createdAt: DateTime modifiedAt: DateTime createdBy: SimpleUserProfileOutput modifiedBy: SimpleUserProfileOutput assets(paging: AssetPageInput, filter: FilterAssetInput, orderBy: AssetOrderEnum): GroupedAssetResultOutput! """The number of assets in this folder and all of its subFolders.""" assetCount(filter: AssetCountFilterInput): Int! } type FolderResultOutput { appliedFilters: FilterFolderAppliedOutput orderBy: FolderOrderEnum appliedPagination: FolderAppliedPageOutput pageNumber: Int! pageSize: Int! total: Int! contents: [FolderOutput]! } type GatewayInfoOutput { version: String! } type GeneratedPipelineArtifactInfoOutput { status: ProcessingStatus errorsV2: [ProcessingDetailedErrorOutput!]! inputs: [ProcessingStepInputOutput!]! } type GeoJSONShape { type: GeoJSONCoordinateType! coordinates: JSON! bbox: [Float!] } type GeoreferenceAppliedPaginationOutput { pageNumber: Int! pageSize: Int! } type GeoreferenceArtifactResultOutput { id: ID! artifact: ArtifactItemOutput! visible: Boolean! } type GroupedAssetGeoreferenceOutput { id: ID! parentId: ID! parentType: ParentTypeEnum! artifacts: [GeoreferenceArtifactResultOutput!]! @deprecated(reason: "No longer supported, in favor of `visibleArtifacts`. Termination planned for 2026-02-01.") visibleArtifacts: [ArtifactItemOutput!]! @deprecated(reason: "No longer supported, in favour of field `visibleArtifactPayloadsV2`, termination planned for 2028-09-30.") """ Payloads of the artifacts from the grouped asset that are visible in this georeference. Each visible artifact contributes one payload: the preferred one among its addresses, preferring a streamable address, then a visualizable one, then a downloadable one. """ visibleArtifactPayloads: [ArtifactPayloadOutput!]! @deprecated(reason: "No longer supported, in favour of field `visibleArtifactPayloadsV2`, termination planned for 2026-09-30.") """ Payloads of the artifacts from the grouped asset that are visible in this georeference, one entry per visible artifact. Every payload of an artifact is available, so the client picks the address it needs instead of being handed a single preferred one. """ visibleArtifactPayloadsV2: [VisibleArtifactPayloadsOutput!]! name: String! flattenEnabled: Boolean! flattenScale: Float latitude: Float! longitude: Float! altitude: Float! pitch: Float! yaw: Float! roll: Float! anchorX: Float! anchorY: Float! anchorZ: Float! scaleX: Float! scaleY: Float! scaleZ: Float! createdAt: DateTime! modifiedAt: DateTime! } type GroupedAssetGeoreferenceResultsOutput { pageNumber: Int! pageSize: Int! total: Int! appliedPagination: GeoreferenceAppliedPaginationOutput contents: [GroupedAssetGeoreferenceOutput]! } type GroupedAssetOutput { id: ID! labelAnnotations: [LabelAnnotationOutput!] measurementAnnotations: [MeasurementAnnotationOutput!] limitingBoxAnnotations: [LimitingBoxAnnotationOutput!] levels(paging: PaginationInput): LevelResultOutput! """Retrieve floor plans for this grouped asset.""" floorPlans(paging: PaginationInput): FloorPlanResultOutput! sharingCode: ID @deprecated(reason: "Returns only the first sharing code without expiry date - replaced by sharingCodes , termination planned for 2025-06-30") sharingCodes: [SharingCodeOutput!]! asset: AssetOutput! folder: FolderOutput! assetType: AssetTypeEnum! name: String! description: String assetStatus: AssetStatusEnum assetSize: BigInteger! createdBy: SimpleUserProfileOutput! modifiedBy: SimpleUserProfileOutput thumbnailPath: String bbox: AssetBBoxOutput createdAt: DateTime! modifiedAt: DateTime! thumbnailSignatureValidUntil: DateTime """ The download link is generated on the fly and is valid for a limited time. It is not stored in the database. If the user is not allowed to download the asset, this field will be an empty string. """ downloadLink: String! linkedGroupedAssets: [String!] latestVersion: Int! totalSize: BigInteger! versions(paging: AssetVersionPageInput, filter: FilterAssetVersionInput, orderBy: AssetVersionOrderEnum = VERSION_DESC): AssetVersionResultOutput! storageRegion: String! hidden: Boolean! groupedAssetGeoreferences(paging: GeoreferencePaginationInput): GroupedAssetGeoreferenceResultsOutput tours(params: TourInput): GroupedAssetTourResultOutput! viewpoint: ViewpointOutput labels: LabelsOutput! } type GroupedAssetPropertiesOutput { visibleLabelAnnotations: [ID] visibleMeasurementAnnotations: [ID] selectedLimitingBoxAnnotation: ID visibleArtifacts: [ID!] } type GroupedAssetResultOutput { appliedPagination: AssetAppliedPageOutput appliedFilters: FilterAssetAppliedOutput orderBy: AssetOrderEnum total: Int! pageNumber: Int! pageSize: Int contents: [GroupedAssetOutput!]! } """Result of groupedAssetReferences query containing scene leaf nodes that reference the specified grouped asset.""" type GroupedAssetSceneNodeReferencesOutput { contents: [SceneLeafNodeOutput!] appliedPagination: AppliedPaginationOutput total: Int! } type GroupedAssetTourKeyframeOutput implements TourKeyframe { """Output tour keyframe ID""" id: ID! """Camera viewpoint""" cameraViewpoint: TourCameraViewpointOutput! """Path tension""" tension: Float! """Duration from tour start""" durationFromTourStart: BigInteger! """Properties""" properties: GroupedAssetPropertiesOutput } type GroupedAssetTourOutput implements Tour { """Grouped asset tour ID""" id: ID! """Tour name""" name: String! """Tour description""" description: String """ **DEPRECATED in favor of `projectCapabilities` query, termination planned for 2026-04-30** Is true if the user can edit the tour """ canEdit: Boolean! @deprecated(reason: "In favor of `projectCapabilities` query.") """Date and time the tour was created at""" createdAt: DateTime! """Name of the user that created the tour""" createdBy: SimpleUserProfileOutput! """Date and time the tour was last modified at""" modifiedAt: DateTime! """Thumbnail path""" thumbnailPath: String """Duration of the tour""" duration: Float! """Path tension""" tension: Float! """Closed""" closed: Boolean """Tour keyframes""" keyframes: [GroupedAssetTourKeyframeOutput!] } type GroupedAssetTourResultOutput { """Applied filters""" appliedFilters: TourFilterAppliedOutput! """Applied pagination""" appliedPagination: TourAppliedPageOutput! """Contents""" contents: [GroupedAssetTourOutput!] """Property by which tour result is ordered by""" orderBy: TourOrderEnum! """Page number""" pageNumber: Int! """Page size""" pageSize: Int! """Total""" total: Int! } type GroupedAssetsOutput { contents: [AssetUnion!]! } """Error when a security group is not configured correctly. For example when the three lists are empty.""" type InvalidSecurityGroupConfigurationOutput implements BaseCatalogErrorInterface & BaseErrorInterface { message: String! } type InvitationOutput { registrationLink: String! } """A GeoJSON FeatureCollection augmented with foreign members that contain values relevant to a STAC entity""" type ItemCollection { type: ItemCollectionType! total: Float! returned: Float! contents: [FeatureItem!]! } type JobPage { parentId: ID! _pageNumber: Int! _pageSize: Int! } type JobSummaryGQL { parentId: ID! """Always returns empty list.""" jobs: [SummaryItemGQL!]! } type LabelAnnotationDataOutput { """The label position. Usually this is defined in the CRS of the asset.""" position: AnnotationPointOutput! """The camera point of view to look at this label.""" lookAt: AnnotationOrientationOutput! } type LabelAnnotationOutput implements AnnotationInterface { """The label's ID.""" id: ID! """ External identifier for lineage tracking. For copied labels, this references the original label. For non-copied labels or imports, this may be the annotation's UUID or an external system uuid. """ originalId: ID! """The label's title.""" title: String! """The label's description.""" description: String """The label's thumbnail path.""" thumbnailPath: String """The user who created this label.""" createdBy: SimpleUserProfileOutput! """The label's creation time.""" createdAt: DateTime! """The latest user to modify this label.""" modifiedBy: SimpleUserProfileOutput! """The label's latest modification time.""" modifiedAt: DateTime! """File attachments""" files: [AnnotationFileAttachmentOutput!]! """Urls or paths of network resources""" links: [AnnotationLinkOutput!]! """Categories associated to the annotation""" categories: [AnnotationCategoryAssignmentOutput!]! """The label's data.""" data: LabelAnnotationDataOutput! } """Access to the requested action denied. You do not have the required rights or your authentication token is incorrect.""" type LabelErrorOperationNotAllowedOutput implements BaseLabelErrorInterface & BaseErrorInterface { message: String! } """A project with the given name already exists at the same level.""" type LabelErrorTooManyLabelsOutput implements BaseLabelErrorInterface & BaseErrorInterface { message: String! } type LabelOutput { name: String! id: ID! } type LabelOutputV2 { id: ID! name: String! } type LabelsOutput { content: [LabelOutput]! } type LabelsResultOutput { content: [LabelOutput]! pageNumber: Int! pageSize: Int! total: Int! } type LayerAddressHspc implements CoreLayer { id: String! endpoint: String! signatureExpiration: DateTime sourceEndpoint: String! type: String! label: String viewingMode: String! } type LayerAddressLts implements CoreLayer { id: String! endpoint: String! signatureExpiration: DateTime sourceEndpoint: String! type: String! label: String viewingMode: String! reference: String! bounds: [Float!]! datasetId: String! levelCount: Float! level0Columns: Float! level0Rows: Float! contentType: Float! tileWidth: Float! tileHeight: Float! samplingMode: Float! } type LayerAddressOgc3DTiles implements CoreLayer { id: String! endpoint: String! signatureExpiration: DateTime sourceEndpoint: String! type: String! label: String viewingMode: String! qualityFactor: Float! bounds: [Float!]! boundsLLH: [Float!]! } type LayerAddressWms implements CoreLayer { id: String! endpoint: String! signatureExpiration: DateTime sourceEndpoint: String! type: String! label: String viewingMode: String! reference: String! bounds: [Float!]! datasetId: String! versions: [String!] imageFormat: String } type LayerAddressWmts implements CoreLayer { id: String! endpoint: String! signatureExpiration: DateTime sourceEndpoint: String! type: String! label: String viewingMode: String! reference: String! bounds: [Float!]! datasetId: String! imageFormat: String levelCount: Float! level0Columns: Float! level0Rows: Float! tileWidth: Float! tileHeight: Float! contentType: Float! samplingMode: Float! tileMatrixSet: String! tileMatrices: [Float!]! } type LevelDataOutput { """The level's offset in meters. The offset is applied after the rotation.""" offset: Vector3Output! """ The level's rotation around its origin, in degrees. The rotation is applied before the offset. Currently, only the z-axis rotation is defined, as clockwise. """ rotation: Vector3Output! """The level's minimum coordinates""" min: Vector3Output! """The level's maximum coordinates.""" max: Vector3Output! } type LevelOutput { id: ID! """The level's title.""" title: String! """The order of the level""" order: Int! """The user who created this level.""" createdBy: SimpleUserProfileOutput! """The level's creation time.""" createdAt: DateTime! """The latest user to modify this level.""" modifiedBy: SimpleUserProfileOutput! """The level's latest modification time.""" modifiedAt: DateTime! """The level's data.""" data: LevelDataOutput! """The floor plans associated with this level.""" floorPlans: [FloorPlanOutput!]! viewpoint: ViewpointOutput } type LevelResultOutput { parentId: ID! total: Int! appliedPagination: AppliedPaginationOutput! contents: [LevelOutput!]! } type LimitToApplyOutput { value: Int! limit: AccountLimitEnum! limitExpirationDate: DateTime! } """ The data needed to construct a limiting box in 3D, around a given origin. Steps to construct a limiting box: 1. Get the origin of the box from the item it belongs to. For non-georeferenced assets, this is the anchor point of the asset. For georeferenced assets, this is the `originGeolocation` of the `ReferencedBoundsOutput` of the asset. 2. Create an axis-aligned box using the origin and min & max values of the limiting box object. 3. Rotate that box using the rotation of the limiting box object. 4. Translate that box along its rotated axes by the offset of the limiting box object. """ type LimitingBoxAnnotationDataOutput { """The limiting box's offset in meters. The offset is applied after the rotation.""" offset: AnnotationPointOutput! """ The limiting box's rotation around its origin, in degrees. The rotation is applied before the offset. Currently, only the z-axis rotation is defined, as clockwise. """ rotation: AnnotationRotationOutput! """The camera point of view to look at this limiting box.""" lookAt: AnnotationOrientationOutput! """ The limiting box's minimum X coordinate, in meters. In the georeferenced case, X is east. """ minX: Float! """ The limiting box's maximum X coordinate, in meters. In the georeferenced case, X is east. """ maxX: Float! """ The limiting box's minimum Y coordinate, in meters. In the georeferenced case, Y is north. """ minY: Float! """ The limiting box's maximum Y coordinate, in meters. In the georeferenced case, Y is north. """ maxY: Float! """ The limiting box's minimum Z coordinate, in meters. In the georeferenced case, Z is up. """ minZ: Float! """ The limiting box's maximum Z coordinate, in meters. In the georeferenced case, Z is up. """ maxZ: Float! } type LimitingBoxAnnotationOutput implements AnnotationInterface { """The limiting box's ID.""" id: ID! """ External identifier for lineage tracking. For copied limiting boxes, this references the original limiting box. For non-copied limiting boxes or imports, this may be the annotation's UUID or an external system uuid. """ originalId: ID! """The limiting box's title.""" title: String! """The limiting box's description.""" description: String """The limiting box's thumbnail path.""" thumbnailPath: String """The user who created this limiting box.""" createdBy: SimpleUserProfileOutput! """The limiting box's creation time.""" createdAt: DateTime! """The latest user to modify this limiting box.""" modifiedBy: SimpleUserProfileOutput! """The limiting box's latest modification time.""" modifiedAt: DateTime! """File attachments""" files: [AnnotationFileAttachmentOutput!]! """Urls or paths of network resources""" links: [AnnotationLinkOutput!]! """Categories associated to the annotation""" categories: [AnnotationCategoryAssignmentOutput!]! """The limiting box's data.""" data: LimitingBoxAnnotationDataOutput! } """STAC Link - A link object represents a relationship between the current document and another resource.""" type Link { """ The actual link in the format of a URL. Relative and absolute links are both allowed. Example: http://www.geoserver.example/stac/naip/child/catalog.json """ href: String! """ Relationship between the current document and the linked document. Example: child, parent, root, self, alternate, etc. """ rel: String! """ Media type of the referenced entity, according to RFC2046. Example: application/geo+json """ type: String """ RFC 5646 language code for the linked document. Example: en """ hreflang: String """Human readable title to be used in rendered displays of the link.""" title: String """HTTP method to use when accessing the href URL. Defaults to GET if not specified.""" method: String """Additional headers to send with requests to the href URL.""" headers: JSON """Request body to send with the request to the href URL.""" body: JSON """Indicates that the link's context is merged with the current document when the link is resolved.""" merge: Boolean } type ListOfUserProjectRoleOutput { users: [UserProjectRoleOutput!]! } type LocalizedNameOutput { languageAlpha2Code: String! languageAlpha3Code: String! name: String! } type MeasurementAnnotationDataOutput { """The measurement points. Usually these are defined in the CRS of the asset.""" points: [AnnotationPointOutput!]! """The camera point of view to look at this measurement.""" lookAt: AnnotationOrientationOutput! """The measurement type.""" measurementType: MeasurementAnnotationEnum! } type MeasurementAnnotationOutput implements AnnotationInterface { """The measurement's ID.""" id: ID! """ External identifier for lineage tracking. For copied measurements, this references the original measurement. For non-copied measurements or imports, this may be the annotation's UUID or an external system uuid. """ originalId: ID! """The measurement's title.""" title: String! """The measurement's description.""" description: String """The measurement's thumbnail path.""" thumbnailPath: String """The user who created this measurement.""" createdBy: SimpleUserProfileOutput! """The measurement's creation time.""" createdAt: DateTime! """The latest user to modify this measurement.""" modifiedBy: SimpleUserProfileOutput! """The measurement's latest modification time.""" modifiedAt: DateTime! """File attachments""" files: [AnnotationFileAttachmentOutput!]! """Urls or paths of network resources""" links: [AnnotationLinkOutput!]! """Categories associated to the annotation""" categories: [AnnotationCategoryAssignmentOutput!]! """The measurement's data.""" data: MeasurementAnnotationDataOutput! } type MultiArtifactDownloadLinkOutput { multiArtifactDownloadLink: String! } type MultiAssetDownloadLinkOutput { multiAssetDownloadLink: String! } type MultiFolderDownloadLinkOutput { multiFolderDownloadLink: String! } type MultiGroupedAssetCopyOutput { contents: [GroupedAssetCopyUnion!]! } type MultiGroupedAssetMoveOutput { contents: [GroupedAssetMoveUnion!]! } type MultipartUploadETagOutput { etag: String! size: BigInteger! partNumber: Int! } type MultipartUploadPartsOutput { totalUploadedSize: BigInteger! uploadExpirationDate: DateTime multipartUploadsETags: [MultipartUploadETagOutput]! } type MultipartUploadUrlOutput { fileId: ID! uploadUrl: String! expirationDate: DateTime! partNumber: Int! } type Mutation { """ Manually trigger the processing pipeline defined in the input parameter. HXDR_ZIPPER can only be triggered by users with the CAN_ZIP_PIPELINE_RESULT platform capability. Users with the CAN_TRIGGER_ANY_PIPELINE platform capability can trigger a pipeline on any grouped asset. """ triggerProcessingV2(params: TriggerInput!): TriggerProcessingUnion! """ Manually trigger the UAV processing pipeline. Users with the CAN_TRIGGER_ANY_PIPELINE platform capability can trigger a pipeline on any grouped asset. """ triggerUavProcessing(params: TriggerUavProcessingInput!): TriggerProcessingUnion! """ Manually trigger the meshing pipeline v2 Input: TriggerMeshingInput where grouped assetUUID and ScanningDeviceType are required. Users with the CAN_TRIGGER_ANY_PIPELINE platform capability can trigger a pipeline on any grouped asset. """ triggerMeshingV2(params: TriggerMeshingInput!): TriggerProcessingUnion! """ Trigger processing for a point cloud classification. Users with the CAN_TRIGGER_ANY_PIPELINE platform capability can trigger a pipeline on any grouped asset. """ triggerPointCloudClassification(params: TriggerPointCloudClassificationInput!): TriggerProcessingUnion! """ Create an artifact. DEPRECATED in favor of `createArtifactV2` with an ASSET parent. """ createArtifact(params: CreateArtifactInput!): ArtifactUnion! @deprecated(reason: "No longer supported, in favour of mutation createArtifactV2 with an ASSET parent, termination planned for 2028-07-31") """ Create an artifact attached to a parent identified by its type and id. Supports parents of type ASSET, SCENE_NODE and ANALYSIS. FLOOR_PLAN is accepted by the schema but rejected at runtime as it is not supported. For an ASSET parent, parentId is the id of the grouped asset the artifact belongs to. """ createArtifactV2(params: CreateArtifactInputV2!): ArtifactUnion! """Patch an artifact by adding/replacing a file in it if the artifact is not marked as: complete, processing or failed.""" patchArtifact(params: PatchArtifactInput!): PatchArtifactUnion! """Signal the completion of an upload.""" completeUpload(params: CompleteUploadInput!): CompleteUploadUnion! """Delete an artifact""" deleteArtifact(params: DeleteArtifactInput!): DeleteArtifactUnion! """Mark the artifact as complete. Completed artifacts cannot be patched anymore.""" completeArtifact(params: CompleteArtifactInput!): ArtifactUnion! """Change the media type of an existing, completed artifact.""" updateMediaType(params: UpdateMediaTypeInput!): ArtifactUnion! """Creates a new label annotation with the given properties.""" createLabelAnnotationV2(createLabelAnnotationInput: CreateLabelAnnotationInputV2!): CreateLabelAnnotationUnion! """Updates a given label annotation with the given properties.""" updateLabelAnnotationV2(updateLabelAnnotationInput: UpdateLabelAnnotationInputV2!): UpdateLabelAnnotationUnion! """Creates a new measurement annotation with the given properties.""" createMeasurementAnnotationV2(createMeasurementAnnotationInput: CreateMeasurementAnnotationInputV2!): CreateMeasurementAnnotationUnion! """Updates a given measurement annotation with the given properties.""" updateMeasurementAnnotationV2(updateMeasurementAnnotationInput: UpdateMeasurementAnnotationInputV2!): UpdateMeasurementAnnotationUnion! """Creates a new limiting box annotation with the given properties.""" createLimitingBoxAnnotationV2(createLimitingBoxAnnotationInput: CreateLimitingBoxAnnotationInputV2!): CreateLimitingBoxAnnotationUnion! """Updates a given limiting box annotation with the given properties.""" updateLimitingBoxAnnotationV2(updateLimitingBoxAnnotationInput: UpdateLimitingBoxAnnotationInputV2!): UpdateLimitingBoxAnnotationUnion! """Deletes the annotation with the given ID.""" deleteAnnotationV2(annotationId: ID!): DeleteAnnotationUnion! """Upload a thumbnail image for the annotation with the given ID.""" uploadThumbnailToAnnotationV2(annotationId: ID!): AnnotationThumbnailUnion! """Create a text-category in the specified project""" createAnnotationTextCategory(createAnnotationTextCategoryInput: CreateAnnotationTextCategoryInput!): CreateAnnotationTextCategoryUnion! """Update an existing text-category""" updateAnnotationTextCategory(updateAnnotationTextCategoryInput: UpdateAnnotationTextCategoryInput!): UpdateAnnotationTextCategoryUnion! """Create a list-category in the specified project (with predefined values)""" createAnnotationCategoryPredefinedList(annotationCategory: CreateAnnotationCategoryPredefinedListInput!): CreateAnnotationCategoryPredefinedListUnion! """Update an existing list-category""" updateAnnotationCategoryPredefinedList(annotationCategory: UpdateAnnotationCategoryPredefinedListInput!): UpdateAnnotationCategoryPredefinedListUnion! """Delete an annotation-category.""" deleteAnnotationCategory(categoryId: ID!): DeleteAnnotationCategoryUnion! """Creates a new level with the given properties.""" createLevel(params: CreateLevelInput!): CreateLevelUnion! """Updates a given level with the given properties.""" updateLevel(params: UpdateLevelInput!): UpdateLevelUnion! """Deletes the level with the given ID.""" deleteLevel(levelId: ID!): DeleteLevelUnion! """ Updates the details of the account the logged in user belongs to. should guarantee that the return values are already reflected in the cache This Mutation can be called only with a bearer token. """ updateAccount(update: AccountUpdateInput!): AccountInfoOutput! """ Updates the details of the account the logged in user belongs to. should guarantee that the return values are already reflected in the cache This Mutation can be called only with a bearer token. """ updateAccountV2(update: AccountUpdateInput!): AccountInfoUpdateUnion! """ Update the account info adding additional information to it. This Mutation can be called only with a bearer token. Requires platform capability CAN_EDIT_ACCOUNT to set properties in any tenant, or the CAN_SET_ACCOUNT_PROPERTIES tenant capability to set properties within the user's own tenant. """ setAccountProperties(param: AccountPropertiesInput!): AccountInfoOutput! """ Create a setup intent so that to create card in external payment system This Mutation can be called only with a bearer token. """ setupPaymentCardCreation: SetupPaymentCardCreationOutput! """ Update payment card in external payment system This Mutation can be called only with a bearer token. """ updatePaymentCard(params: PaymentCardInput): PaymentCardOutput! """ Delete card in external payment system This Mutation can be called only with a bearer token. """ deletePaymentCard(params: DeletedPaymentCardInput): DeletedPaymentCardOutput! """ Set active payment card for subscription This Mutation can be called only with a bearer token. """ setActivePaymentCard(params: SetActivePaymentCardInput): SetActivePaymentCardOutput! """ Changes the storage region of the specified account, exposed as AccountInfoOutput.defaultStorageRegion. Only projects created after this change are in the new region; already stored data is not moved. Requires the platform capability CAN_EDIT_ACCOUNT. Elevated roles such as support or application admin do not grant this capability. """ changeAccountStorageRegion(params: ChangeAccountStorageRegionInput!): ChangeAccountStorageRegionUnion! """Updates the profile details of the currently logged in user.""" updateUser(update: UserUpdateInput!): UserProfileOutput! """Updates the profile picture of the currently logged in user.""" uploadProfilePicture: ProfilePictureOutput! """Removes the profile picture of the currently logged in user.""" removeProfilePicture: Boolean! """Updates the time for the last consent""" setUploadConsent: DateTime """Adds consent to the users list of consents""" setUserFlag(userFlag: UserFlagInput): Boolean """ **DEPRECATED** Remove consent from the users list of consents """ removeUserFlag(userFlag: UserFlagEnum): Boolean @deprecated(reason: "No longer supported. UserFlagInput.valid can be set to false in some cases, but the flag cannot be completely removed. Termination planned for 2025-09-01") """ **DEPRECATED** use updateUserSettingsV3 instead. Updates the user settings for the currently logged in user """ updateUserSettingsV2(userSettings: UserSettingsInputV2!): UpdateUserSettingsUnion! @deprecated(reason: "Use updateUserSettingsV3 instead, which accepts the granular UserSettingsMeasurementEnumV2") """ Updates the user settings for the currently logged in user. Prefer this over updateUserSettingsV2: this version accepts the granular UserSettingsMeasurementEnumV2 (IMPERIAL_INTERNATIONAL_FEET, IMPERIAL_SURVEY_FEET, etc.) instead of the coarse two-value UserSettingsMeasurementEnum. """ updateUserSettingsV3(userSettings: UserSettingsInputV3!): UpdateUserSettingsUnion! """ **DEPRECATED** use addExternalUserToProjectV2 instead. Add user to project via email address """ addExternalUserToProject(externalProjectMemberInput: ExternalProjectMemberInput): Boolean @deprecated(reason: "No longer supported, in favour of mutation addExternalUserToProjectV2, termination planned for 2025-12-31") """Add user to project via email address""" addExternalUserToProjectV2(externalProjectMemberInput: ExternalProjectMemberInput!): AddExternalUserToProjectUnion! """Add an item to the cart""" addItemToCart(params: AddCartItemInput!): CartOutput! """Remove an item from the cart""" removeItemFromCart(params: RemoveCartItemInput!): CartOutput! """ Initiate the payment of the items in the cart If the payment fails the cart is perserved """ placeOrder(params: PlaceOrderInput!): CheckoutOutput! """Delete the cart entirely""" deleteCart: Boolean! uploadThumbnailToCartItem(params: CartItemThumbnailInput!): CartItemThumbnailOutput! """ Generates a presigned URL for uploading the polygon, returns the URL and the path to the upload location. """ uploadPolygon: PolygonOutput! """put back the cart from payment pending to Active state""" resetPayment: Boolean """ Call back for the Front end that the payment with stripe was successful and the cart now needs to wait for the call back from stripe """ finalizePayment: CartOutput """ This graphql mutation allows a user to trigger shop processing pipelines. To trigger this pipeline an Cyclomedia bearer token is required, or the acting user must have the CAN_TRIGGER_ANY_PIPELINE platform capability. Additionally a prerequisite to trigger this pipeline, is for the user to perform the `uploadPolygon` mutation, and upload the geojson via the returned presigned S3 url. The path returned by the above mutation, needs to be used to execute the `triggerShopProcessingPipeline` mutation. Successfully triggered pipeline will have the following status: "CREATED" """ triggerShopProcessingPipeline(triggerObject: ProcessingPipelineTriggerInput): ProcessingPipelineTriggerOutput """ This graphql mutation allows a user to trigger MYVR_HSPC_TO_LAS pipeline Additionally a prerequisite to trigger this pipeline, is for the user to perform the `uploadPolygon` mutation, and upload the geojson/shape file via the returned presigned S3 url. The path returned by the above mutation, needs to be used to execute the `triggerHSPCClipperProcessingPipeline` mutation. Successfully triggered pipeline will have the following status: "CREATED" """ triggerHSPCClipperProcessingPipeline(triggerObject: ProcessingPipelineTriggerInput): ProcessingPipelineTriggerOutput @deprecated(reason: "in favor of triggerShopProcessingPipeline, termination planned for 2027-03-31") """ Trigger sales report generation. Can be done by platform admins and users with tenant capability CAN_GENERATE_SALES_REPORT. The sales report is always for all accounts, not limited to a specific tenant. """ generateReport(params: ReportGenerationInput!): ReportGenerationOutput! """ Generates an invitation containing a signed URL that can be used to signup a user to an existing account. The user will receive the specified account user role. No longer returns AcsErrorSeatLimitReachedOutput. """ generateInvitationV2(params: GenerateInviteInput!): GenerateInvitationUnion! """ Generates a voucher containing a signed URL that can be used to signup a new user in a new account. The user will receive the account ADMIN user role. Only for users with the CAN_GENERATE_VOUCHER platform capability, or the CAN_GENERATE_VOUCHER tenant capability for vouchers within the users tenant. """ generateVoucherV2(params: GenerateVoucherInput!): VoucherUnion! """ Creates the user with the provided details based on a sent out invite, protected by a provided signature. The user is created within the account specified in the SignupFromInviteInputV3. Supports extended measurement units via UserSettingsMeasurementEnumV2. No longer returns AcsErrorSeatLimitReachedOutput. """ signupFromInviteV4(params: SignupFromInviteInputV3!): SignupFromInviteUnion! """ Creates a new account with a new account admin, using the provided details. If the signature is provided, the information inside the signature will be used. The address provided will be validated. Supports extended measurement units via UserSettingsMeasurementEnumV2. Current version of HxDR only allows signature-based sign ups. """ signupV5(params: SignupInputV3!): SignupWithAddressValidationUnion! """ Deletes the account from the system. For accounts in the same tenancy, requires the tenant capability CAN_DELETE_ACCOUNT or the platform capability CAN_DELETE_ACCOUNT. For accounts in a different tenancy, requires the platform capability CAN_DELETE_ACCOUNT. """ deleteAccount(accountId: ID!): AccountDeletionUnion! """ Deletes the user from the system. Requires the account capability CAN_DELETE_USER if the user is in the same account, otherwise requires the platform capability CAN_DELETE_USER. """ deleteUserV2(userId: ID!): UserDeletionUnion! """ Changes the role of another user within an account. If the targeted user is in the same account, the acting user must have the CAN_CHANGE_ACCOUNT_ROLE account capability or the CAN_CHANGE_ACCOUNT_ROLE platform capability. If the targeted user is in a different account, the acting user must have the CAN_CHANGE_ACCOUNT_ROLE platform capability. """ changeAccountRoleOfUserV2(params: AccountMemberInput): SimpleResultUnion! """ Adds a user to the project as project member. The user must belong to the same account as the project owner. """ addUserToProjectV2(params: ProjectMemberInput): SimpleResultUnion! """ Removes a user from a project. Their uploaded assets, folders, and other contributions to the project remain unchanged on the project. """ removeUserFromProjectV2(userId: ID!, projectId: ID!): SimpleResultUnion! """ Changes the role of another user within a project. Can only target members of the project. Use `addUserToProject` if you want to add a new member with a specific role. Changing a project role is restricted to project owners / editors, and the account admin. If a user is promoted to Project Owner this way, the previous owner gets demoted to Project Editor. No longer returns AcsErrorSeatLimitReachedOutput. """ changeProjectRoleOfUserV2(params: ProjectMemberInput): ChangeProjectRoleUnion! """ Allows a user to leave a project. The project owner cannot leave the project; they must first call changeProjectRoleOfUser and promote another member of the project to owner before calling this endpoint. Throws a 403 if the user has no access to this project, and 400 if the user is an owner or not a member of the project. """ leaveProjectV2(projectId: ID!): SimpleResultUnion! """ Changes the owner of a project. This mutation can be called by a user with either the CAN_CHANGE_PROJECT_OWNER platform capability or the CAN_CHANGE_PROJECT_OWNER tenant capability. As a result of this mutation: - all existing users of the project are removed - the (tenant) admin that performs the call will be added as viewer - the user indicated in the call becomes the new owner - the account indicated in the call will own the project, and the consumption of that project will be added to the usage count of the targeting account No longer returns AcsErrorSeatLimitReachedOutput. """ changeProjectOwner(params: ChangeProjectOwnerInput!): ChangeProjectOwnerUnion! """ Creates a new tenant. Only for users with the CAN_CREATE_TENANT platform capability. """ createTenantV2(params: CreateTenantInput!): TenantUnion! """ Updates an existing tenant. Only accessible to application admins. Only for users with the CAN_UPDATE_TENANT platform capability, or who are tenant admin in the same tenant.. """ updateTenantV2(params: UpdateTenantInput!): TenantUnion! """ Sets a tenant as the default tenant. Only for users with the CAN_SET_DEFAULT_TENANT platform capability. """ setDefaultTenantV2(tenantId: ID!): TenantUnion! """ Deletes the tenant from the system. If the migration tenant is supplied, all the accounts of the deleted tenant will be migrated to that tenant. Otherwise the default tenant will be used. Only for users with the CAN_DELETE_TENANT platform capability. """ deleteTenantV2(params: DeleteTenantInput!): TenantDeletionUnion! """ Assigns an account to a tenant. Only for users with the CAN_ASSIGN_ACCOUNT_TO_TENANT platform capability. """ assignAccountToTenantV2(params: AssignAccountToTenantInput!): SimpleResultUnion! """ Assigns an account to a tenant. Only for users with the CAN_CHANGE_TENANT_ROLE platform capability, or who are tenant admin in the same tenant. """ assignTenantRoleToUserV2(params: AssignTenantRoleToUserInput!): SimpleResultUnion! """ Assigns all the accounts in dr-account-info to a tenant. Only available for Application Admins. Only for users with the CAN_ASSIGN_ACCOUNTS_TO_TENANT platform capability. """ updateAccountWithTenantInfoV2: SimpleResultUnion! """ Assigns all the accounts in dr-user-info to a tenant. Only for users with the CAN_TRIGGER_SYNC_JOB platform capability. """ updateUserWithTenantInfoV2: SimpleResultUnion! """ Sync tenant roles of user from dr-acs to dr-user-info. Only for users with the CAN_TRIGGER_SYNC_JOB platform capability. """ updateUserWithTenantRoleV2: SimpleResultUnion! """ **DEPRECATED in favour of mutation signupFromInviteV4** Creates the user with the provided details based on a sent out invite, protected by a provided signature. The user is created within the account specified in the SignupFromInviteInputV2. No longer returns AcsErrorSeatLimitReachedOutput. """ signupFromInviteV3(params: SignupFromInviteInputV2!): SignupFromInviteUnion! @deprecated(reason: "No longer supported, in favour of signupFromInviteV4, termination planned for 2028-03-31") """ **DEPRECATED in favour of mutation signupV5** Creates a new account with a new account admin, using the provided details. If the signature is provided, the information inside the signature will be used. The address provided will be validated. Current version of HxDR only allows signature-based sign ups. """ signupV4(params: SignupInputV2!): SignupWithAddressValidationUnion! @deprecated(reason: "No longer supported, in favour of signupV5, termination planned for 2028-03-31") """ **DEPRECATED in favour of mutation signupFromInviteV3** Creates the user with the provided details based on a sent out invite, protected by a provided signature. The user is created within the account specified in the SignupFromInviteInput. No longer returns AcsErrorSeatLimitReachedOutput. """ signupFromInviteV2(params: SignupFromInviteInput!): SignupFromInviteUnion! @deprecated(reason: "No longer supported, in favour of mutation signupFromInviteV3, termination planned for 2026-02-18") """ **DEPRECATED in favour of mutation signupV4** Creates a new account with a new account admin, using the provided details. If the signature is provided, the information inside the signature will be used. The address provided will be validated. Current version of HxDR only allows signature-based sign ups. """ signupV3(params: SignupInput!): SignupWithAddressValidationUnion! @deprecated(reason: "No longer supported,in favour of mutation signupV4, termination planned for 2026-02-18") """ Generates a code for sharing the grouped asset If canDownload is set to true, the code can be used to download the asset. If an expiration date is provided, the code will be valid until that date, otherwise it will be valid forever. """ shareGroupedAsset(groupedAssetId: ID!, canDownload: Boolean, expireAt: DateTime): SharingCodeUnion! """Removes the access to a shared grouped asset""" unshareGroupedAsset(groupedAssetId: ID!): UnsharedGroupedAssetUnion! @deprecated(reason: "Use removeSharing to remove a specific sharing code, termination planned for 2025-06-30") """ Only users with platform capability CAN_CHANGE_PLATFORM_ROLE can call this mutation. This capability should only be assigned to a superadmin role, as any platform role elevation will have to go through an approval process, similar to what is needed when requesting access to confluence, slack etc. """ changePlatformRole(params: ChangePlatformRoleInput!): ChangePlatformRoleUnion! """ Creates a new automation user and returns client credentials (clientId and clientSecret). The clientSecret is returned only once and cannot be retrieved again. Requires the CAN_CREATE_CLIENT_CREDENTIALS account capability. """ createAutomationUser(params: CreateAutomationUserInput!): CreateAutomationUserUnion! """**DEPRECATED in favor of mutation `buySubscriptionV2`**""" confirmSubscriptionOrderV2: ConfirmSubscriptionUnion! @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") """Buy a subscription by create it into payment system.""" buySubscriptionV2(params: CreationSubscriptionInput): SubscriptionUnion! @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") """Buy a subscription by create it into payment system.""" buySubscriptionV3(params: CreationSubscriptionInputV3): SubscriptionUnion! @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") """Cancel current subscription from payment system.""" cancelCurrentSubscriptionV2: CancelCurrentSubscriptionUnion! @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") stopPendingSubscriptionDowngrade: Boolean! @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") stopPendingSubscriptionCancellation: Boolean! @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") """Refund tokens for an account""" refundTokens(params: TokensRefundInput): WalletRefundUnion! @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") """ Create a new streaming subscription. Only for users with the CAN_EDIT_STREAMING_SUBSCRIPTION platform capability. """ createStreamingSubscriptionAdmin(params: CreateStreamingSubscriptionInput): CreateStreamingSubscriptionUnion! """ Update an existing streaming subscription Only for users with the CAN_EDIT_STREAMING_SUBSCRIPTION platform capability. """ updateStreamingSubscriptionAdmin(params: UpdateStreamingSubscriptionInput): UpdateStreamingSubscriptionUnion! """ Delete a streaming subscription Only for users with the CAN_EDIT_STREAMING_SUBSCRIPTION platform capability. """ deleteStreamingSubscriptionAdmin(params: DeleteStreamingSubscriptionInput): DeleteStreamingSubscriptionUnion! """Only for users with the CAN_EDIT_BASELAYER platform capability.""" createLtsBaselayer(props: LTSInput): BaselayerOutput! """Only for users with the CAN_EDIT_BASELAYER platform capability.""" createOgc3dBaselayer(props: OGC3DInput): BaselayerOutput! """Only for users with the CAN_EDIT_BASELAYER platform capability.""" createHspcBaselayer(props: HSPCInput): BaselayerOutput! """Only for users with the CAN_EDIT_BASELAYER platform capability.""" createPanoramicBaselayer(props: PanoramicInput): BaselayerOutput! """Only for users with the CAN_EDIT_BASELAYER platform capability.""" createWfsBaselayer(props: WFSInput): BaselayerOutput! """Only for users with the CAN_EDIT_BASELAYER platform capability.""" createWmsBaselayer(props: WMSInput): BaselayerOutput! """Only for users with the CAN_EDIT_BASELAYER platform capability.""" createWmtsBaselayer(props: WMTSInput): BaselayerOutput! """Only for users with the CAN_EDIT_BASELAYER platform capability.""" createUrlBaselayer(props: UrlInput): BaselayerOutput! """Create a new Scene inside a project.""" createScene(params: CreateSceneInput!): CreateSceneUnion! """ Triggers the generation of a GENERIC scene from the input source folder. The recursive layout of the folder will be reflected into the hierarchical structure of the scene, including the relevant grouped assets stored in all subfolders. This mutation returns quickly to the client, and the status of the generation is exposed in SceneOutput.sceneGenerationStatus """ createSceneFromFolder(params: CreateSceneFromFolderInput!): CreateSceneUnion! """ Update an existing Scene. A Scene can not be moved to a different project. """ updateScene(params: UpdateSceneInput!): UpdateSceneUnion! """Delete an existing Scene and all of the nodes belonging to this scene.""" deleteScene(params: DeleteSceneInput!): DeleteSceneUnion! """Create a new leaf node inside a scene.""" createSceneLeafNode(params: CreateSceneLeafNodeInput!): CreateSceneLeafNodeUnion! """ Update an existing leaf node in a scene. A scene node can not be moved to a different scene. """ updateSceneLeafNode(params: UpdateSceneLeafNodeInput!): UpdateSceneLeafNodeUnion! """Create a new group node inside a scene.""" createSceneGroupNode(params: CreateSceneGroupNodeInput!): CreateSceneGroupNodeUnion! """ Update an existing Group node in a scene. A scene node can not be moved to a different scene. """ updateSceneGroupNode(params: UpdateSceneGroupNodeInput!): UpdateSceneGroupNodeUnion! """ Move an existing scene node in a scene under a different parent. Also re-calculate and set its relative transformation according to the new parent's absolute transformation. Root nodes can not be moved. A scene node can not be moved to a different scene. """ moveSceneNode(params: MoveSceneNodeInput!): MoveSceneNodeUnion! """Delete an existing scene node and all of the subnodes. Root scene nodes can not be deleted.""" deleteSceneNode(sceneNodeId: ID!): DeleteSceneNodeUnion! """Remove an existing scene node effect.""" removeSceneNodeEffects(sceneNodeId: ID!): RemoveSceneNodeEffectsUnion! """Create a lock on a scene.""" createSceneLock(params: CreateSceneLockInput!): CreateSceneLockUnion! """Release an existing lock on a scene.""" releaseSceneLock(sceneLockId: ID!): ReleaseSceneLockUnion! """Add nodes to an existing lock.""" addToSceneLock(params: AddToSceneLockInput!): AddToSceneLockUnion! """ Start a scene transaction. A transaction creates a temporary lock that allows making multiple changes as a group. Use endSceneTransaction to either commit or abort all changes made during the transaction. The user owning the transaction can edit the non-default nodes which will become default when committing the transaction or be removed when aborting it. """ startSceneTransaction(params: StartSceneTransactionInput!): StartSceneTransactionUnion! """ End a scene transaction. The EndSceneTransactionInput controls whether to save or abort the changes made in the transaction prior to ending it. """ endSceneTransaction(params: EndSceneTransactionInput!): EndSceneTransactionUnion! """ Creates a folder on the specified parent folder (either project root folder or any other folder), provided that the user has the capability to edit this project. Returns the newly created folder if the operation was successful, null otherwise. """ createFolderV2(params: CreateFolderInput!): CreateFolderUnion! """ Updates a specified folder, provided that the user has the capability to edit this project. Returns the newly updated folder if the operation was successful, null otherwise. """ updateFolderV2(params: UpdateFolderInput!): UpdateFolderUnion! """ Deletes a folder from a project, provided that the user has the capability to edit this project. This deletion will propagate a deletion to all nested subfolders and all assets contained in them. Returns true if the operation was successful. """ deleteFolderV2(folderId: ID!, projectId: ID!): DeleteFolderUnion! """ Generates a download link for the multiple folders uuids received as input The result will be a zip package """ generateMultiFolderDownloadLink(input: MultiFolderDownloadLinkInput!): GenerateMultiFolderDownloadLinkUnion! """ Endpoint to persist an Asset. Is mostly used for testing purposes. The user must have the CAN_PERSIST_ASSET platform capability to perform this operation. """ persistAssetV2(params: PersistAssetInput!): PersistAssetUnion! """ Creates an asset in the specified folder. The folderId is mandatory, no fallback is provided. """ createAssetV3(params: CreateAssetInputV3!): CreateAssetUnion! """ Updates the specified asset, provided it exists and the user has the capability. The assetType field in the input is ignored as the asset type should never change. Returns the updated asset if the operation was successful. """ updateAssetV2(params: UpdateAssetInput!): UpdateAssetUnion! """ Deletes the asset from the folder, provided it exists and the user has the capability. If the asset was copied to any other folders or projects, it will not be affected by this deletion. If it is the last instance of the asset, it will be deleted entirely. Returns true if the operation was successful. """ deleteAssetV2(groupedAssetId: ID!): DeleteAssetUnion! """ Copies the specified asset to a folder, provided both exist and the user has the capability to modify both folders. The copied asset has a new ID. The source and target folders must be in the same account, unless the user performing the action has platform capability CAN_MOVE_COPY_ASSET. Returns true if the operation was successful. """ copyAssetToFolderV2(params: CopyAssetInput!): CopyAssetToFolderUnion! """ Copies the list of grouped assets to a folder, provided they exist and the user has the capability to modify both source and target folders. The copied GA will have a new ID. The source and target folders must be in the same account, unless the user performing the action has platform capability CAN_MOVE_COPY_ASSET. """ copyMultiGroupedAssetsToFolder(params: MultiGroupedAssetCopyInput!): MultiGroupedAssetCopyUnion! """ Moves the specified GA to a folder, provided both exist and the user has the capability to modify both folders. The moved asset retains the same ID as before. The source and target folders must be in the same account, unless the user performing the action has platform capability CAN_MOVE_COPY_ASSET. Returns true if the operation was successful. """ moveAssetToFolderV2(params: MoveAssetInput!): MoveAssetToFolderUnion! """ Moves the specified grouped assets to a folder, provided both exist and the user has the capability to modify both folders. The moved GAs retains the same ID as before. The source and target folders must be in the same account, unless the user performing the action has platform capability CAN_MOVE_COPY_ASSET. """ moveMultiGroupedAssetsToFolder(params: MultiGroupedAssetMoveInput!): MultiGroupedAssetMoveUnion! """ Creates a thumbnail on the asset, provided it exists and the user has access to it. Returns the asset thumbnail if the operation was successful. """ createAssetThumbnailV2(groupedAssetId: ID!): CreateAssetThumbnailUnion! """ Removes an asset thumbnail if one exists, provided the user has access to it. Returns true if the operation was successful. """ deleteAssetThumbnail(groupedAssetId: ID!): DeleteAssetThumbnailUnion! """ Given a list of asset uuids, this method returns the new asset created in the folder specified by the user, with the name specified by the user; The result will contain the point-cloud generated by auto-registering the assets given as an input """ autoRegisterAssetsV2(input: AutoRegistrationInputV2!, newAsset: CreateAssetInput!): AutoRegisterAssetsUnion! """ Given a file and its groupedAssetId it belongs to, this method will generate the metadata for it, the remote path on the remote bucket, add it to the connected Asset and return the file information with its remote path and expiration date. """ addFileV2(params: AddFileInput!): AddFileUnion! """ This method allows the front end to flag all the multiparts of the given file to be flagged as confirmed. The method will return a boolean to flag if the operation was carried out successfully. """ completeMultipartUpload(params: MultipartUploadCompleteInput!): ExecutedOutput """ Given the groupedAssetId, this method marks the asset as complete. It returns a boolean indicating if all the files are in complete status """ completeAssetFileList(groupedAssetId: ID!): ExecutedOutput """ Generates a download link for the multiple grouped asset uuids received as input The result will be a zip package """ generateMultiAssetDownloadLinkV2(input: MultiAssetDownloadLinkInput!): GenerateMultiAssetDownloadLinkUnion! """ **DEPRECATED in favour of mutation upgradeAssetV2** Create a new version for an existing grouped asset. """ upgradeAsset(groupedAssetId: ID!): UpgradeAssetUnion! @deprecated(reason: "No longer supported, in favour of mutation upgradeAssetV2, termination planned for 2028-03-31") """Create a new version for an existing grouped asset.""" upgradeAssetV2(params: UpgradeAssetInput!): UpgradeAssetUnionV2! """Mark a specific version of an asset as complete.""" completeAsset(params: CompleteAssetInput!): CompleteAssetUnion! """Set the default version of the specified grouped asset.""" setAssetVersion(params: SetAssetVersionInput!): SetAssetVersionUnion! """Delete a non-default version of the specified grouped asset.""" deleteAssetVersion(params: DeleteAssetVersionInput!): DeleteAssetVersionUnion! """Reprocess an asset.""" reprocessAsset(params: ReprocessAssetInput!): ReprocessAssetUnion! createGroupedAssetGeoreference(georeference: CreateGroupedAssetGeoreferenceInput!): GroupedAssetGeoreferenceOutput! updateGroupedAssetGeoreference(georeference: UpdateGroupedAssetGeoreferenceInput!): GroupedAssetGeoreferenceOutput! deleteGroupedAssetGeoreference(id: ID!): Boolean! """ Creates a project for the user, returns the project if project creation was successful, null otherwise. """ createProjectV2(params: CreateProjectInput!): CreateProjectUnion! """Updates the specified project's metadata and returns the updated project.""" updateProjectV2(params: UpdateProjectInput!): UpdateProjectUnion! """ Deletes the specified project. This deletion will trigger a deletion of all nested folders and any assets they may contain. Returns true if the project was successfully deleted. """ deleteProjectV2(projectId: ID!): DeleteProjectUnion! """ Removes the specified project's thumbnail, if it exists. Returns true if the operation was successful. """ deleteProjectThumbnail(projectId: ID!): DeleteProjectThumbnailUnion! """ Uploads a thumbnail to the specified project if it exists. Returns the project thumbnail if the operation was successful, null otherwise. """ uploadThumbnailToProjectV2(params: ProjectThumbnailInput!): UploadThumbnailToProjectUnion! """Updates the specified project's metadata and returns the updated project.""" updateDemoProjectStatus(params: UpdateDemoProjectInput!): UpdateDemoProjectStatusUnion! """ Replay messages that got sent to the dead letter queue with a filter. Messages that were already replayed or resolved that match the filter will not be replayed. Requires the CAN_EDIT_DLQ_MESSAGE platform capability. """ replayDlqMessages(params: ReplayDlqMessagesInput!): ReplayDlqMessagesUnion! """ Resolve messages that got sent to the dead letter queue with a filter without replaying them. Messages that were already resolved that match the filter will not be updated. If the replay mutation is called with a filter matching message that is already resolved, it will not be replayed. Requires the CAN_EDIT_DLQ_MESSAGE platform capability. """ resolveDlqMessages(params: ResolveDlqMessagesInput!): ResolveDlqMessagesUnion! createGroupedAssetTour(params: CreateGroupedAssetTourInput!): GroupedAssetTourOutput! updateGroupedAssetTour(params: UpdateGroupedAssetTourInput!): GroupedAssetTourOutput! deleteGroupedAssetTour(params: DeleteGroupedAssetTourInput!): Boolean! createGroupedAssetTourKeyframe(params: CreateGroupedAssetTourKeyframeInput!): GroupedAssetTourKeyframeOutput! updateGroupedAssetTourKeyframe(params: UpdateGroupedAssetTourKeyframeInput!): GroupedAssetTourKeyframeOutput! recalculateGroupedAssetTourKeyframes(params: RecalculateGroupedAssetTourKeyframesInput!): GroupedAssetTourOutput! deleteGroupedAssetTourKeyframe(params: DeleteGroupedAssetTourKeyframeInput!): Boolean! createGroupedAssetTourThumbnail(params: CreateGroupedAssetTourThumbnailInput!): TourThumbnailOutput! deleteGroupedAssetTourThumbnail(params: DeleteGroupedAssetTourThumbnailInput!): Boolean! """Sets a ViewPoint for the given entity (creates, or updates, or deletes the ViewPoint)""" setViewpoint(params: SetViewpointInput!): SetViewpointUnion! _noop: Boolean """Adds labels to the referred entity""" addLabels(input: AddLabelsInput!): AddLabelsUnion! """Removes labels from the referred entity""" removeLabels(input: RemoveLabelsInput!): RemoveLabelsUnion! } """Requested resource could not be found.""" type NotFoundError implements Error { message: String! } type Ogc3dTilesInfoOutput { qualityFactor: Float! } type OrderGQL { id: ID status: OrderStatusGQL! createdAt: DateTime modifiedAt: DateTime cartId: ID! orderId: String! userId: ID! tax: BigDecimal! amount: BigDecimal! discountedAmount: BigDecimal! total: BigDecimal! currency: String! orderItems: [OrderItemGQL!]! } type OrderItemGQL { id: ID status: OrderItemStatusGQL! supplierOrderId: String accountUUID: ID userUUID: ID """DEPRECATED field folderUUID, termination planed for 2026-08-31**""" folderUUID: ID """DEPRECATED field projectUUID, termination planed for 2026-08-31**""" projectUUID: ID assetUUID: ID artifactUUID: ID groupedAssetUUID: ID artifactFilePath: String thumbnailFilePath: String createdAt: DateTime modifiedAt: DateTime cartId: ID! cartItemId: ID! userId: ID! amount: BigDecimal! discountedAmount: BigDecimal! currency: String! coordinateSystem: String! verticalCoordinateSystem: String imageFormat: String! productIdentifier: String! dataType: DataTypeEnum! polygonDefType: PolygonType! bbox: [Float!] polygonPath: String resolutionUnit: String! resolutionValue: Float! } """ Cursor based pagination metadata @see https://dev.to/mandiwise/graphql-pagination-primer-offset-vs-cursor-vs-relay-style-pagination-1a60 """ type PageInfo { endCursor: String hasNextPage: Boolean! hasPreviousPage: Boolean! startCursor: String } type PatchArtifactOutput { url: String! } type PaymentCardAddressOutput { street: String state: String country: String city: String zip: String } type PaymentCardOutput { id: String! stripeCustomer: String! fullName: String! address: PaymentCardAddressOutput lastDigits: String! expirationMonth: Int! expirationYear: Int! brand: String! active: Boolean! } type PaymentSystemOutput { paymentSystem: PaymentSystemEnum! paymentSystemId: String! } type PipelineDockerDefinitionOutput { dockerImageDefinitions: [DockerDefinitionOutput!]! } type PipelineErrorStatisticsOutput { dockerImageName: String! dockerImageVersions: [PipelineErrorVersionOutput!] } type PipelineErrorVersionOutput { dockerImageVersion: String! dockerImageErrors: [PipelineImageErrorOutput!] } type PipelineImageErrorOutput { type: String! count: Int! exitCode: Int } """Result of a pipeline if it would be triggered.""" type PipelineResultTypeOutput { """Saved format of the created artifact.""" format: SavedFormat! """Data category of the created artifact.""" category: PipelineResultDataCategoryEnum! """ Whether the pipeline result is always available after the pipeline has finished, regardless of the input data, or only available if the input data meets certain criteria. """ availability: PipelineResultAvailabilityEnum! } type PipelineUsageOutput { pipelineCompleteCount: Int! pipelineCompleteDurationSeconds: Float! completeInputFileSizeInBytes: Float! completeOutputFileSizeInBytes: Float! singularPipelineUsages: [SingularPipelineUsageOutput!] } type PipelineUsageStatisticsOutput { savedFormat: SavedFormat! durationInSeconds: Float! inputFileSizeInBytes: Float! outputFileSizeInBytes: Float! ec2Instance: String } type Point3DOutput { x: Float! y: Float! z: Float! } type PolygonOutput { uploadUrl: String! path: String! } """ Output representing a message with details about an error, occurred during pipeline step execution """ type ProcessingDetailedErrorOutput { """ A unique identifier representing an error type containing only letters and underscore (e.g. PROCESSOR_NOT_STARTED_MISSING_CONF) """ type: String! """Generic description of the error""" message: String! """ List of more detailed descriptions of the actual error, with more concrete information (e.g. "Necessary config.json is missing") """ details: [String!]! """ List of troubleshooting steps (if possible) to potentially solve the current issue. Each list entry can provide a possible solution, to fix the error occurred during pipeline step execution. """ troubleshooting: [String!]! } """The processing can not be started the account is not synced or the address is not valid""" type ProcessingErrorAccountNotInSyncOrInvalidAddressErrorOutput implements BaseProcessingErrorInterface & BaseErrorInterface { message: String! } """The input for the pipeline is invalid.""" type ProcessingErrorInputValidationFailedOutput implements BaseProcessingErrorInterface & BaseErrorInterface { message: String! } """The processing can not be started because the processing payment failed because of invalid input""" type ProcessingErrorInvalidInputForProcessingPaymentErrorOutput implements BaseProcessingErrorInterface & BaseErrorInterface { message: String! } """Access to the requested action denied. You do not have the required rights or your authentication token is incorrect.""" type ProcessingErrorOperationNotAllowedOutput implements BaseProcessingErrorInterface & BaseErrorInterface { message: String! } type ProcessingErrorOutput { level: ProcessingErrorLevel type: ProcessingErrorType message: String } """The processing time limitation has been reached.""" type ProcessingErrorProcessingLimitReachedOutput implements BaseProcessingErrorInterface & BaseErrorInterface { message: String! } """Access to a requested resource denied.""" type ProcessingErrorResourceAccessDeniedOutput implements BaseProcessingErrorInterface & BaseErrorInterface { message: String! } """The processing can not be started because ome of the resources needed for the processing was not found""" type ProcessingErrorResourceNotFoundOutput implements BaseProcessingErrorInterface & BaseErrorInterface { message: String! } """The processing can not be started because the storage limit has been reached.""" type ProcessingErrorStorageLimitReachedOutput implements BaseProcessingErrorInterface & BaseErrorInterface { message: String! } """The ProcessingInBytesUsage Output""" type ProcessingInBytesUsageOutput { """The start of the period for which usage was calculated""" startDate: DateTime! """The start of the period for which usage was calculated""" endDate: DateTime! """Processing usage in bytes""" processingInBytes: BigInteger! } type ProcessingPipelineFailedInfoOutput { """The ID of the processing pipeline that failed.""" processingPipelineId: ID! """Display name of the processing pipeline.""" name: String! """Detailed errors that caused the pipeline to fail.""" errorsV2: [ProcessingDetailedErrorOutput!]! """The inputs that were fed to the pipeline.""" inputs: [ProcessingStepInputOutput!]! """Internal, allows dr-processing-orchestrator to fill in the rest.""" artifactId: ID! } type ProcessingPipelineInfoOutput { id: ID! status: ProcessingStatus name: String errors: [ProcessingErrorOutput!]! @deprecated(reason: "Use errorsV2 instead. Termination planned for 2026-07-01.") errorsV2: [ProcessingDetailedErrorOutput!]! inputs: [ProcessingStepInputOutput!]! } type ProcessingPipelineInfoOutputV2 { processingPipelineId: ID! name: String! } """Information about a pipeline that is currently processing an artifact.""" type ProcessingPipelineRunningInfoOutput { """The ID of the processing pipeline.""" processingPipelineId: ID! """Display name of the processing pipeline.""" name: String! """The inputs that were fed to the pipeline.""" inputs: [ProcessingStepInputOutput!]! } """ The return object is a `ProcessingPipelineTriggerOutput` and contains a single status field: 1) status: PipelineStatus - The status of the pipeline, i.e. CREATED/FAILED/SKIPPED/etc. 2) errorMessage: String - An error message in case the pipeline was not triggered Successfully triggered pipeline will have the following status: "CREATED" """ type ProcessingPipelineTriggerOutput { status: PipelineStatus! errorMessage: String } type ProcessingStepInputOutput { type: InputType! path: String! size: BigInteger! } type ProcessingTokenQuotationOutput { total: Int! } """The remote quotation service doesn't work.""" type ProcessingTokenQuotationRemoteServiceErrorOutput implements BaseProcessingTokenQuotationErrorInterface & BaseErrorInterface { message: String! } type ProcessingTypeOutput { outputFormat: OutputFormat! processingPipelineName: ProcessingPipelineName! } """The ProcessingUsage Output""" type ProcessingUsageOutput { """The start of the period for which usage was calculated""" startDate: DateTime! """The end of the period for which usage was calculated""" endDate: DateTime! """Pipeline Name""" name: String! """Duration in Seconds.""" duration: Int! @deprecated(reason: "No longer supported, in favour of durationV2 , termination planned for 2026-10-31") """Duration in Seconds.""" durationV2: BigInteger! } type ProfilePictureOutput { uploadUrl: String! path: String! } type ProjectAppliedPageOutput { pageNumber: Int! pageSize: Int! } type ProjectCapabilitiesOutput { """New enum members may be added without notice. Please implement the client in a way that can deal with this.""" projectCapabilities: [ProjectCapabilityEnum!]! } type ProjectChangeFolderCopyOperation implements Node & ProjectChangeCopyOperation & ProjectChangeFolderOperation { id: ID! sourceFolderId: ID! targetFolderId: ID! folderId: ID! folder: FolderUnion! sourceFolder: FolderUnion! targetFolder: FolderUnion! } type ProjectChangeFolderCreateOperation implements Node & ProjectChangeCreateOperation & ProjectChangeFolderOperation { id: ID! folderId: ID! folder: FolderUnion! } type ProjectChangeFolderDeleteOperation implements Node & ProjectChangeDeleteOperation & ProjectChangeFolderOperation { id: ID! folderId: ID! } type ProjectChangeFolderMoveOperation implements Node & ProjectChangeMoveOperation & ProjectChangeFolderOperation { id: ID! sourceFolderId: ID! targetFolderId: ID! folderId: ID! folder: FolderUnion! sourceFolder: FolderUnion! targetFolder: FolderUnion! } type ProjectChangeFolderUpdateOperation implements Node & ProjectChangeUpdateOperation & ProjectChangeFolderOperation { id: ID! folderId: ID! """ JSON Paths to the updated fields relative to the folder Example: '/name' """ paths: [String!]! folder: FolderUnion! } type ProjectChangeGroupedAssetCopyOperation implements Node & ProjectChangeCopyOperation & ProjectChangeGroupedAssetOperation { id: ID! sourceFolderId: ID! targetFolderId: ID! groupedAssetId: ID! asset: AssetUnion! sourceFolder: FolderUnion! targetFolder: FolderUnion! } type ProjectChangeGroupedAssetCreateOperation implements Node & ProjectChangeCreateOperation & ProjectChangeGroupedAssetOperation { id: ID! groupedAssetId: ID! asset: AssetUnion! } type ProjectChangeGroupedAssetDeleteOperation implements Node & ProjectChangeDeleteOperation & ProjectChangeGroupedAssetOperation { id: ID! groupedAssetId: ID! } type ProjectChangeGroupedAssetMoveOperation implements Node & ProjectChangeMoveOperation & ProjectChangeGroupedAssetOperation { id: ID! sourceFolderId: ID! targetFolderId: ID! groupedAssetId: ID! asset: AssetUnion! sourceFolder: FolderUnion! targetFolder: FolderUnion! } type ProjectChangeGroupedAssetUpdateOperation implements Node & ProjectChangeUpdateOperation & ProjectChangeGroupedAssetOperation { id: ID! groupedAssetId: ID! """ JSON Paths to the updated fields relative to the grouped asset Example: '/name' """ paths: [String!]! """Tells if the "binary content" of the grouped asset was changed.""" didBinaryContentChange: Boolean! asset: AssetUnion! } type ProjectChangeGroupedAssetVersionChangeOperation implements Node & ProjectChangeVersioningOperation & ProjectChangeGroupedAssetOperation { id: ID! groupedAssetId: ID! newVersion: Int! asset: AssetUnion! } type ProjectChangeGroupedAssetVersionDeleteOperation implements Node & ProjectChangeVersioningOperation & ProjectChangeGroupedAssetOperation { id: ID! groupedAssetId: ID! version: Int! asset: AssetUnion! } type ProjectChangeOutput implements Node & ProjectChangeProjectOperation { """ID of the node""" id: ID! """ Timestamp for when this message occured in RFC-3339 format @see https://the-guild.dev/graphql/scalars/docs/scalars/date-time """ notifiedAt: DateTime! """ID of the project that has been changed""" projectId: ID! """The (new) version of the file system. Can be omitted if the operation did not change the filesystem, like a renamed project.""" rootVersion: Int """One of the deifined operations that cn happen on the project""" operation: ProjectChangeOperation! project: ProjectUnion! } type ProjectChangeProjectUpdateOperation implements Node & ProjectChangeUpdateOperation & ProjectChangeProjectOperation { id: ID! projectId: ID! """ JSON Paths to the updated fields relative to the project Example: '/name' """ paths: [String!]! project: ProjectUnion! } type ProjectChangeUserAccessGrantedOperation implements Node & ProjectChangeUserAccessOperation { id: ID! userId: ID! } type ProjectChangeUserAccessRevokedOperation implements Node & ProjectChangeUserAccessOperation { id: ID! userId: ID! } """NO LONGER USED""" type ProjectErrorDuplicateNameOutput implements BaseProjectErrorInterface & BaseErrorInterface { message: String! } """ Invalid input. This is used when there is no more descriptive ProjectError that can be used to describe the invalid input. """ type ProjectErrorInvalidInputOutput implements BaseProjectErrorInterface & BaseErrorInterface { message: String! } """ The given name contains one or more blacklisted characters. Blacklisted characters are: <,>,:,|,?,*,",\ """ type ProjectErrorNameBlacklistedCharactersOutput implements BaseProjectErrorInterface & BaseErrorInterface { message: String! } """The given name is blank (empty, only spaces or null).""" type ProjectErrorNameBlankOutput implements BaseProjectErrorInterface & BaseErrorInterface { message: String! } """ The given name is a forbidden name with any capitalisation and any extension. Forbidden names are: "CON", "PRN", "AUX", "NUL", "COM1", "COM2", "COM3", "COM4", "COM5", "COM6", "COM7", "COM8", "COM9", "LPT1", "LPT2", "LPT3", "LPT4", "LPT5", "LPT6", "LPT7", "LPT8", "LPT9" """ type ProjectErrorNameForbiddenOutput implements BaseProjectErrorInterface & BaseErrorInterface { message: String! } """The given name contains a forward slash.""" type ProjectErrorNameForwardSlashOutput implements BaseProjectErrorInterface & BaseErrorInterface { message: String! } """The given name contains a leading or trailing space.""" type ProjectErrorNameLeadingOrTrailingSpaceOutput implements BaseProjectErrorInterface & BaseErrorInterface { message: String! } """The given name contains a trailing dot.""" type ProjectErrorNameTrailingDotOutput implements BaseProjectErrorInterface & BaseErrorInterface { message: String! } """The given name contains two dots in a row.""" type ProjectErrorNameTwoDotsInRowOutput implements BaseProjectErrorInterface & BaseErrorInterface { message: String! } """Access to the requested action denied. You do not have the required rights or your authentication token is incorrect.""" type ProjectErrorOperationNotAllowedOutput implements BaseProjectErrorInterface & BaseErrorInterface { message: String! } """Access to a requested resource denied for the target user.""" type ProjectErrorResourceAccessDeniedForTargetUserOutput implements BaseProjectErrorInterface & BaseErrorInterface { message: String! } """Access to a requested resource denied.""" type ProjectErrorResourceAccessDeniedOutput implements BaseProjectErrorInterface & BaseErrorInterface { message: String! } """ The system is receiving too many requests. Try again later. This error will no longer occur but preserved for backward-compatibility. """ type ProjectErrorTooManyRequestsOutput implements BaseProjectErrorInterface & BaseErrorInterface { message: String! } type ProjectMemberOutput { id: ID! userDetails: SimpleUserProfileOutput! invitedBy: SimpleUserProfileOutput invitedOn: DateTime projectRole: ProjectRoleEnum! projectAccountRole: AccountRoleEnum! } type ProjectMembersResultOutput { orderBy: ProjectMemberOrderEnum! contents: [ProjectMemberOutput!]! } type ProjectOutput { id: ID! projectMembers(orderBy: ProjectMemberOrderEnum): ProjectMembersResultOutput! rootFolder: FolderOutput! totalAssets: Int! totalUploadingAssets: Int! """Only includes size of uploaded files in bytes, does not include storage used by artifacts in the project.""" projectSize: BigInteger! name: String! description: String createdAt: DateTime! modifiedAt: DateTime! createdBy: SimpleUserProfileOutput modifiedBy: SimpleUserProfileOutput thumbnailPath: String thumbnailFullImagePath: String ownedBy: SimpleUserProfileOutput! deletable: Boolean! isDemoProject: Boolean! latitude: Float longitude: Float defaultStorageRegion: String! labels: LabelsOutput! } type ProjectResultOutput { pageNumber: Int! pageSize: Int! appliedPagination: ProjectAppliedPageOutput! appliedFilters: FilterProjectAppliedOutput! orderBy: ProjectOrderEnum! total: Int! contents: [ProjectOutput!]! } type ProjectThumbnailOutput { uploadUrl: String! path: String! } type ProjectsAppliedFilterOutput { byProjectName: String byOwnedBy: ID byCreatedAt: DateTime } type ProjectsAppliedPaginationOutput { pageNumber: Int! pageSize: Int! } """Access to the requested action denied. You do not have the required rights or your authentication token is incorrect.""" type ProjectsErrorOperationNotAllowedOutput implements BaseProjectsErrorInterface & BaseErrorInterface { message: String! } type ProjectsResultOutput { appliedPagination: ProjectsAppliedPaginationOutput! appliedFilter: ProjectsAppliedFilterOutput! appliedOrderBy: ProjectsOrderEnum! total: Int! contents: [ProjectOutput!]! } type PropertySpatial { """ Each bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth): * Lower left corner, coordinate axis 1 * Lower left corner, coordinate axis 2 * Minimum value, coordinate axis 3 (optional) * Upper right corner, coordinate axis 1 * Upper right corner, coordinate axis 2 * Maximum value, coordinate axis 3 (optional) The coordinate reference system of the values is WGS 84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84) unless a different coordinate reference system is specified in 'crs'. For WGS 84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge). If the vertical axis is included, the third and the sixth number are the bottom and the top of the 3-dimensional bounding box. If a feature has multiple spatial geometry properties, it is the decision of the server whether only a single spatial geometry property is used to determine the extent or all relevant geometries. """ bbox: [[Float!]!]! """ Coordinate reference system of the coordinates in the spatial extent (property 'bbox'). The default reference system is WGS 84 longitude/latitude. In the Core this is the only supported coordinate reference system. Extensions may support additional coordinate reference systems and add additional enum values. """ crs: String } type PropertyTemporal { """ One or more time intervals that describe the temporal extent of the dataset. The value 'null' is supported and indicates an open time intervall. In the Core only a single time interval is supported. Extensions may support multiple intervals. If multiple intervals are provided, the union of the intervals describes the temporal extent. The timestamps are in the coordinate reference system specified in 'trs'. By default this is the Gregorian calendar. """ interval: [[DateTime!]!]! """ Coordinate reference system of the coordinates in the temporal extent (property 'interval'). The default reference system is the Gregorian calendar. In the Core this is the only supported temporal reference system. Extensions may support additional temporal reference systems and add additional enum values. """ trs: String! } type Provider { """The name of the organization or the individual.""" name: String! """ Multi-line description to add further provider information such as processing details for processors and producers, hosting details for hosts or basic contact information. CommonMark 0.29 syntax MAY be used for rich text representation. """ description: String """Homepage on which the provider describes the dataset and publishes contact information.""" url: String """ Roles of the provider. The provider's role(s) can be one or more of the following elements: * licensor: The organization that is licensing the dataset under the license specified in the collection's license field. * producer: The producer of the data is the provider that initially captured and processed the source data, e.g. ESA for Sentinel-2 data. * processor: A processor is any provider who processed data to a derived product. * host: The host is the actual provider offering the data on their storage. There should be no more than one host, specified as last element of the list.. """ roles: [ProviderRole!] } type QuaternionOutput { u: Float! v: Float! w: Float! scalar: Float! } type Query { """ Gets all the processing pipelines that HXDR can trigger for the current groupedAssetId The already generated artifacts (e.g HSPC) will be used for deciding the available processing pipelines """ availableProcessingPipelines(groupedAssetId: ID!): [ProcessingTypeOutput!]! @deprecated(reason: "Use availableProcessingPipelines field on AssetOutput. Termination planned for 2028-03-31.") """Gets the number of tokens that is going to be consumed if we trigger a pipeline (AutoRegistration or meshing a PC)""" processingTokensQuotation(input: ProcessingTokenQuotationInput!): ProcessingTokenQuotationUnion! @deprecated(reason: "Pipelines no longer consume tokens. Termination planned for 2027-03-31.") """Retrieve the docker image names and versions being used inside of the pipeline""" getPipelineDockerImageDefinitions(pipeline: ImplementedProcessingPipelines!): PipelineDockerDefinitionOutput! _entities(representations: [_Any!]!): [_Entity]! """ Retrieve the usage of specific pipelines. If no start/end date is supplied, the endpoint logic defaults to the start of the current month until the time the request has been received. The allowed date range between startDate and endDate cannot exceed 3 months. If a larger range is requested, an error will be returned. Requires the CAN_VIEW_TENANT_PIPELINE_USAGE tenant capability or the CAN_VIEW_PIPELINE_USAGE platform capability. """ pipelineUsage(filter: PipelineUsageFilterInput!): PipelineUsageOutput! """ Retrieve all the artifacts contained in an asset, this method is out of federation mostly used for testing purposes it is suggested to use getAsset() Only for users with the CAN_ACCESS_ALL_ENTITIES platform capability """ getArtifactsInAsset(assetId: ID!): ArtifactResultOutput @deprecated(reason: "No longer supported, in favour of `artifactsV3` on `AssetOutput`, termination planned for 2027-09-30") """ Generates a download link for multiple grouped artifacts The result will be a url to download the zip package """ multiArtifactDownloadLink(params: MultiArtifactDownloadLinkInput!): MultiArtifactDownloadLinkUnion! """Get all annotation-categories defined for the project""" annotationCategories(projectId: ID!): AnnotationCategoriesUnion """ Returns the details of the acount the logged in user belongs to. This query can be called only with a bearer token. """ getAccount: AccountInfoOutput """ **DEPRECATED in favour of query validateAddressV2** Validate an address This query can be called anonymously. """ validateAddress(params: AccountAddressInput): AddressValidOutput! """ Validate an address This query can be called anonymously. """ validateAddressV2(params: AccountAddressValidationInput): AddressValidOutput! """ Retrieve all the countries that an address can have. This query can be called anonymously. """ allCountries: [CountryOutput!]! """ Retrieve all the accounts within a tenant. This query can be called only with a bearer token. Requires the CAN_VIEW_ACCOUNTS platform capability to request accounts in any tenant, or the CAN_SEARCH_ACCOUNTS tenant capability to request accounts within the user's own tenant. """ getAccounts(paging: AccountProfilePageInput, filter: FilterAccountProfileInput, orderBy: AccountProfileOrderEnum): AccountProfileResultOutput! """ Retrieve all the assignable referrers. This query can be called only with a bearer token. """ getReferrers: [ReferrerOutput!]! """ Retrieve the active payment card for an account. This query can be called only with a bearer token. """ getActivePaymentCard: PaymentCardOutput """ Retrieve all the payment cards for an account. This query can be called only with a bearer token. """ getAllPaymentCards: [PaymentCardOutput!]! """Return the Stripe public key.""" getStripePublicKey: String! """Returns the profile details of the currently logged in user.""" getUser: UserProfileOutput! """Returns if last upload consent is still valid or needed to be renewed.""" isLastUploadConsentValid: Boolean """ If user is tenant admin and tenantRole filter is set, it will only returns the users that have the specified tenant role. For viewing users in any tenant other than the acting owners own tenant, the platform capability CAN_VIEW_USER is required. For viewing users in the same tenant, either the platform capability CAN_VIEW_USER or the tenant capability CAN_LIST_USERS_IN_TENANT is required. If the tenant id is specified, but the acting user does not have the required permission to view users in that tenant, however the user does have the permission to view users in their own tenant, then the query will return users in the acting user's own tenant instead of the specified one, and this will be reflected in the applied filter in the output. """ getUsers(paging: UserProfilePageInput, filter: FilterUserProfileInput, orderBy: UserProfileOrderEnum): UserProfileResultOutput getOrderItemsForAsset(assetId: ID!, userId: ID!): [OrderItemGQL!]! """Obtain a quotation over a selection""" quotation(selection: SelectionInput!): QuotationUnion """ Retrieve a Cart for the current logged in user, if the cart is expired, the old one is deleted and a new one is provided The Life time of a Cart is 6 hours """ getCart: CartOutput getAllOrders: [OrderGQL!]! getOrder(cartId: ID!): OrderGQL getLastOrder: OrderGQL viewCart(cartId: ID!): CartOutput """This method retrieves all the countries supported by HxDR""" supportedCountries: [SupportedCountryOutput]! getPaymentMethods: [PaymentMethodShopEnum]! """This validates whether the current country assigned to this account (extracted from cache) is supported from HxDR shop perspective""" isAddressSupportedByShop: ShopSupportedCountryValidationOutput! """The STAC feature collections in the dataset.""" collections: [Collection!]! """The STAC feature collection by id. Null if no collection with the given id exists.""" collection(id: String!): Collection """Retrieve STAC items matching filters. Intended as the standard, full-featured query API.""" search(bbox: [Float!], dateTime: String, collections: [String!], ids: [String!], limit: Int = 10, offset: Int, intersection: GeoJSONShapeInput): ItemCollection! """The STAC item by id within a collection. Null if no item with the given id exists in the given collection.""" item(itemId: String!, collectionId: String!): FeatureItem! """Returns an overview over the account to which the currently logged in user belongs to.""" accountInformation: AccountDetailUnion! """Returns an overview over the account members.""" accountMembers(orderBy: AccountMembersOrderEnum): AccountMembersResultUnion! @deprecated(reason: "Termination planned for 2028-09-30 in favor of accountMembersV2.") """ V2 of accountMembers. Returns the caller's account members — filterable by name/email, orderable, and paginated. """ accountMembersV2(params: AccountMembersV2Input): AccountMembersV2Union! """Returns an overview of the external account members.""" externalAccountMembers: ExternalAccountMembersResultUnion! """ Returns an overview of account members of given account. Only for users with the CAN_ACCESS_ALL_ENTITIES platform capability. """ accountMembersOfAccount(params: AccountMembersOfAccountInput!): AccountMembersResultUnion! """ Returns an overview of external account members of given account. Only for users with the CAN_ACCESS_ALL_ENTITIES platform capability. """ externalAccountMembersOfAccount(accountId: ID!): ExternalAccountMembersResultUnion! """Returns the roles of all users in the project with given id""" rolesOfProjectUsers(projectUUID: ID!): UserProjectRoleUnion! """Returns all project/role pair that user UUID has access to""" userAccessibleProjects(userUUID: ID!): UserAccessibleProjectUnion! """ Returns the tenant for the given id. Only for tenant admins and users with the CAN_VIEW_TENANT platform capability. """ tenant(tenantId: ID): TenantUnion! """ Returns all tenants in the system. Only for users with the CAN_VIEW_TENANT platform capability. """ tenants: TenantsUnion! """ Load a specific user cache into the system, of the logged in user. Only for users with the CAN_ACCESS_ALL_ENTITIES platform capability. """ loadUserCacheAsMine(params: UserInput): Boolean! @deprecated(reason: "Support users automatically get access on demand. To list all projects a users has access to, the admin panel should expose `projectsOfUser` instead. It's recommended to also expose `projectsOfAccount` and `projectsOfTenant`. This query will be terminated once the usage in the admin panel is removed or at the latest 2027-03-31.") """ Loads a specific entity (e.g. user, project etc) cache into the system, for a caller. Only for users with the CAN_ACCESS_ALL_ENTITIES platform capability. """ provideTemporaryAccessToEntities(params: EntityInput!): EntityAccessUnion! @deprecated(reason: "Support users automatically get access on demand. There is no need to use this anymore. Termination planned for 2026-09-30.") """Returns shared grouped asset id and authentication""" sharedGroupedAsset(sharingCodeId: ID!): SharedGroupedAssetUnion! """ Returns a list of the account capabilities for the authenticated user. An account capability is an action relating to the account that the user is allowed to do. Please implement handling of the AccountCapabilityEnum in a way that allows adding new members without breaking implementation. """ accountCapabilities: AccountCapabilitiesUnion! """ Returns a list of the tenant capabilities for the authenticated user. A tenant capability is an action relating to the tenant that the user is allowed to do. Please implement handling of the TenantCapabilityEnum in a way that allows adding new members without breaking implementation. """ tenantCapabilities: TenantCapabilitiesUnion! """ Returns a list of the project capabilities for the authenticated user for the given project. A project capability is an action relating to the project (or folder or grouped asset in a project) that the user is allowed to do. Please implement handling of the ProjectCapabilityEnum in a way that allows adding new members without breaking implementation. """ projectCapabilities(projectId: ID!): ProjectCapabilitiesUnion! """Load all available subscription tiers""" getSubscriptionTiersV2: SubscriptionTiersUnion! @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") """Load quotation for a specific subscription tier""" getSubscriptionQuotationV2(params: SubscriptionQuotationInput): SubscriptionQuotationUnion! @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") """Load current active subscription for an account.""" getCurrentSubscriptionV2: SubscriptionUnion! """Load all subscriptions for an account.""" getAllSubscriptionsV2: SubscriptionsUnion! @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") """Load all invoice for an account (SHOULD BE REMOVED ONCE FE)""" getAllSubscriptionOrdersV2: SubscriptionOrdersUnion! @deprecated(reason: "Was never used or implemented, termination planned for 2026-09-30") """Load all invoices for a given payment system account related to its subscriptions""" getAllSubscriptionInvoicesV2: SubscriptionInvoicesUnion! @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") """ Retrieve the streaming subscription of the given account (ADMIN only) or of the account of the logged-in user. """ streamingSubscriptions(accountUUID: ID): StreamingSubscriptionsUnion! """ Retrieve usage of an account. If requesting usage from another account in the same tenant, the acting user must have the CAN_VIEW_TENANT_USAGE tenant capability or the CAN_VIEW_USAGE platform capability. If requesting usage from another account in a different tenant, the acting user must have the CAN_VIEW_USAGE platform capability. """ getAccountUsageV3(params: AccountUsageInput!): AccountUsageUnion! """ Retrieve tenant usage of an account. If requesting usage from another account in the same tenant, the acting user must have the CAN_VIEW_TENANT_USAGE tenant capability or the CAN_VIEW_USAGE platform capability. If requesting usage from another account in a different tenant, the acting user must have the CAN_VIEW_USAGE platform capability. """ tenantUsageV2(params: UsageTenantInput!): UsageTenantUnion! tokenWallet: WalletUnion! @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") tokensTransactions(params: TokensTransactionsPageInput): TokensTransactionsUnion! @deprecated(reason: "Stripe subscriptions are no longer supported, termination planned for 2026-09-30") getAllBaselayers(paging: BaselayerPageInput, filter: AddressViewingModeEnum): BaselayerResultOutput! notUsed: String """Get all scenes in a project.""" scenes(params: ScenesInput!): ScenesUnion! """Get a specific scene.""" scene(params: SceneInput!): SceneUnion! """Get a specific scene node by ID.""" sceneNode(params: SceneNodeInput!): SceneNodeQueryUnion! """Gets all scene nodes for giving ids. Max number of ids is 1000.""" sceneNodes(params: SceneNodesInput!): SceneNodesQueryUnion! """Gets all locks in a scene with a given id.""" sceneLocks(sceneId: ID!): SceneLocksUnion! """Retrieve list of scene nodes that reference a specific grouped asset.""" groupedAssetReferences(params: GroupedAssetReferencesInput): GroupedAssetReferencesUnion! """Returns the product with the given code.""" product(params: ProductInput!): ProductUnion! """Returns all active products.""" products: [String!]! """Retrieves the specified folder, provided the user has access to it.""" folder(folderId: ID!): FolderUnion! """Retrieves the specified asset, provided the user has access to it.""" asset(groupedAssetId: ID!): AssetUnion """Retrieves the specified assets if accessible to the user, plus errors for those which are not accessible.""" assets(groupedAssetIds: [ID!]!): AssetsUnion """ Retrieve all the assets contained in a Folder, this method is out of federation mostly used for testing purposes it is suggested to use getFolders() The user must have the CAN_VIEW_ASSET platform capability to perform this operation. """ assetsInFolder(folderId: ID!): AssetsInFolderUnion """Retrieve all the assets contained in an account and filter and paginate on them.""" assetsInAccount(paging: AssetPageInput, filter: FilterAssetInput, orderBy: AssetOrderEnum): AssetsInAccountUnion """ In order to understand how to use pre-sign functionality have a look at [url](https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html) Whenever you upload a part, Amazon S3 returns an ETag header in its response. For each part upload, you must record the part number and the ETag value. You must include these values in the subsequent request to complete the multipart upload. """ multipartUploadURL(params: MultipartUploadUrlInput!): MultipartUploadUrlUnion """ Given the Id of the assetout call and filters, orderBy clause and paging, it returns the files according to the filters in input grouped by their status """ getFiles(assetId: ID!, paging: FilePageInput, filter: FilterFileInput, orderBy: FileOrderEnum): FileResultOutput """ Given a fileId, this method will give back a list of all its multipart parts with the Amazon ETag, part number and their size, if the file exists. """ getUploadedParts(fileId: ID!): MultipartUploadPartsOutput """Given a fileId, return the file information if it exists.""" getFileStatus(fileId: ID!, assetId: ID!): FileStatusOutput """Retrieve the Georeference with ID""" getGroupedAssetGeoreference(georeferenceId: ID!, parentId: ID): GroupedAssetGeoreferenceOutput! """ Retrieves the specified project if it exists, null otherwise. Requires access to the project or the CAN_VIEW_PROJECT platform capability. """ project(projectId: ID!): ProjectUnion! """ **DEPRECATED in favour of query `projectsV2`, termination planned for 2026-01-31** Retrieves all projects the user has access to, filtered and ordered by as specified. """ projects(params: GetProjectsInput): ProjectsUnion @deprecated(reason: "No longer supported, in favour of query `projectsV2`, termination planned for 2026-01-31") """ Retrieves all projects the user has access to, filtered and ordered as specified. Account admins have access to all projects in the account. """ projectsV2(params: ProjectsInput): ProjectsUnionV2! """Retrieves all demo projects in the tenancy""" demoProjects: DemoProjectsUnion! """ Retrieves all folders and assets the user has access to in a project, filtered and ordered by as specified. Requires access to the project or the CAN_VIEW_PROJECT platform capability. """ searchProjectV2(projectId: ID!): SearchProjectUnion! """Retrieves the specified user profile if both that user and the authenticated user are members of the given project""" getProjectMember(userId: ID!, projectId: ID!): SimpleUserProfileUnion! @deprecated(reason: "No longer supported, query ProjectMembers on the ProjectOutput, termination planned for 2025-09-30") """Retrieve allowed storage regions""" allowedStorageRegions: [String!]! getGroupedAssetTour(params: GetGroupedAssetTourInput!): GroupedAssetTourOutput _noop: Boolean """Retrieves all the labels available to the user and according to the input criteria""" searchLabels(input: SearchLabelsInput!): SearchLabelsUnion! @deprecated(reason: "No longer supported, in favour of query `searchLabelsV2`, termination planned for 2027-03-31") """ Search among all labels available to the user within a project or asset, given a search term. A user with the platform capability CAN_VIEW_LABEL, can search the labels on any parent. """ searchLabelsV2(input: SearchLabelsInputV2): SearchLabelsUnionV2! gatewayInfo: GatewayInfoOutput! } """The product is not found.""" type QuotationErrorProductNotFoundOutput implements BaseQuotationErrorInterface & BaseErrorInterface { message: String! } type QuotationItemOutput { quotationItemId: ID! amount: BigDecimal! discountedAmount: BigDecimal discountRate: BigDecimal currency: String! resolutionUnit: String! resolutionValue: Float! } type QuotationProductOutput { productCode: String! productName: String productDescription: String vendor: String sapArticleNumber: String } type QuoteOutput { quotationId: ID! productIdentifier: String! dataType: DataTypeEnum! polygonDefType: PolygonType! coveragePercentage: BigDecimal formats: [String!]! coordinateSystems: [CoordinateSystemOutput!]! verticalCoordinateSystems: [CoordinateSystemOutput!] quotationItems: [QuotationItemOutput]! } type ReferencedBoundsDimensionsOutput { width: Float! height: Float! depth: Float! } type ReferencedBoundsGeolocationOutput { longitude: Float! latitude: Float! height: Float! } type ReferencedBoundsOutput { originGeolocation: ReferencedBoundsGeolocationOutput! cartesianBounds: CartesianBoundsOutput! } type ReferrerOutput { referrerId: String! referrerName: String! } """Result of successfully removing effects from a scene node.""" type RemoveSceneNodeEffectsOutput { success: Boolean! } type RemovedSharingOutput { result: Boolean! } type ReplayDlqMessagesOutput { """Messages that were sent successfully.""" successfulReplays: Int! """ Messages that matched the filter, but were not sent. e.g. because sent_to_resource is null or replayed_on is not null """ failedReplays: Int! } type ReportGenerationOutput { message: String! statusCode: Int! } type ReprocessAssetOutput { success: Boolean! message: String } type ResolveDlqMessagesOutput { """The amount of messages that were marked as resolved.""" messagesResolved: Int! """ The amount of messages that matched the filter, but were not updated. e.g. because they were already resolved. """ messagesSkipped: Int! } """Scene deletion blocked by one or more active transaction locks.""" type SceneDeleteTransactionLockViolationOutput implements BaseErrorInterface { message: String! """ The transaction locks blocking deletion. Client uses owner field to identify who holds the lock. """ locks: [SceneLockOutput!]! } """One or more of the specified artifacts do not belong to the specified grouped asset.""" type SceneErrorArtifactNotInGroupedAssetOutput implements BaseErrorInterface { message: String! } """The action is not possible because the given parent node does not have the correct type.""" type SceneErrorBadParentTypeOutput implements BaseErrorInterface { message: String! } """The specified grouped asset is not in the same project as the scene.""" type SceneErrorGroupedAssetInDifferentProjectOutput implements BaseErrorInterface { message: String! } """ The action is not possible because at least one of the given child nodes is invalid. For example, because the child is not in the same scene, or is a root node. """ type SceneErrorInvalidChildOutput implements BaseErrorInterface { message: String! } """The color effect of the scene node is not valid: should be either hex or rgb.""" type SceneErrorInvalidColorOutput implements BaseErrorInterface { message: String! } """The lock definition is not accepted.""" type SceneErrorInvalidLockDefinitionOutput implements BaseErrorInterface { message: String! } """ The requested operation is not allowed. Deprecated, in favor ErrorOperationNotAllowedOutput should be used instead. Termination planned with following ticket: https://hexagon.atlassian.net/browse/HDR-11136") """ type SceneErrorOperationNotAllowedOutput implements BaseErrorInterface { message: String! } """ The specified resource is not accessible by the acting user. Deprecated, in favor ErrorResourceAccessDeniedOutput should be used instead. Termination planned with following ticket: https://hexagon.atlassian.net/browse/HDR-11136") """ type SceneErrorResourceAccessDeniedOutput implements BaseErrorInterface { message: String! } """The specified scene node no longer exists.""" type SceneErrorSceneNodeDoesNotExistOutput implements BaseErrorInterface { message: String! } """Status information for a completed scene generation process.""" type SceneGenerationStatusDoneOutput { startedBy: SimpleUserProfileOutput! startedAt: DateTime! endedAt: DateTime! } """Status information for a failed scene generation process, including the error message.""" type SceneGenerationStatusFailedOutput { startedBy: SimpleUserProfileOutput! startedAt: DateTime! endedAt: DateTime! failureMessage: String! } """Status information for an in-progress scene generation process.""" type SceneGenerationStatusInProgressOutput { startedBy: SimpleUserProfileOutput! startedAt: DateTime! } """ A georeferenced point, specifying the location of a scene's origin in the real world. When a scene has a geolocation, its coordinate system is an east-north-up (ENU) system with this point as its origin. This point is defined in WGS 84 (EPSG:4979). """ type SceneGeolocationOutput { longitude: Float! latitude: Float! height: Float! } """Group node in a scene hierarchy that can contain child nodes (groups or leafs) and has transformation properties.""" type SceneGroupNodeOutput implements SceneNodeInterface { id: ID! originalId: ID! version: Int! versions(paging: PaginationInput, filter: FilterSceneNodeVersionInput): SceneNodeVersionsOutput! defaultVersion: Boolean! name: String! """Child nodes of this group node (leaf or group nodes).""" childNodes: [SceneChildNodeUnion!]! """3D transformation (position, rotation, scale) relative to the parent node.""" transformation: SceneNodeTransformationOutput! """Visual effects applied to this node for rendering.""" effects: SceneNodeEffectsOutput """Lock information if this node is currently locked.""" lock: SceneLockOutput """Whether this node is visible in the scene (default for all users).""" visible: Boolean! @deprecated(reason: "Group node visibility will no longer be used, to be replaced by making children visible or invisible, termination planned for 2028-12-31.") """Parent node of this group node (root or another group node).""" parentNode: SceneParentNodeUnion! scene: SceneOutput! createdBy: SimpleUserProfileOutput! createdAt: DateTime! modifiedBy: SimpleUserProfileOutput! modifiedAt: DateTime! """Time when this node or any of its descendants was last modified.""" cascadeModifiedAt: DateTime! } """Leaf node in a scene hierarchy that references a grouped asset and cannot have children.""" type SceneLeafNodeOutput implements SceneNodeInterface { id: ID! originalId: ID! version: Int! versions(paging: PaginationInput, filter: FilterSceneNodeVersionInput): SceneNodeVersionsOutput! defaultVersion: Boolean! name: String! """3D transformation (position, rotation, scale) relative to the parent node.""" transformation: SceneNodeTransformationOutput! """Visual effects applied to this node for rendering.""" effects: SceneNodeEffectsOutput """Lock information if this node is currently locked.""" lock: SceneLockOutput """Whether this node is visible in the scene.""" visible: Boolean! """Parent node of this leaf node (root or group node).""" parentNode: SceneParentNodeUnion! scene: SceneOutput! createdBy: SimpleUserProfileOutput! createdAt: DateTime! modifiedBy: SimpleUserProfileOutput! modifiedAt: DateTime! """Time when this node or any of its descendants was last modified.""" cascadeModifiedAt: DateTime! """Reference to the grouped asset associated with this leaf node.""" assetReference: SceneNodeAssetReferenceOutput } """Lock information for a scene, restricting operations on specific nodes.""" type SceneLockOutput { id: ID! name: String! """The nodes currently locked by the lock.""" sceneNodes: [SceneNodeUnion!]! """The user currently responsible for the lock.""" owner: SimpleUserProfileOutput! """The operations blocked by the lock.""" operationScopes: [SceneLockOperationScopeEnum!]! """The extent to which the lock restrictions are applied to the lock owner.""" ownerRestriction: SceneLockOwnerRestrictionEnum! """Indicates whether the lock is used for a transaction.""" transactionLock: Boolean! createdBy: SimpleUserProfileOutput! createdAt: DateTime! modifiedBy: SimpleUserProfileOutput! modifiedAt: DateTime! } """Result containing all locks for a scene.""" type SceneLocksOutput { sceneLocks: [SceneLockOutput!]! } """Reference information linking a scene leaf node to its grouped asset and visible artifacts.""" type SceneNodeAssetReferenceOutput { id: ID! groupedAsset: GroupedAssetOutput! """Artifacts from the grouped asset that are visible in this scene node.""" visibleArtifacts: [ArtifactItemOutput!]! @deprecated(reason: "No longer supported, in favour of field `visibleArtifactPayloadsV2`, termination planned for 2028-09-30.") """ Payloads of the artifacts from the grouped asset that are visible in this scene node. Each visible artifact contributes one payload: the preferred one among its addresses, preferring a streamable address, then a visualizable one, then a downloadable one. """ visibleArtifactPayloads: [ArtifactPayloadOutput!]! @deprecated(reason: "No longer supported, in favour of field `visibleArtifactPayloadsV2`, termination planned for 2026-09-30.") """ Payloads of the artifacts from the grouped asset that are visible in this scene node, one entry per visible artifact. Every payload of an artifact is available, so the client picks the address it needs instead of being handed a single preferred one. """ visibleArtifactPayloadsV2: [VisibleArtifactPayloadsOutput!]! createdAt: DateTime! modifiedAt: DateTime! } """Visual effects applied to a scene node for rendering.""" type SceneNodeEffectsOutput { """Contrast adjustment, range -1 to 1, where 0 is the default (no change).""" contrast: Float! """Brightness adjustment, range -1 to 1, where 0 is the default (no change).""" brightness: Float! """Saturation adjustment, range -1 to 1, where 0 is the default (no change).""" saturation: Float! """Opacity level, range 0 to 1, where 0 is fully transparent and 1 is fully opaque.""" opacity: Float! """Color tint applied to the node. Accepts hex or rgb(a) format. Null if no color tint is applied.""" color: String } type SceneNodeSubscriptionOutput { """Scene node id concatenated with timestamp, for client purposes, use the id field in sceneNode""" sceneNodeId: ID! """The scene node that was updated""" sceneNode: SceneNodeUnion! } """3D transformation applied to a scene node, including position, rotation, and scale.""" type SceneNodeTransformationOutput { position: SceneVector3Output! rotation: SceneVector3Output! scale: SceneVector3Output! } """Pagination information applied to a scene node versions query.""" type SceneNodeVersionAppliedPaginationOutput { pageNumber: Int! pageSize: Int! } """Result containing paginated list of scene node versions.""" type SceneNodeVersionsOutput { contents: [SceneNodeInterface!]! appliedPagination: SceneNodeVersionAppliedPaginationOutput! total: Int! } """Result containing multiple scene nodes retrieved by IDs.""" type SceneNodesQueryOutput { contents: [SceneNodeQueryUnion!]! total: Int! } """A 3D scene containing a hierarchical structure of nodes representing grouped assets and their transformations.""" type SceneOutput { id: ID! name: String! """Scene type which might influence how the scene is generated and displayed.""" type: SceneTypeEnum! rootNode: SceneRootNodeOutput! """Project to which the scene belongs.""" project: ProjectOutput! """ The geographic location of the scene. When this property is defined, the scene's coordinate system is an east-north-up (ENU) system with this point as its origin. Otherwise, the coordinate system is a right-handed, local Cartesian system with the Z axis pointing upwards. """ geolocation: SceneGeolocationOutput """Indicates the locks currently applied to the scene.""" locks: [SceneLockOutput!]! """ The status of the scene generation process triggered with the createSceneFromFolder mutation. If the scene was not created using this mutation, the status will be null. """ sceneGenerationStatus: SceneGenerationStatusUnion createdBy: SimpleUserProfileOutput! createdAt: DateTime! modifiedBy: SimpleUserProfileOutput! modifiedAt: DateTime! } """Root node of a scene hierarchy, serving as the top-level parent for all other nodes.""" type SceneRootNodeOutput implements SceneNodeInterface { id: ID! originalId: ID! """Version number of the node, starts at 1, is automatically determined.""" version: Int! """Different versions of the node (used during an ongoing transaction.""" versions(paging: PaginationInput, filter: FilterSceneNodeVersionInput): SceneNodeVersionsOutput! """True if this is the default version of the node.""" defaultVersion: Boolean! """Child nodes of this root node (leaf or group nodes).""" childNodes: [SceneChildNodeUnion!]! scene: SceneOutput! """Lock information if this node is currently locked.""" lock: SceneLockOutput createdBy: SimpleUserProfileOutput! createdAt: DateTime! modifiedBy: SimpleUserProfileOutput! modifiedAt: DateTime! """Time when this node or any of its descendants was last modified.""" cascadeModifiedAt: DateTime! } """3D vector used for position, rotation, or scale in scene node transformations.""" type SceneVector3Output { x: Float! y: Float! z: Float! } """Paginated result containing scenes matching the query criteria.""" type ScenesOutput { contents: [SceneOutput!]! appliedPagination: AppliedScenePaginationOutput! """Filter on scene types. Deprecated, use appliedFilters.bySceneType instead.""" appliedSceneTypeFilter: [SceneTypeEnum!]! @deprecated(reason: "Use appliedFilters.bySceneType instead, termination planned for 2026-12-31") """The applied filters for the scene query. Null if no filters were applied.""" appliedFilters: AppliedFilterSceneOutput """The applied ordering for the scene query""" orderBy: SceneOrderEnum! """Indicates the total number of scenes matching the query.""" total: Int! } type SearchLabelsResultAppliedPaginationOutputV2 { pageNumber: Int! pageSize: Int! } type SearchLabelsResultOutputV2 { appliedPagination: SearchLabelsResultAppliedPaginationOutputV2! contents: [LabelOutputV2!]! total: Int! } type SearchOutput { projectId: ID folders(paging: FolderPageInput, filter: FilterFolderInput, orderBy: FolderOrderEnum): FolderResultOutput assets(paging: AssetPageInput, filter: FilterAssetInput, orderBy: AssetOrderEnum): GroupedAssetResultOutput } """Error when a security group to be created already exists.""" type SecurityGroupAlreadyExistsOutput implements BaseCatalogErrorInterface & BaseErrorInterface { message: String! } """Error when trying to update or delete a security group that does not exist.""" type SecurityGroupNotFoundOutput implements BaseCatalogErrorInterface & BaseErrorInterface { message: String! } """Error when trying to delete a security group that is still used.""" type SecurityGroupStillLinkedToFeatureOutput implements BaseCatalogErrorInterface & BaseErrorInterface { message: String! } type SelectedSubscriptionTierOutput { id: String! name: String! price: SubscriptionPriceOutput limits: [SubscriptionLimitOutput!]! directUploads: Boolean! editableAsSelfService: Boolean! } """Something went wrong on the server.""" type ServerError implements Error { message: String! } type SetActivePaymentCardOutput { externalPaymentCardId: String! active: Boolean! } type SetViewpointOutput { """ The ID of the entity to which the view point was set. For instance the id of the Grouped Asset. """ entityId: ID! """The type of the entity""" entityType: ViewPointParentTypeEnum! """The view point that was set. If absent, it means that the existing viewpoint (if any) was cleared.""" viewPoint: ViewpointOutput } type SetupPaymentCardCreationOutput { externalPaymentCardIntentId: String! clientSecret: String! publicKey: String! } type SharedGroupedAssetOutput { id: ID! auth: String! } type SharingCodeOutput { sharingCodeId: ID! expireAt: DateTime } """The backend to calculate the quotation failed.""" type ShopErrorBackendFailedOutput implements BaseShopErrorInterface & BaseErrorInterface { message: String! } """There is no overlap between the area of interest and the area the product covers.""" type ShopErrorNoOverlapWithProductOutput implements BaseShopErrorInterface & BaseErrorInterface { message: String! } """The user is not allowed to perform this operation.""" type ShopErrorOperationNotAllowedOutput implements BaseShopErrorInterface & BaseErrorInterface { message: String! } """The product is not found.""" type ShopErrorProductNotFoundOutput implements BaseShopErrorInterface & BaseErrorInterface { message: String! } """The pricing of the product is not configured correctly.""" type ShopErrorProductPricingNotFoundOutput implements BaseShopErrorInterface & BaseErrorInterface { message: String! } type ShopSupportedCountryValidationOutput { supported: Boolean! } type SignupOutput { user: UserProfileOutput! } type SimpleAccountInfoOutput { id: ID! company: String logo: String deleted: Boolean! tenantId: ID } type SimpleResultOutput { result: Boolean! } type SimpleUserProfileOutput { id: ID! email: String! signedUpAt: DateTime! modifiedAt: DateTime! profilePictureUrl: String applicationRoles: [String!]! @deprecated(reason: "This was never filled in, no alternative provided. Termination planned for 2027-09-31") firstName: String lastName: String jobTitle: String userFlags: [UserFlagOutput]! userSettings: UserSettingsOutput! deleted: Boolean! """The role of the user in their own account.""" accountRole: AccountRoleEnum! """The role of the user in the tenant of their account.""" tenantRole: TenantRoleEnum! """The role of the user on the platform.""" platformRole: PlatformRoleEnum! """Information about the account the user belongs to.""" companyInfo: SimpleAccountInfoOutput """The timestamp of the user's last login.""" lastLoginAt: DateTime } type SimpleUserResultOutput { success: Boolean! } type SingularPipelineUsageOutput { pipelineName: ImplementedProcessingPipelines! pipelineCount: Int! pipelineCompleteDurationSeconds: Float! processingRegion: [String!]! """Regions where this pipeline's data is stored. May differ from processingRegion for storage-only regions.""" storageRegion: [String!]! pipelineUsageStatistics: [PipelineUsageStatisticsOutput!] errorStatistics: [PipelineErrorStatisticsOutput!] } type StreamableAddressOutput implements AddressInterface { """The path of the object. Needs to be appended to the domain of the backend to form a complete URL.""" endpoint: String! """ The region where the object is stored. See query allowedStorageRegions for possible values. The possible values may change without notice. """ storageRegion: String! } type StreamableAddressTypeOutput { id: ID! """The format of the streamable file.""" format: StreamableFormatEnum! """Extra information specific to the format of the streamable file.""" formatInfo: StreamableFormatInfoUnion } type StreamingSubscriptionOutput { streamingSubscriptionUuid: ID! processingPipelineInfo: ProcessingPipelineInfoOutput userUuid: ID! totalUsage: BigInteger! """ provides the average daily consumption based on the difference between the first and last date data has been streamed """ averageUsagePerDay: BigInteger! productCode: String! quadrants: [String!]! enabled: Boolean! volumeInGB: Int! title: String! description: String createdAt: DateTime! downloadMetricsUri: String! } type StreamingSubscriptionsOutput { streamingSubscriptions: [StreamingSubscriptionOutput!]! } """The StreamingUsage Output""" type StreamingUsageOutput { """The start of the period for which usage was calculated""" startDate: DateTime! """The start of the period for which usage was calculated""" endDate: DateTime! """Download usage in the specified period in bytes""" downloads: BigInteger! files: BigInteger! """ User streaming usage in bytes. This contains for example streaming usage of WMS services created from your uploaded assets. """ userStreaming: BigInteger! graphQl: BigInteger! baseLayerStreamer: BigInteger! baseLayer: BigInteger! externalServices: BigInteger! } type Subscription { _noop: Boolean """ Received when any project has changed the current user has access to with information regarding what changed on the project. """ projectChanged: ProjectChangePayload! countdown(from: Int!): Int! } type SubscriptionAddonOutput { id: String! name: String! addonOptionName: String! type: SubscriptionAddonTypeEnum! value: BigInteger! price: SubscriptionPriceOutput! } """Account is not synced with Payment System. Account needs to be updated.""" type SubscriptionErrorAccountNotSyncedOutput implements BaseSubscriptionErrorInterface & BaseErrorInterface { message: String! } """The input validation failed.""" type SubscriptionErrorBadRequestOutput implements BaseSubscriptionErrorInterface & BaseErrorInterface { message: String! } """A subscription with the same addons already exists.""" type SubscriptionErrorDuplicateWithSameAddonOutput implements BaseSubscriptionErrorInterface & BaseErrorInterface { message: String! } """The requested feature is not available.""" type SubscriptionErrorFeatureNotAvailableOutput implements BaseSubscriptionErrorInterface & BaseErrorInterface { message: String! } """The referenced entity could not be found.""" type SubscriptionErrorNotFoundOutput implements BaseSubscriptionErrorInterface & BaseErrorInterface { message: String! } """Access to the requested action denied. You do not have the required rights or your authentication token is incorrect.""" type SubscriptionErrorOperationNotAllowedOutput implements BaseSubscriptionErrorInterface & BaseErrorInterface { message: String! } type SubscriptionInvoiceOutput { invoiceNumber: String! totalAmount: BigDecimal! currency: String! status: InvoiceStatusEnum! pdfLink: String! billingPeriodStartDate: DateTime! billingPeriodEndDate: DateTime! dueDate: DateTime } type SubscriptionInvoicesOutput { subscriptionInvoiceOutputs: [SubscriptionInvoiceOutput]! } type SubscriptionLimitOutput { name: SubscriptionLimitEnum! value: BigInteger! } """There is no valid Iso country found for the account. Account settings need to be updated.""" type SubscriptionNoValidIsoCountryFoundOutput implements BaseSubscriptionErrorInterface & BaseErrorInterface { message: String! } type SubscriptionOrderItemOutput { id: String! subscriptionTier: SubscriptionTierOutput! subscriptionTierAddon: SubscriptionTierAddonOutput! amount: BigDecimal! currency: String! } type SubscriptionOrderOutput { id: String! orderId: String! tax: BigDecimal! amount: BigDecimal! total: BigDecimal! currency: String! orderItems: [SubscriptionOrderItemOutput!]! } type SubscriptionOrdersOutput { subscriptionOrderOutputs: [SubscriptionOrderOutput]! } type SubscriptionOutput { id: String! active: Boolean! status: String! billingPeriodStartDate: DateTime! billingPeriodEndDate: DateTime! isPendingDowngrade: Boolean! paymentStatus: SubscriptionPaymentStatusEnum! paymentAttemptCount: Int! paymentAlreadyAttempted: Boolean! nextPaymentAttempt: DateTime latestPaymentAttempt: DateTime tier: SelectedSubscriptionTierOutput! totalPrice: SubscriptionTotalPriceOutput! totalLimits: [SubscriptionLimitOutput!]! addons: [SubscriptionAddonOutput!]! selectedSeats: BigInteger! isPendingCancellation: Boolean! stripePaymentMethodEnum: StripePaymentMethodLocalEnum! subscriptionProviderType: SubscriptionProviderTypeEnum! } """Based on Stripe `Price` object https://stripe.com/docs/api/prices""" type SubscriptionPriceOutput { id: String! currency: String! billingInterval: BillingIntervalEnum! amountPerUnit: BigDecimal! subTotal: BigDecimal! tax: BigDecimal! total: BigDecimal! } type SubscriptionQuotationAddonOutput { id: String! name: String! addonOptionName: String! billingInterval: BillingIntervalEnum! currency: String! subTotal: BigDecimal! tax: BigDecimal! total: BigDecimal! value: BigInteger! type: SubscriptionAddonTypeEnum! } type SubscriptionQuotationOutput { tierChangeType: SubscriptionTierChangeTypeEnum! limitsChangeType: SubscriptionLimitsChangeTypeEnum! tier: SubscriptionQuotationTierOutput! addons: [SubscriptionQuotationAddonOutput!]! exceededLimits: [ExceededLimitOutput!]! totalLimits: [SubscriptionLimitOutput!]! subscriptionPaidUntil: DateTime! billingPeriodStartDate: DateTime! billingPeriodEndDate: DateTime! prorationRebate: BigDecimal! prorationDebit: BigDecimal! subTotal: BigDecimal! tax: BigDecimal! billingPeriodTotal: BigDecimal! immediatePaymentTotal: BigDecimal! nextPaymentTotal: BigDecimal! currency: String! } type SubscriptionQuotationTierOutput { id: String! name: String! limits: [SubscriptionLimitOutput!]! directUploads: Boolean! pricePerSeat: BigDecimal! selectedSeats: Int! subTotal: BigDecimal! tax: BigDecimal! total: BigDecimal! currency: String! } type SubscriptionTierAddonOptionOutput { id: String! name: String! value: BigInteger! prices: [SubscriptionPriceOutput]! } type SubscriptionTierAddonOutput { id: String! name: String! type: SubscriptionAddonTypeEnum! options: [SubscriptionTierAddonOptionOutput!]! } """Lists limits, price and available addons""" type SubscriptionTierOutput { id: String! name: String! limits: [SubscriptionLimitOutput] prices: [SubscriptionPriceOutput] availableAddons: [SubscriptionTierAddonOutput!]! directUploads: Boolean! editableAsSelfService: Boolean! } """Lists limits, price and available addons""" type SubscriptionTiersOutput { subscriptionTierOutputs: [SubscriptionTierOutput]! } type SubscriptionTotalPriceOutput { subTotal: BigDecimal! tax: BigDecimal! total: BigDecimal! currency: String! billingInterval: BillingIntervalEnum! } type SubscriptionsOutput { subscriptionOutputs: [SubscriptionOutput]! } type Summary { """The type of the summary object.""" type: String! """ By default, only ranges with a minimum and a maximum value can be specified. Ranges can be specified for ordinal values only, which means they need to have a rank order. Therefore, ranges can only be specified for numbers and some special types of strings. Examples: grades (A to F), dates or times. Implementors are free to add other derived statistical values to the object, for example 'mean' or 'stddev'. """ value: JSON! } type SummaryItemGQL { type: JobType! state: JobStatus! } type SupportedCountryLocalizedNameOutput { languageAlpha2Code: String languageAlpha3Code: String name: String } type SupportedCountryOutput { """Country iso code""" countryIsoCode: String! alpha3Code: String! countryName: String! isEuropeanUnion: Boolean! localizedNames: [SupportedCountryLocalizedNameOutput]! addressesRequireRegion: Boolean! } type SystemMonitorErrorAccessDeniedOutput implements BaseSystemMonitorErrorInterface & BaseErrorInterface { message: String! } type SystemMonitorErrorMaxStepsExceededOutput implements BaseSystemMonitorErrorInterface & BaseErrorInterface { message: String! } type SystemMonitorErrorOperationNotAllowedOutput implements BaseSystemMonitorErrorInterface & BaseErrorInterface { message: String! } type TenantCapabilitiesOutput { """New enum members may be added without notice. Please implement the client in a way that can deal with this.""" tenantCapabilities: [TenantCapabilityEnum!]! } type TenantDeletionOutput { status: TenantDeletionStatus! message: String! } """Description of a specific tenant.""" type TenantOutput { id: ID! name: String! defaultTenant: Boolean! createdBy: SimpleUserProfileOutput createdAt: DateTime! modifiedAt: DateTime! defaultSubscriptionProviderType: SubscriptionProviderTypeEnum! isDemoProjectReady: Boolean! isAddressValidationRequired: Boolean! } type TenantsOutput { tenants: [TenantOutput!]! } type TokenWalletOutput { total: Int! } type TokensRefundOutput { transactionID: ID! } type TokensTransactionOutput { transactionDate: DateTime! transactionType: TokensTransactionActionTypeEnum! description: String! amount: Int! balanceAfter: Int! } type TokensTransactionsOutput { tokensTransactions: [TokensTransactionOutput!]! } type TourAppliedPageOutput { """Page number""" pageNumber: Int! """Page size""" pageSize: Int! } type TourCameraViewpointOutput { """Eye position""" eyePosition: Vector3Output! """Forward vector""" forward: Vector3Output! """Up vector""" up: Vector3Output! } type TourFilterAppliedOutput { """By name""" byName: String } type TourThumbnailOutput { uploadUrl: String! path: String! } type TriggerProcessingOutput { success: Boolean! } """A pipeline that can be triggered with the given input data.""" type TriggerablePipelineOutput { """Name of the pipeline""" pipelineName: ImplementedProcessingPipelines! """Results of the pipeline when triggered.""" resultTypes: [PipelineResultTypeOutput!]! } type UcsDataOutput { isActive: Boolean! name: String! wellKnownText: String translation: Vector3Output! rotation: QuaternionOutput! } type UcsOutput { id: ID! orderNumber: Int! createdAt: DateTime! modifiedAt: DateTime! data: UcsDataOutput! } """User is not authenticated""" type UnauthenticatedError implements Error { message: String! } type UnsharedGroupedAssetOutput { result: Boolean! } """Output of pipeline that can't be triggered with the given input data.""" type UntriggerablePipelineOutput { """Name of the pipeline.""" pipelineName: ImplementedProcessingPipelines! } type UpdateStreamingSubscriptionOutput { streamingSubscriptionUuid: ID! userUuid: ID! productCode: String! quadrants: [String!]! enabled: Boolean! endpoints: [EndpointOutput!]! title: String! description: String volumeInGB: Int! } """The UploadsUsage Output""" type UploadUsageOutput { """The start of the period for which usage was calculated""" startDate: DateTime! """The end of the period for which usage was calculated""" endDate: DateTime! """ Upload usage in bytes can be asset files that are uploaded or artifacts that were added to assets. This is the total upload usage for the period. """ assetUpload: BigInteger! } """ The Usage Account Output federated @deprecated UsageOutput, use AccountUsageOutput instead """ type UsageOutput { """Account UUID""" accountID: ID! """Storage Artifacts""" storageArtifacts: BigInteger! streaming(startDate: DateTime, endDate: DateTime): StreamingUsageOutput! processing(startDate: DateTime, endDate: DateTime): [ProcessingUsageOutput!]! """Seats""" seats: Int! """Storage Asset""" storageAssets: BigInteger! """Number of Projects""" projects: Int! } """The usage Tenant Output federated""" type UsageTenantOutput { """Tenant UUID""" tenantID: ID! """Storage Artifacts""" storageArtifacts: BigInteger! streaming(startDate: DateTime, endDate: DateTime): StreamingUsageOutput! processing(startDate: DateTime, endDate: DateTime): [ProcessingUsageOutput!]! """Seats""" seats: Int! """Storage Asset""" storageAssets: BigInteger! """Number of Projects""" projects: Int! } type UserAccessibleProjectOutput { projectId: ID! projectRole: ProjectRoleEnum! } type UserAccessibleProjectsListOutput { projects: [UserAccessibleProjectOutput!]! } type UserDeletionOutput { user: UserProfileOutput! status: UserDeletionStatusGQL! message: String! } type UserErrorOperationNotPossibleOutput implements BaseUserErrorInterface & BaseErrorInterface { message: String! } type UserFlagOutput { userFlag: UserFlagEnum valid: Boolean } type UserNotFoundError implements BaseUserErrorInterface & BaseErrorInterface { message: String! email: String } type UserProfileAppliedPageOutput { pageNumber: Int! pageSize: Int! } """ Detailed information about the user. This information is only available to the users within the same account. """ type UserProfileOutput { id: ID! email: String! signedUpAt: DateTime! modifiedAt: DateTime! profilePictureUrl: String firstName: String lastName: String jobTitle: String userFlags: [UserFlagOutput]! userSettings: UserSettingsOutput! deleted: Boolean! """ The role of the user in their own account. To determine what the user can do in their own account, check the `accountCapabilities` field. """ accountRole: AccountRoleEnum! """ The role of the user in the tenant of their account. To determine what the user can do in the tenant of their account, check the `tenantCapabilities` field. """ tenantRole: TenantRoleEnum! """ The role of the user on the platform. To determine what the user can do on the platform, check the `platformCapabilities` field. """ platformRole: PlatformRoleEnum! """Use platformRole and / or platformCapabilities instead, will be deprecated soon.""" applicationRoles: [String!]! """Information about the account the user belongs to.""" companyInfo: AccountInfoOutput """ The capabilities the user has in their own account. Unless mentioned otherwise, the capabilities apply to all entities of the specified type in the account. """ accountCapabilities: [AccountCapabilityEnum!]! """ The capabilities the user has in the tenant of their account. Unless mentioned otherwise, the capabilities apply to all entities of the specified type in the tenant. """ tenantCapabilities: [TenantCapabilityEnum!]! """ The capabilities the user has on the platform. Unless mentioned otherwise, the capabilities apply to all entities of the specified type on the entire platform. """ platformCapabilities: [PlatformCapabilityEnum!]! """The timestamp of the user's last login.""" lastLoginAt: DateTime """null if not ROLE_LIMITED_SUPPORT""" limitedToTenants: [TenantOutput!] """ Client credentials issued for this user, if any. Non-null for users that have client credentials (currently only automation users). """ clientInfo: ClientInfoOutput } type UserProfileResultOutput { appliedFilters: FilterUserProfileAppliedOutput orderBy: UserProfileOrderEnum appliedPagination: UserProfileAppliedPageOutput pageNumber: Int! pageSize: Int! total: Int! contents: [UserProfileOutput]! } type UserProjectRoleOutput { userId: ID! userRole: ProjectRoleEnum! } """The supplied language was invalid.""" type UserSettingsErrorInvalidLanguageOutput implements BaseUserErrorInterface & BaseErrorInterface { message: String! } type UserSettingsOutput { measurementUnit: UserSettingsMeasurementEnum @deprecated(reason: "Use measurementUnitV2 instead, which provides granular imperial unit distinctions") measurementUnitV2: UserSettingsMeasurementEnumV2! """Language according to ISO-639-1 format, e.g. nl, en, fr""" isoLanguage: String listLayout: UserSettingsListLayoutEnum """Preferred view mode (mesh/point-cloud/panoramic) when opening 3D objects (assets or scenes)""" preferredViewMode3D: ViewMode3DEnum } """The provided input is not valid""" type ValidationError implements Error { message: String! issues: [ValidationErrorIssue!]! } """A subset of the ValidationError type describing every issue in the input""" type ValidationErrorIssue { code: ValidationErrorIssueCode! path: String! message: String! } """Response output to be used for any vector3 output.""" type Vector3Output { """x-component""" x: Float! """y-component""" y: Float! """z-component""" z: Float! } type ViewpointOutput { id: ID! """Eye position""" eyePosition: Vector3Output! """Forward vector""" forward: Vector3Output! """Up vector""" up: Vector3Output! } type VisibleArtifactPayloadsOutput { id: ID! """ Every payload of the artifact, one per address. Pass `filter` to keep only the payloads whose address has one of the given types; when it is omitted or empty, all payloads are returned. """ payloads(filter: [AddressTypeEnumV2!]): [ArtifactPayloadOutput!]! } type VisualizableAddressOutput implements AddressInterface { """The path of the object. Needs to be appended to the domain of the backend to form a complete URL.""" endpoint: String! """ The region where the object is stored. See query allowedStorageRegions for possible values. The possible values may change without notice. """ storageRegion: String! """The media type of the visualizable file, e.g. "application/pdf" or "image/png".""" mediaType: String } type VisualizableAddressTypeOutput { id: ID! """The format of the visualizable file.""" format: VisualizableFormatEnum! } type VoucherOutput { signedUrl: String! expirationDate: DateTime! voucherType: VoucherTypeEnum! appliedLimits: [LimitToApplyOutput]! reusable: Boolean! } type WfsInfoOutput { datasetId: String! } scalar BigDecimal scalar BigInteger scalar DateTime scalar JSON scalar _Any union AccountCapabilitiesUnion = AccountCapabilitiesOutput | AcsErrorOperationNotAllowedOutput union AccountDeletionUnion = AccountDeletionOutput | ErrorOperationNotAllowedOutput """Result of requesting a specific account.""" union AccountDetailUnion = AccountDetailOutput | AcsErrorOperationNotAllowedOutput """ Result of mutation updateAccountV2. Of type AccountInfoOutput in case of success, otherwise one of the errors. """ union AccountInfoUpdateUnion = AccountInfoOutput | AccountInfoErrorOperationNotAllowedOutput | AccountInfoAccountEmailIsNotValidOutput | AccountInfoAccountAddressIsNotValidOutput | AccountInfoAccountCompanyNameIsNotValidOutput | AccountInfoAccountLegalEntityCouldNotBeChangedOutput """Result of requesting all the members of a certain account.""" union AccountMembersResultUnion = AccountMembersResultOutput | AcsErrorOperationNotAllowedOutput """Result of requesting a V2 overview of the members of the caller's account.""" union AccountMembersV2Union = AccountMembersV2Output | ErrorResourceAccessDeniedOutput """ Result of query getAccountUsageV3. Of type AccountUsageOutput in case of success, otherwise one of the errors. """ union AccountUsageUnion = AccountUsageOutput | SubscriptionErrorOperationNotAllowedOutput """ Result of adding external user to project. Of type SimpleUserResultOutput in case of success, otherwise one of the errors. """ union AddExternalUserToProjectUnion = SimpleUserResultOutput | UserNotFoundError | UserErrorOperationNotPossibleOutput """ Result of mutation addFile. Of type MultiAssetDownloadLinkOutput in case of success, otherwise one of the errors. """ union AddFileUnion = FileOutput | AssetErrorOperationNotAllowedOutput | AssetErrorNameBlacklistedCharactersOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorNameBlankOutput | AssetErrorNameForbiddenOutput | AssetErrorNameLeadingOrTrailingSpaceOutput | AssetErrorNameTrailingDotOutput | AssetErrorNameTwoDotsInRowOutput | AssetErrorStorageLimitReachedOutput | AssetErrorVersionNotFoundOutput """ Result of mutation addLabels. Of type LabelsOutput in case of success, otherwise one of the errors. """ union AddLabelsUnion = LabelsOutput | LabelErrorOperationNotAllowedOutput | LabelErrorTooManyLabelsOutput """ Result of addToSceneLock mutation. Of type SceneLockOutput in case of success, otherwise one of the errors. """ union AddToSceneLockUnion = SceneLockOutput | SceneErrorInvalidLockDefinitionOutput | ErrorResourceAccessDeniedOutput | ErrorResourceNotFoundOutput union AddressOutput = AddressWmtsOutput | AddressWmsOutput | AddressWfsOutput | AddressOgc3DOutput | AddressLtsOutput | AddressHspcOutput | AddressCubemapJsonOutput | AddressGeoJsonOutput | AddressDownloadableOutput | AddressVisualizableOutput | AddressPackOutput | AddressPanoramicOutput | AddressDownloadOutput | AddressAssetFileDownloadOutput | AddressZipOutput | AddressJsonOutput | AddressCogOutput | AddressZipAllFilesOutput union AddressTypeUnion = DownloadableAddressTypeOutput | StreamableAddressTypeOutput | VisualizableAddressTypeOutput union AddressUnion = StreamableAddressOutput | DownloadableAddressOutput | VisualizableAddressOutput union AnnotationCategoriesUnion = AnnotationCategoriesOutput | ErrorResourceAccessDeniedOutput | ErrorResourceNotFoundOutput """ Result of mutation uploadThumbnailToAnnotationV2. Of type AnnotationThumbnailOutput in case of success, otherwise one of the errors. """ union AnnotationThumbnailUnion = AnnotationThumbnailOutput | AnnotationErrorOperationNotAllowedOutput """ Result of federation of annotations. Of type AnnotationsOutput in case of success, otherwise one of the errors. """ union AnnotationsUnion = AnnotationErrorOperationNotAllowedOutput | AnnotationErrorAccessDeniedOutput """ Reason an artifact entered the FAILED status. Currently only carries pipeline-failure information; additional failure reason variants may be added in the future. """ union ArtifactFailedReasonUnion = ProcessingPipelineFailedInfoOutput """The list of artifact files if the artifact is in UPLOADING state; error otherwise.""" union ArtifactFilesUnion = ArtifactFilesOutput | ErrorResourceNotFoundOutput | ErrorOperationNotAllowedOutput union ArtifactKindUnion = ArtifactKindMeshOutput | ArtifactKindPointCloudOutput | ArtifactKindPanoramicOutput | ArtifactKindGaussianSplatsOutput | ArtifactKindVectorOutput | ArtifactKindRasterOutput | ArtifactKindVectorAndRasterOutput | ArtifactKindGenericOutput | ArtifactKindFolderZippedOutput union ArtifactStatusUnion = ArtifactStatusUploadingOutput | ArtifactStatusProcessingOutput | ArtifactStatusCompletedOutput | ArtifactStatusFailedOutput """ Result of create artifact mutation. ArtifactOutputV2 in case of success, otherwise one of the errors. """ union ArtifactUnion = ArtifactOutputV2 | ArtifactErrorAssetVersionNotFoundOutput | ArtifactErrorResourceAccessDeniedOutput | ArtifactErrorInvalidUploadTokenOutput | ErrorOperationNotAllowedOutput | ErrorResourceNotFoundOutput | ErrorResourceAccessDeniedOutput """ Result of query asset. Of type GroupedAssetOutput in case of success, otherwise one of the errors. """ union AssetUnion = GroupedAssetOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorTooManyRequestsOutput """ Result of query assetsInAccount. Of type GroupedAssetResultOutput in case of success, otherwise one of the errors. """ union AssetsInAccountUnion = GroupedAssetResultOutput | AssetErrorOperationNotAllowedOutput """ Result of query assetsInFolder. Of type FolderOutput in case of success, otherwise one of the errors. """ union AssetsInFolderUnion = FolderOutput | AssetErrorOperationNotAllowedOutput """ Result of query assets. Of type GroupedAssetsOutput in case of success, otherwise an access error. GroupedAssetsOutput can be a mix of GroupedAssetOutput and errors. """ union AssetsUnion = GroupedAssetsOutput | AssetErrorOperationNotAllowedOutput """ Result of mutation autoRegisterAssets. Of type GroupedAssetOutput in case of success, otherwise one of the errors. """ union AutoRegisterAssetsUnion = GroupedAssetOutput | AssetErrorFeatureNotAvailableOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorTooManyRequestsOutput | AssetErrorNameBlacklistedCharactersOutput | AssetErrorNameBlankOutput | AssetErrorNameForbiddenOutput | AssetErrorNameForwardSlashOutput | AssetErrorNameLeadingOrTrailingSpaceOutput | AssetErrorNameTrailingDotOutput | AssetErrorNameTwoDotsInRowOutput | AssetErrorDuplicateNameOutput | AssetErrorProcessingLimitReachedOutput | AssetErrorStorageLimitReachedOutput | AssetErrorGroupedAssetRegistrationLimitOutput | AssetErrorCoarseRegistrationLimitOutput | AssetErrorGroupedAssetsNotUnderSameFolderOutput | AssetErrorCoarseRegistrationInputNotFound union AvailableProcessingPipelinesUnion = AvailableProcessingPipelinesOutput | ErrorOperationNotAllowedOutput | ErrorResourceAccessDeniedOutput union BaselayerOutput = BaselayerWmtsOutput | BaselayerWmsOutput | BaselayerWfsOutput | BaselayerPanoramicOutput | BaselayerOgc3DOutput | BaselayerLtsOutput | BaselayerHspcOutput | BaselayerUrlOutput """ Result of mutation cancelSubscription. Of type CancelSubscriptionOutput in case of success, otherwise one of the errors. """ union CancelCurrentSubscriptionUnion = CancelCurrentSubscriptionOutput | SubscriptionErrorFeatureNotAvailableOutput | SubscriptionErrorOperationNotAllowedOutput """ Result of mutation changeAccountStorageRegion. Of type AccountInfoOutput in case of success, otherwise one of the errors. """ union ChangeAccountStorageRegionUnion = AccountInfoOutput | AccountInfoErrorOperationNotAllowedOutput | ErrorStorageRegionIsNotValidOutput """Result of changePlatformRole mutation, of type SimpleUserProfileOutput in case of success, otherwise one of the errors.""" union ChangePlatformRoleUnion = SimpleUserProfileOutput | ErrorOperationNotAllowedOutput | ErrorResourceNotFoundOutput | ErrorUserNotEligibleForPromotionOutput """ Result of mutation for changing project owner with validation. Of type ProjectOutput in case of success, otherwise one of the errors. """ union ChangeProjectOwnerUnion = ProjectOutput | AcsErrorOperationNotAllowedOutput | AcsErrorProjectNotFoundOutput | AcsErrorUserNotFoundOutput | AcsErrorTenantNotFoundOutput | AcsErrorSeatLimitReachedOutput | AcsErrorStorageLimitReachedOutput """ Result of mutation changeProjectRoleOfUserV2. Of type ChangeProjectRoleOutput in case of success, otherwise one of the errors. """ union ChangeProjectRoleUnion = ChangeProjectRoleOutput | AcsErrorOperationNotAllowedOutput | AcsErrorOperationNotPossibleOutput | AcsErrorSeatLimitReachedOutput """ Result of mutation completeAsset. Of type CompleteAssetOutput in case of success, otherwise one of the errors. """ union CompleteAssetUnion = CompleteAssetOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorVersionNotFoundOutput """ Result of complete upload mutation. CompleteUploadOutput in case of success, otherwise one of the errors. """ union CompleteUploadUnion = CompleteUploadOutput | ArtifactErrorResourceNotFoundOutput | ArtifactErrorAssetVersionNotFoundOutput | ArtifactErrorResourceAccessDeniedOutput | ArtifactErrorOperationNotAllowedOutput """ Result of mutation confirmSubscriptionOrder. Of type ConfirmSubscriptionOutput in case of success, otherwise one of the errors. """ union ConfirmSubscriptionUnion = ConfirmSubscriptionOutput """ Result of mutation copyAssetToFolder. Of type GroupedAssetOutput in case of success, otherwise one of the errors. """ union CopyAssetToFolderUnion = GroupedAssetOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorTooManyRequestsOutput | AssetErrorStorageLimitReachedOutput | AssetErrorDuplicateNameOutput | ErrorCrossAccountOperationNotAllowedOutput union CreateAnnotationCategoryPredefinedListUnion = AnnotationCategoryPredefinedListOutput | ErrorOperationNotAllowedOutput | ErrorDuplicateNameOutput union CreateAnnotationTextCategoryUnion = AnnotationTextCategoryOutput | ErrorOperationNotAllowedOutput | ErrorDuplicateNameOutput """ Result of mutation createAssetThumbnail. Of type AssetThumbnailOutput in case of success, otherwise one of the errors. """ union CreateAssetThumbnailUnion = AssetThumbnailOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorTooManyRequestsOutput """ Result of mutation createAsset. Of type GroupedAssetOutput in case of success, otherwise one of the errors. """ union CreateAssetUnion = GroupedAssetOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorTooManyRequestsOutput | AssetErrorNameBlacklistedCharactersOutput | AssetErrorNameBlankOutput | AssetErrorNameForbiddenOutput | AssetErrorNameForwardSlashOutput | AssetErrorNameLeadingOrTrailingSpaceOutput | AssetErrorNameTrailingDotOutput | AssetErrorNameTwoDotsInRowOutput | AssetErrorDuplicateNameOutput """ Result of the createAutomationUser mutation. Of type CreateAutomationUserOutput in case of success, otherwise one of the errors. """ union CreateAutomationUserUnion = CreateAutomationUserOutput | ErrorOperationNotAllowedOutput | ErrorOperationNotPossibleOutput | ErrorInputValidationFailedOutput | ErrorInvalidDateOutput """ Result of mutation createFolder. Of type FolderOutput in case of success, otherwise one of the errors. """ union CreateFolderUnion = FolderOutput | FolderErrorDuplicateNameOutput | FolderErrorTooManyRequestsOutput | FolderErrorOperationNotAllowedOutput | FolderErrorResourceAccessDeniedOutput | FolderErrorNameBlacklistedCharactersOutput | FolderErrorNameBlankOutput | FolderErrorNameForbiddenOutput | FolderErrorNameForwardSlashOutput | FolderErrorNameLeadingOrTrailingSpaceOutput | FolderErrorNameTrailingDotOutput | FolderErrorNameTwoDotsInRowOutput """ Result of mutation createLabelAnnotationV2. Of type LabelAnnotationOutput in case of success, otherwise one of the errors. """ union CreateLabelAnnotationUnion = LabelAnnotationOutput | AnnotationErrorOperationNotAllowedOutput union CreateLevelUnion = LevelOutput | ErrorOperationNotAllowedOutput | ErrorNegativeOrderOutput """ Result of mutation createLimitingBoxAnnotationV2. Of type LimitingBoxAnnotationOutput in case of success, otherwise one of the errors. """ union CreateLimitingBoxAnnotationUnion = LimitingBoxAnnotationOutput | AnnotationErrorOperationNotAllowedOutput """ Result of mutation createMeasurementAnnotationV2. Of type MeasurementAnnotationOutput in case of success, otherwise one of the errors. """ union CreateMeasurementAnnotationUnion = MeasurementAnnotationOutput | AnnotationErrorOperationNotAllowedOutput """ Result of mutation createProject. Of type ProjectOutput in case of success, otherwise one of the errors. ProjectErrorDuplicateNameOutput is no longer used """ union CreateProjectUnion = ProjectOutput | ProjectErrorTooManyRequestsOutput | ProjectErrorOperationNotAllowedOutput | ProjectErrorInvalidInputOutput | ProjectErrorNameBlacklistedCharactersOutput | ProjectErrorNameBlankOutput | ProjectErrorNameForbiddenOutput | ProjectErrorNameForwardSlashOutput | ProjectErrorNameLeadingOrTrailingSpaceOutput | ProjectErrorNameTrailingDotOutput | ProjectErrorNameTwoDotsInRowOutput | ProjectErrorDuplicateNameOutput """ Result of createSceneGroupNode mutation. Of type SceneGroupNodeOutput in case of success, otherwise one of the errors. """ union CreateSceneGroupNodeUnion = SceneGroupNodeOutput | SceneErrorBadParentTypeOutput | SceneErrorInvalidChildOutput | SceneErrorInvalidColorOutput | SceneErrorResourceAccessDeniedOutput | ErrorResourceAccessDeniedOutput | ErrorLockViolationOutput """ Result of createSceneLeafNode mutation. Of type SceneLeafNodeOutput in case of success, otherwise one of the errors. """ union CreateSceneLeafNodeUnion = SceneLeafNodeOutput | SceneErrorBadParentTypeOutput | SceneErrorResourceAccessDeniedOutput | SceneErrorGroupedAssetInDifferentProjectOutput | SceneErrorArtifactNotInGroupedAssetOutput | SceneErrorInvalidColorOutput | ErrorResourceAccessDeniedOutput | ErrorLockViolationOutput """ Result of createSceneLock mutation. Of type SceneLockOutput in case of success, otherwise one of the errors. """ union CreateSceneLockUnion = SceneLockOutput | SceneErrorInvalidLockDefinitionOutput | ErrorResourceAccessDeniedOutput | ErrorResourceNotFoundOutput """ Result of createScene mutation. Of type SceneOutput in case of success, otherwise one of the errors. """ union CreateSceneUnion = SceneOutput | SceneErrorResourceAccessDeniedOutput | ErrorResourceAccessDeniedOutput """ Result of creation of a streaming subscription. Of type StreamingSubscriptionOutput in case of success, otherwise one of the errors. """ union CreateStreamingSubscriptionUnion = CreateStreamingSubscriptionOutput | SubscriptionErrorOperationNotAllowedOutput | SubscriptionErrorNotFoundOutput | SubscriptionErrorBadRequestOutput union DeleteAnnotationCategoryUnion = DeleteOperationOutput | ErrorOperationNotAllowedOutput | ErrorResourceNotFoundOutput """ Result of mutation deleteAnnotationV2. Of type DeleteAnnotationOutput in case of success, otherwise one of the errors. """ union DeleteAnnotationUnion = DeleteAnnotationOutput | AnnotationErrorOperationNotAllowedOutput | AnnotationErrorEntityNotFoundOutput """ Result of delete artifact mutation. Of type DeleteArtifactOutput in case of success, otherwise one of the errors. """ union DeleteArtifactUnion = DeleteArtifactOutput | ArtifactErrorResourceNotFoundOutput | ArtifactErrorAssetVersionNotFoundOutput | ArtifactErrorResourceAccessDeniedOutput | ErrorOperationNotAllowedOutput """ Result of mutation deleteAssetThumbnail. Of type DeleteAssetThumbnailOutput in case of success, otherwise one of the errors. """ union DeleteAssetThumbnailUnion = DeleteAssetThumbnailOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorTooManyRequestsOutput """ Result of mutation deleteAsset. Of type DeleteAssetOutput in case of success, otherwise one of the errors. """ union DeleteAssetUnion = DeleteAssetOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorTooManyRequestsOutput | AssetErrorResourceNotFoundOutput """ Result of mutation deleteAsset. Of type DeleteAssetVersionOutput in case of success, otherwise one of the errors. """ union DeleteAssetVersionUnion = DeleteAssetVersionOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorVersionNotFoundOutput | AssetErrorIllegalVersionDeleteOutput """ Result from mutation deleteFolder. Of type DeleteFolderOutput in case of expected execution, otherwise one of the errors. """ union DeleteFolderUnion = DeleteFolderOutput | FolderErrorTooManyRequestsOutput | FolderErrorOperationNotAllowedOutput | FolderErrorResourceAccessDeniedOutput | FolderErrorResourceNotFoundOutput union DeleteLevelUnion = DeleteOperationOutput | ErrorOperationNotAllowedOutput | ErrorResourceNotFoundOutput """ Result of mutation deleteProjectThumbnail. Of type DeleteProjectThumbnailOutput in case of expected behaviour, otherwise one of the errors. """ union DeleteProjectThumbnailUnion = DeleteProjectThumbnailOutput | ProjectErrorTooManyRequestsOutput | ProjectErrorOperationNotAllowedOutput | ProjectErrorResourceAccessDeniedOutput """ Result of mutation deleteProject. Of type DeleteProjectOutput in case of expected behaviour, otherwise one of the errors. """ union DeleteProjectUnion = DeleteProjectOutput | ProjectErrorTooManyRequestsOutput | ProjectErrorOperationNotAllowedOutput | ProjectErrorResourceAccessDeniedOutput """ Result of deleteSceneNode mutation. Of type DeleteSceneNodeOutput in case of success, otherwise one of the errors. """ union DeleteSceneNodeUnion = DeleteSceneNodeOutput | SceneErrorResourceAccessDeniedOutput | SceneErrorOperationNotAllowedOutput | ErrorResourceAccessDeniedOutput | ErrorOperationNotAllowedOutput | ErrorLockViolationOutput """ Result of deleteScene mutation. Of type DeleteSceneOutput in case of success, otherwise one of the errors. """ union DeleteSceneUnion = DeleteSceneOutput | SceneErrorResourceAccessDeniedOutput | ErrorResourceAccessDeniedOutput | ErrorLockViolationOutput | SceneDeleteTransactionLockViolationOutput """ Result of deleting a streaming susbcriptions. Of type DeleteStreamingSubscriptionOutput in case of success, otherwise one of the errors. """ union DeleteStreamingSubscriptionUnion = DeleteStreamingSubscriptionOutput | SubscriptionErrorOperationNotAllowedOutput | SubscriptionErrorNotFoundOutput """ Result of query for demo projects. Of type DemoProjectResultOutput in case of success, otherwise one of the errors. """ union DemoProjectsUnion = DemoProjectResultOutput | ProjectErrorOperationNotAllowedOutput | ProjectErrorResourceAccessDeniedOutput """ Result of endSceneTransaction mutation. Of type DeleteOperationOutput in case of success, otherwise one of the errors. """ union EndSceneTransactionUnion = DeleteOperationOutput | ErrorResourceAccessDeniedOutput | ErrorResourceNotFoundOutput | ErrorInputValidationFailedOutput union EntityAccessUnion = EntityAccessOutput | AcsErrorEntityNotFoundOutput | AcsErrorOperationNotAllowedOutput union ExternalAccountMembersResultUnion = AccountMembersResultOutput | AcsErrorOperationNotAllowedOutput """ Result of query folder. Of type FolderOutput in case of success, otherwise one of the errors. """ union FolderUnion = FolderOutput | FolderErrorTooManyRequestsOutput | FolderErrorOperationNotAllowedOutput | FolderErrorResourceAccessDeniedOutput | FolderErrorResourceNotFoundOutput """ Result of mutation generateInvitation. Of type InvitationOutput in case of success, otherwise one of the errors. """ union GenerateInvitationUnion = InvitationOutput | AcsErrorSeatLimitReachedOutput | AcsErrorOperationNotAllowedOutput | AcsErrorUserAlreadyExistsInOtherAccountOutput | AcsErrorUserAlreadyExistsInAccountOutput """ Result of mutation GenerateMultiAssetDownloadLink. Of type MultiAssetDownloadLinkOutput in case of success, otherwise one of the errors. """ union GenerateMultiAssetDownloadLinkUnion = MultiAssetDownloadLinkOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorDownloadLimitReachedOutput """ Result of mutation GenerateMultiFolderDownloadLink. Of type MultiFolderDownloadLinkOutput in case of success, otherwise one of the errors. """ union GenerateMultiFolderDownloadLinkUnion = MultiFolderDownloadLinkOutput | FolderErrorOperationNotAllowedOutput | FolderErrorResourceAccessDeniedOutput """ Result of query asset. Of type GroupedAssetOutput in case of success, otherwise one of the errors. """ union GroupedAssetCopyUnion = GroupedAssetOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorDuplicateNameOutput | AssetErrorOperationNotPossibleOutput | AssetErrorResourceNotFoundOutput | ErrorCrossAccountOperationNotAllowedOutput """ Result of query asset. Of type GroupedAssetOutput in case of success, otherwise one of the errors. """ union GroupedAssetMoveUnion = GroupedAssetOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorDuplicateNameOutput | AssetErrorOperationNotPossibleOutput | AssetErrorResourceNotFoundOutput | ErrorCrossAccountOperationNotAllowedOutput """ Result of groupedAssetReferences query. Of type GroupedAssetSceneNodeReferencesOutput in case of success, otherwise one of the errors. """ union GroupedAssetReferencesUnion = GroupedAssetSceneNodeReferencesOutput | ErrorResourceAccessDeniedOutput | ErrorOperationNotAllowedOutput union LayerAddress = LayerAddressLts | LayerAddressWms | LayerAddressOgc3DTiles | LayerAddressWmts | LayerAddressHspc """ The limit box information for a point cloud artifact. Of type LimitingBoxAnnotationOutput when the point cloud was generated from a limit box that still exists, otherwise one of the errors explaining why no limiting box annotation is available. """ union LimitBoxUnion = LimitingBoxAnnotationOutput | ErrorLimitBoxDeletedOutput | ErrorNoRelatedLimitBoxOutput """ Result of mutation moveAssetToFolder. Of type GroupedAssetOutput in case of success, otherwise one of the errors. """ union MoveAssetToFolderUnion = GroupedAssetOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorTooManyRequestsOutput | AssetErrorDuplicateNameOutput | AssetErrorStorageLimitReachedOutput | ErrorCrossAccountOperationNotAllowedOutput """ Result of moveSceneNode mutation. Of type SceneGroupNodeOutput or SceneLeafNodeOutput in case of success, otherwise one of the errors. """ union MoveSceneNodeUnion = SceneGroupNodeOutput | SceneLeafNodeOutput | SceneErrorBadParentTypeOutput | ErrorInputValidationFailedOutput | ErrorResourceAccessDeniedOutput | ErrorResourceNotFoundOutput | ErrorLockViolationOutput """ Result of mutation generateMultiAssetDownloadLink. Of type MultiAssetDownloadLinkOutput in case of success, otherwise one of the errors. """ union MultiArtifactDownloadLinkUnion = MultiArtifactDownloadLinkOutput | ArtifactErrorOperationNotAllowedOutput | ArtifactErrorResourceAccessDeniedOutput """ Result of mutation copyMultiGroupedAssetsToFolder. Of type MultiGroupedAssetCopyOutput in case of success, otherwise one of the errors. """ union MultiGroupedAssetCopyUnion = MultiGroupedAssetCopyOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorStorageLimitReachedOutput | AssetErrorResourceNotFoundOutput """ Result of mutation moveMultiGroupedAssetsToFolder. Of type MultiGroupedAssetMoveOutput in case of success, otherwise one of the errors. """ union MultiGroupedAssetMoveUnion = MultiGroupedAssetMoveOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorStorageLimitReachedOutput | AssetErrorResourceNotFoundOutput """ Result of mutation getMultipartUploadURL. Of type MultipartUploadUrlOutput in case of success, otherwise one of the errors. """ union MultipartUploadUrlUnion = MultipartUploadUrlOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorStorageLimitReachedOutput """ Result of patch artifact mutation. ArtifactUploadOutput in case of success, otherwise one of the errors. """ union PatchArtifactUnion = PatchArtifactOutput | ArtifactErrorResourceNotFoundOutput | ArtifactErrorAssetVersionNotFoundOutput | ArtifactErrorResourceAccessDeniedOutput | ArtifactErrorNotEnoughStorageOutput | ErrorOperationNotAllowedOutput | ErrorInputValidationFailedOutput """ Result of mutation persistAsset. Of type GroupedAssetOutput in case of success, otherwise one of the errors. """ union PersistAssetUnion = GroupedAssetOutput | AssetErrorOperationNotAllowedOutput | AssetErrorTooManyRequestsOutput | AssetErrorNameBlacklistedCharactersOutput | AssetErrorNameBlankOutput | AssetErrorNameForbiddenOutput | AssetErrorNameForwardSlashOutput | AssetErrorNameLeadingOrTrailingSpaceOutput | AssetErrorNameTrailingDotOutput | AssetErrorNameTwoDotsInRowOutput | AssetErrorDuplicateNameOutput union PipelineInformationUnion = ErrorOperationNotAllowedOutput | ErrorResourceAccessDeniedOutput | ErrorResourceNotFoundOutput | ErrorInputValidationFailedOutput union PipelineLogsDownloadLinkOutputUnion = ErrorOperationNotAllowedOutput | ErrorResourceAccessDeniedOutput | ErrorResourceNotFoundOutput | ErrorInputValidationFailedOutput union PipelineZipperResultsDownloadLinkOutputUnion = ErrorOperationNotAllowedOutput | ErrorResourceAccessDeniedOutput | ErrorResourceNotFoundOutput | ErrorInputValidationFailedOutput """ Result of querying pipeline information for an artifact in PROCESSING state. Returns the pipeline information or an error when the information is temporarily unavailable. """ union ProcessingPipelineInfoUnion = ProcessingPipelineRunningInfoOutput | ErrorPipelineInformationNotYetAvailableOutput union ProcessingTokenQuotationUnion = ProcessingTokenQuotationOutput | ProcessingTokenQuotationRemoteServiceErrorOutput union ProductUnion = QuotationProductOutput | QuotationErrorProductNotFoundOutput union ProjectCapabilitiesUnion = ProjectCapabilitiesOutput | AcsErrorOperationNotAllowedOutput | AcsErrorResourceAccessDeniedOutput union ProjectChangeOperation = ProjectChangeGroupedAssetUpdateOperation | ProjectChangeGroupedAssetVersionChangeOperation | ProjectChangeGroupedAssetVersionDeleteOperation | ProjectChangeGroupedAssetCreateOperation | ProjectChangeGroupedAssetDeleteOperation | ProjectChangeGroupedAssetCopyOperation | ProjectChangeGroupedAssetMoveOperation | ProjectChangeFolderUpdateOperation | ProjectChangeFolderCreateOperation | ProjectChangeFolderCopyOperation | ProjectChangeFolderMoveOperation | ProjectChangeFolderDeleteOperation | ProjectChangeProjectUpdateOperation | ProjectChangeUserAccessGrantedOperation | ProjectChangeUserAccessRevokedOperation union ProjectChangePayload = UnauthenticatedError | ServerError | ProjectChangeOutput """ Result of query project. Of type ProjectOutput in case of success, otherwise one of the errors. """ union ProjectUnion = ProjectOutput | ProjectErrorTooManyRequestsOutput | ProjectErrorOperationNotAllowedOutput | ProjectErrorResourceAccessDeniedOutput """ Result of projectsOfAccount query. Of type ProjectsResultOutput in case of success, otherwise one of the errors. """ union ProjectsOfAccountUnion = ProjectsResultOutput | ProjectsErrorOperationNotAllowedOutput | ProjectErrorInvalidInputOutput """ Result of projectsOfTenant query. Of type ProjectsResultOutput in case of success, otherwise one of the errors. """ union ProjectsOfTenantUnion = ProjectsResultOutput | ProjectsErrorOperationNotAllowedOutput | ProjectErrorInvalidInputOutput """ Result of projectsOfUser query. Of type ProjectsResultOutput in case of success, otherwise one of the errors. """ union ProjectsOfUserUnion = ProjectsResultOutput | ProjectsErrorOperationNotAllowedOutput | ProjectErrorInvalidInputOutput """ Result of query projects. Of type ProjectResultOutput in case of success, otherwise one of the errors. """ union ProjectsUnion = ProjectResultOutput | ProjectErrorTooManyRequestsOutput | ProjectErrorOperationNotAllowedOutput """ Result of projectsV2 query. Of type ProjectResultOutput in case of success, otherwise one of the errors. """ union ProjectsUnionV2 = ProjectsResultOutput | ProjectsErrorOperationNotAllowedOutput union QuotationUnion = QuoteOutput | ShopErrorOperationNotAllowedOutput | ShopErrorBackendFailedOutput | ShopErrorProductPricingNotFoundOutput | ShopErrorProductNotFoundOutput | ShopErrorNoOverlapWithProductOutput """ Result of releaseSceneLock mutation. Of type DeleteOperationOutput in case of success, otherwise one of the errors. """ union ReleaseSceneLockUnion = DeleteOperationOutput | ErrorResourceAccessDeniedOutput | ErrorResourceNotFoundOutput | ErrorInputValidationFailedOutput """ Result of mutation removeLabels. Of type LabelsOutput in case of success, otherwise one of the errors. """ union RemoveLabelsUnion = LabelsOutput | LabelErrorOperationNotAllowedOutput """ Result of removeSceneNodeEffects mutation. Of type RemoveSceneNodeEffectsOutput in case of success, otherwise one of the errors. """ union RemoveSceneNodeEffectsUnion = RemoveSceneNodeEffectsOutput | SceneErrorResourceAccessDeniedOutput | ErrorResourceAccessDeniedOutput | ErrorLockViolationOutput union ReplayDlqMessagesUnion = ReplayDlqMessagesOutput | ErrorOperationNotAllowedOutput | ErrorInputValidationFailedOutput """ Result of mutation reprocessAsset. Of type ReprocessAssetOutput in case of success, otherwise one of the errors. """ union ReprocessAssetUnion = ReprocessAssetOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorVersionNotFoundOutput | AssetErrorOperationNotPossibleOutput | AssetErrorResourceNotFoundOutput union ResolveDlqMessagesUnion = ResolveDlqMessagesOutput | ErrorOperationNotAllowedOutput | ErrorInputValidationFailedOutput """Possible child node types for children of a root or group scene node.""" union SceneChildNodeUnion = SceneLeafNodeOutput | SceneGroupNodeOutput """Possible outputs for scene generation status.""" union SceneGenerationStatusUnion = SceneGenerationStatusDoneOutput | SceneGenerationStatusInProgressOutput | SceneGenerationStatusFailedOutput """ Result of sceneLocks query. Of type SceneLocksOutput in case of success, otherwise one of the errors. """ union SceneLocksUnion = SceneLocksOutput | ErrorResourceAccessDeniedOutput | ErrorOperationNotAllowedOutput | ErrorResourceNotFoundOutput """ Result of sceneNode query. Of type SceneLeafNodeOutput, SceneGroupNodeOutput or SceneRootNodeOutput in case of success, otherwise one of the errors. """ union SceneNodeQueryUnion = SceneLeafNodeOutput | SceneGroupNodeOutput | SceneRootNodeOutput | ErrorResourceAccessDeniedOutput | ErrorResourceNotFoundOutput """All possible scene node types, including error when the requested node does not exist.""" union SceneNodeUnion = SceneLeafNodeOutput | SceneGroupNodeOutput | SceneRootNodeOutput | SceneErrorSceneNodeDoesNotExistOutput """ Result of sceneNodes query. Of type SceneNodesQueryOutput in case of success, otherwise one of the errors. """ union SceneNodesQueryUnion = SceneNodesQueryOutput | ErrorResourceAccessDeniedOutput | ErrorOperationNotAllowedOutput """Possible parent node types for parent of a group or leaf scene node.""" union SceneParentNodeUnion = SceneGroupNodeOutput | SceneRootNodeOutput """ Result of scene query. Of type SceneOutput in case of success, otherwise one of the errors. """ union SceneUnion = SceneOutput | SceneErrorResourceAccessDeniedOutput | ErrorResourceAccessDeniedOutput """ Result of scenes query. Of type ScenesOutput in case of success, otherwise one of the errors. """ union ScenesUnion = ScenesOutput | SceneErrorResourceAccessDeniedOutput | ErrorResourceAccessDeniedOutput """ Result of query labels. Of type LabelsResultOutput in case of success, otherwise one of the errors. """ union SearchLabelsUnion = LabelsResultOutput | LabelErrorOperationNotAllowedOutput """ Result of query labels. Of type LabelsResultOutput in case of success, otherwise one of the errors. """ union SearchLabelsUnionV2 = SearchLabelsResultOutputV2 | ErrorOperationNotAllowedOutput | ErrorResourceAccessDeniedOutput """ Result of query searchProject. Of type SearchOutput in case of success, otherwise one of the errors. """ union SearchProjectUnion = SearchOutput | ProjectErrorTooManyRequestsOutput | ProjectErrorOperationNotAllowedOutput | ProjectErrorResourceAccessDeniedOutput """ Result of mutation setAssetVersion. Of type GroupedAssetOutput in case of success, otherwise one of the errors. """ union SetAssetVersionUnion = GroupedAssetOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorVersionNotFoundOutput """ Result of mutation SetViewpointInput. Of type SetViewPointOutput in case of success, otherwise indicates incorrect inputs or permissions. """ union SetViewpointUnion = SetViewpointOutput | ErrorOperationNotAllowedOutput union SharedGroupedAssetUnion = SharedGroupedAssetOutput | AcsErrorEntityNotFoundOutput | AcsErrorOperationNotPossibleOutput union SharingCodeUnion = SharingCodeOutput | AcsErrorEntityNotFoundOutput | AcsErrorOperationNotAllowedOutput | AcsErrorOperationNotPossibleOutput """ Result of mutation signupFromInvite. Of type SignupOutput in case of success, otherwise one of the errors. """ union SignupFromInviteUnion = SignupOutput | AcsErrorInvalidInvitationSignatureOutput | AcsErrorSeatLimitReachedOutput | AcsErrorUserAlreadyExistsOutput | AcsErrorTooManyRequestsOutput """ Result of mutation signup. Of type SignupOutput in case of success, otherwise one of the errors. """ union SignupUnion = SignupOutput | AcsErrorInvalidVoucherOutput | AcsErrorVoucherAlreadyUsedOutput | AcsErrorUserAlreadyExistsOutput | AcsErrorTooManyRequestsOutput | AcsErrorOperationNotPossibleOutput """ Result of mutation signup with address validation. Of type SignupOutput in case of success, otherwise one of the errors. """ union SignupWithAddressValidationUnion = SignupOutput | AcsErrorInvalidVoucherOutput | AcsErrorVoucherAlreadyUsedOutput | AcsErrorUserAlreadyExistsOutput | AcsErrorTooManyRequestsOutput | AcsErrorInvalidAddressOutput | AcsErrorOperationNotPossibleOutput union SimpleResultUnion = SimpleResultOutput | AcsErrorOperationNotAllowedOutput | AcsErrorOperationNotPossibleOutput | AcsErrorEntityNotFoundOutput """ Result of query for a member of a project. Of type SimpleUserProfileOutput in case of success, otherwise one of the errors. """ union SimpleUserProfileUnion = SimpleUserProfileOutput | ProjectErrorResourceAccessDeniedOutput | ProjectErrorResourceAccessDeniedForTargetUserOutput | ProjectErrorOperationNotAllowedOutput """ Result of startSceneTransaction mutation. Of type SceneLockOutput in case of success, otherwise one of the errors. """ union StartSceneTransactionUnion = SceneLockOutput | ErrorOperationNotAllowedOutput | ErrorResourceAccessDeniedOutput | ErrorResourceNotFoundOutput | ErrorInputValidationFailedOutput union StreamableFormatInfoUnion = Ogc3dTilesInfoOutput | WfsInfoOutput """ Result of retrieving a single streaming subscription. Of type StreamingSubscriptionOutput in case of success, otherwise one of the errors. """ union StreamingSubscriptionUnion = StreamingSubscriptionOutput | SubscriptionErrorOperationNotAllowedOutput | SubscriptionErrorNotFoundOutput """ Result of retrieving a list of streaming susbcriptions. Of type StreamingSubscriptionsOutput in case of success, otherwise one of the errors. """ union StreamingSubscriptionsUnion = StreamingSubscriptionsOutput | SubscriptionErrorOperationNotAllowedOutput """ Result of query getAllSubscriptionInvoices. Of type SubscriptionInvoicesOutput in case of success, otherwise one of the errors. """ union SubscriptionInvoicesUnion = SubscriptionInvoicesOutput | SubscriptionErrorOperationNotAllowedOutput | SubscriptionErrorAccountNotSyncedOutput | SubscriptionNoValidIsoCountryFoundOutput | SubscriptionErrorFeatureNotAvailableOutput """ Result of query getAllSubscriptionOrders. Of type SubscriptionOrdersOutput in case of success, otherwise one of the errors. """ union SubscriptionOrdersUnion = SubscriptionOrdersOutput | SubscriptionErrorOperationNotAllowedOutput | SubscriptionErrorAccountNotSyncedOutput | SubscriptionNoValidIsoCountryFoundOutput | SubscriptionErrorFeatureNotAvailableOutput """ Result of query getSubscriptionQuotation. Of type SubscriptionQuotationOutput in case of success, otherwise one of the errors. """ union SubscriptionQuotationUnion = SubscriptionQuotationOutput | SubscriptionErrorOperationNotAllowedOutput | SubscriptionErrorAccountNotSyncedOutput | SubscriptionNoValidIsoCountryFoundOutput | SubscriptionErrorFeatureNotAvailableOutput | SubscriptionErrorDuplicateWithSameAddonOutput """ Result of query getSubscriptionTiers. Of type SubscriptionTiersOutput in case of success, otherwise one of the errors. """ union SubscriptionTiersUnion = SubscriptionTiersOutput | SubscriptionErrorOperationNotAllowedOutput | SubscriptionErrorAccountNotSyncedOutput | SubscriptionNoValidIsoCountryFoundOutput | SubscriptionErrorFeatureNotAvailableOutput """ Result of mutation buySubscription. Of type SubscriptionOutput in case of success, otherwise one of the errors. """ union SubscriptionUnion = SubscriptionOutput | SubscriptionErrorOperationNotAllowedOutput | SubscriptionErrorAccountNotSyncedOutput | SubscriptionNoValidIsoCountryFoundOutput | SubscriptionErrorFeatureNotAvailableOutput | SubscriptionErrorDuplicateWithSameAddonOutput """ Result of query getAllSubscriptions. Of type SubscriptionsOutput in case of success, otherwise one of the errors. """ union SubscriptionsUnion = SubscriptionsOutput | SubscriptionErrorOperationNotAllowedOutput | SubscriptionErrorAccountNotSyncedOutput | SubscriptionNoValidIsoCountryFoundOutput | SubscriptionErrorFeatureNotAvailableOutput union TenantCapabilitiesUnion = TenantCapabilitiesOutput | AcsErrorOperationNotAllowedOutput union TenantDeletionUnion = TenantDeletionOutput | AcsErrorOperationNotAllowedOutput | AcsErrorTenantNotFoundOutput """Result of requesting a specific tenant.""" union TenantUnion = TenantOutput | AcsErrorOperationNotAllowedOutput | AcsErrorTenantNotFoundOutput | AcsErrorOperationNotPossibleOutput """Result of requesting all tenants of the system.""" union TenantsUnion = TenantsOutput | AcsErrorOperationNotAllowedOutput union TokensTransactionsUnion = TokensTransactionsOutput | SubscriptionErrorOperationNotAllowedOutput | SubscriptionErrorAccountNotSyncedOutput | SubscriptionNoValidIsoCountryFoundOutput | SubscriptionErrorFeatureNotAvailableOutput """ Result of mutation triggerProcessing. Of type TriggerProcessingOutput in case of success, otherwise one of the errors. """ union TriggerProcessingUnion = TriggerProcessingOutput | ProcessingErrorOperationNotAllowedOutput | ProcessingErrorResourceAccessDeniedOutput | ProcessingErrorProcessingLimitReachedOutput | ProcessingErrorStorageLimitReachedOutput | ProcessingErrorAccountNotInSyncOrInvalidAddressErrorOutput | ProcessingErrorInvalidInputForProcessingPaymentErrorOutput | ProcessingErrorResourceNotFoundOutput | ProcessingErrorInputValidationFailedOutput | ErrorPipelineAlreadyTriggeredOutput union UnsharedGroupedAssetUnion = UnsharedGroupedAssetOutput | AcsErrorEntityNotFoundOutput | AcsErrorOperationNotAllowedOutput | AcsErrorOperationNotPossibleOutput union UpdateAnnotationCategoryPredefinedListUnion = AnnotationCategoryPredefinedListOutput | ErrorOperationNotAllowedOutput | ErrorResourceNotFoundOutput | ErrorDuplicateNameOutput union UpdateAnnotationTextCategoryUnion = AnnotationTextCategoryOutput | ErrorOperationNotAllowedOutput | ErrorResourceNotFoundOutput | ErrorDuplicateNameOutput """ Result of mutation updateAsset. Of type GroupedAssetOutput in case of success, otherwise one of the errors. """ union UpdateAssetUnion = GroupedAssetOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput | AssetErrorTooManyRequestsOutput | AssetErrorNameBlacklistedCharactersOutput | AssetErrorNameBlankOutput | AssetErrorNameForbiddenOutput | AssetErrorNameForwardSlashOutput | AssetErrorNameLeadingOrTrailingSpaceOutput | AssetErrorNameTrailingDotOutput | AssetErrorNameTwoDotsInRowOutput | AssetErrorDuplicateNameOutput """ Result of query for a member of a project. Of type ProjectOutput in case of success, otherwise one of the errors. """ union UpdateDemoProjectStatusUnion = ProjectOutput | ProjectErrorResourceAccessDeniedOutput | ProjectErrorOperationNotAllowedOutput """ Result from mutation updateFolder. Of type FolderOutput in case of success, otherwise one of the errors. """ union UpdateFolderUnion = FolderOutput | FolderErrorDuplicateNameOutput | FolderErrorTooManyRequestsOutput | FolderErrorOperationNotAllowedOutput | FolderErrorResourceAccessDeniedOutput | FolderErrorNameBlacklistedCharactersOutput | FolderErrorNameBlankOutput | FolderErrorNameForbiddenOutput | FolderErrorNameForwardSlashOutput | FolderErrorNameLeadingOrTrailingSpaceOutput | FolderErrorNameTrailingDotOutput | FolderErrorNameTwoDotsInRowOutput """ Result of mutation updateLabelAnnotationV2. Of type LabelAnnotationOutput in case of success, otherwise one of the errors. """ union UpdateLabelAnnotationUnion = LabelAnnotationOutput | AnnotationErrorOperationNotAllowedOutput | AnnotationErrorEntityNotFoundOutput union UpdateLevelUnion = LevelOutput | ErrorOperationNotAllowedOutput | ErrorResourceNotFoundOutput | ErrorNegativeOrderOutput """ Result of mutation updateLimitingBoxAnnotationV2. Of type LimitingBoxAnnotationOutput in case of success, otherwise one of the errors. """ union UpdateLimitingBoxAnnotationUnion = LimitingBoxAnnotationOutput | AnnotationErrorOperationNotAllowedOutput | AnnotationErrorEntityNotFoundOutput """ Result of mutation updateMeasurementAnnotationV2. Of type MeasurementAnnotationOutput in case of success, otherwise one of the errors. """ union UpdateMeasurementAnnotationUnion = MeasurementAnnotationOutput | AnnotationErrorOperationNotAllowedOutput | AnnotationErrorEntityNotFoundOutput """ Result of mutation updateProject. Of type ProjectOutput in case of success, otherwise one of the errors. ProjectErrorDuplicateNameOutput is not longer used """ union UpdateProjectUnion = ProjectOutput | ProjectErrorTooManyRequestsOutput | ProjectErrorOperationNotAllowedOutput | ProjectErrorResourceAccessDeniedOutput | ProjectErrorInvalidInputOutput | ProjectErrorNameBlacklistedCharactersOutput | ProjectErrorNameBlankOutput | ProjectErrorNameForbiddenOutput | ProjectErrorNameForwardSlashOutput | ProjectErrorNameLeadingOrTrailingSpaceOutput | ProjectErrorNameTrailingDotOutput | ProjectErrorNameTwoDotsInRowOutput | ProjectErrorDuplicateNameOutput """ Result of updateSceneGroupNode mutation. Of type SceneGroupNodeOutput in case of success, otherwise one of the errors. """ union UpdateSceneGroupNodeUnion = SceneGroupNodeOutput | SceneErrorBadParentTypeOutput | SceneErrorInvalidColorOutput | SceneErrorResourceAccessDeniedOutput | ErrorResourceAccessDeniedOutput | ErrorLockViolationOutput """ Result of updateSceneLeafNode mutation. Of type SceneLeafNodeOutput in case of success, otherwise one of the errors. """ union UpdateSceneLeafNodeUnion = SceneLeafNodeOutput | SceneErrorBadParentTypeOutput | SceneErrorResourceAccessDeniedOutput | SceneErrorGroupedAssetInDifferentProjectOutput | SceneErrorArtifactNotInGroupedAssetOutput | SceneErrorInvalidColorOutput | ErrorResourceAccessDeniedOutput | ErrorLockViolationOutput """ Result of updateScene mutation. Of type SceneOutput in case of success, otherwise one of the errors. """ union UpdateSceneUnion = SceneOutput | SceneErrorResourceAccessDeniedOutput | ErrorResourceAccessDeniedOutput | ErrorLockViolationOutput """ Result of update of a streaming subscription. Of type StreamingSubscriptionOutput in case of success, otherwise one of the errors. """ union UpdateStreamingSubscriptionUnion = UpdateStreamingSubscriptionOutput | SubscriptionErrorOperationNotAllowedOutput | SubscriptionErrorNotFoundOutput | SubscriptionErrorBadRequestOutput """ Result of updating UserSettings. Of type UpdateUserSettingsOutput in case of success, otherwise one of the errors. """ union UpdateUserSettingsUnion = UserSettingsOutput | UserSettingsErrorInvalidLanguageOutput """ Result of mutation upgradeAsset. Of type AssetVersionOutput in case of success, otherwise one of the errors. """ union UpgradeAssetUnion = AssetVersionOutput | AssetErrorOperationNotPossibleOutput | AssetErrorOperationNotAllowedOutput | AssetErrorResourceAccessDeniedOutput """ Result of mutation upgradeAssetV2. Of type AssetVersionOutput in case of success, otherwise one of the errors. """ union UpgradeAssetUnionV2 = AssetVersionOutput | ErrorVersionUpgradeFailedOutput | ErrorOperationNotPossibleOutput | ErrorOperationNotAllowedOutput | ErrorResourceAccessDeniedOutput | AssetErrorStorageLimitReachedOutput """ Result of mutation uploadThumbnailToProject. Of type ProjectThumbnailOutput in case of success, otherwise one of the errors. """ union UploadThumbnailToProjectUnion = ProjectThumbnailOutput | ProjectErrorTooManyRequestsOutput | ProjectErrorOperationNotAllowedOutput | ProjectErrorResourceAccessDeniedOutput """ Result of query tenantUsage. Of type UsageTenantOutput in case of success, otherwise one of the errors. """ union UsageTenantUnion = UsageTenantOutput | SubscriptionErrorOperationNotAllowedOutput union UserAccessibleProjectUnion = UserAccessibleProjectsListOutput | AcsErrorUserNotFoundOutput union UserDeletionUnion = UserDeletionOutput | AcsErrorOperationNotAllowedOutput | AcsErrorUserNotFoundOutput union UserProjectRoleUnion = ListOfUserProjectRoleOutput | AcsErrorOperationNotAllowedOutput | AcsErrorProjectNotFoundOutput """ Result of mutation generateInvitation. Of type InvitationOutput in case of success, otherwise one of the errors. """ union VoucherUnion = VoucherOutput | AcsErrorSeatLimitReachedOutput | AcsErrorOperationNotAllowedOutput | AcsErrorUserAlreadyExistsInOtherAccountOutput | AcsErrorUserAlreadyExistsInAccountOutput union WalletRefundUnion = TokensRefundOutput | SubscriptionErrorOperationNotAllowedOutput | SubscriptionErrorAccountNotSyncedOutput | SubscriptionNoValidIsoCountryFoundOutput | SubscriptionErrorBadRequestOutput """ Result of query tokenWallet. Of type TokensWalletOutput in case of success, otherwise one of the errors. """ union WalletUnion = TokenWalletOutput | SubscriptionErrorOperationNotAllowedOutput | SubscriptionErrorFeatureNotAvailableOutput | SubscriptionErrorAccountNotSyncedOutput | SubscriptionNoValidIsoCountryFoundOutput union _Entity = AddressHspcOutput | AddressLtsOutput | AddressOgc3DOutput | AddressCogOutput | AddressCubemapJsonOutput | AddressDownloadableOutput | AddressWmsOutput | AddressWmtsOutput | AddressWfsOutput | AddressPanoramicOutput | AddressDownloadOutput | LimitingBoxAnnotationOutput | ArtifactKindPointCloudOutput | ArtifactKindMeshOutput | ArtifactKindPanoramicOutput | ProcessingPipelineFailedInfoOutput | ArtifactStatusProcessingOutput | AssetOutput | StreamingSubscriptionOutput | SimpleUserProfileOutput | FloorPlanOutput | GeoreferenceArtifactResultOutput | UsageOutput | AccountUsageOutput | UsageTenantOutput | AddressPageOutput | ArtifactItemOutput | VisibleArtifactPayloadsOutput | ArtifactPayloadOutput | GroupedAssetOutput | LabelAnnotationOutput | MeasurementAnnotationOutput | AccountInfoOutput | SimpleAccountInfoOutput | UserProfileOutput | OrderGQL | OrderItemGQL | ProjectOutput | ProjectMemberOutput | SceneNodeSubscriptionOutput | SceneOutput | SceneRootNodeOutput | SceneGroupNodeOutput | SceneLeafNodeOutput | SearchOutput | FolderOutput | JobPage | JobSummaryGQL | FileOutput | LevelOutput