# Available Policy Workflow Blocks

## Available Policy Workflow Blocks&#x20;

<table><thead><tr><th width="251" align="center">Block</th><th align="center">Definition</th><th width="242.33333333333331" align="center">Documentation Link</th></tr></thead><tbody><tr><td align="center">InterfaceContainerBlock</td><td align="center">A block which contains and organizes other blocks.</td><td align="center"><a href="available-policy-workflow-blocks/interfacecontainerblock">container-workflow-block</a></td></tr><tr><td align="center">PolicyRolesBlock</td><td align="center">A block which determines a role for the user.</td><td align="center"><a href="available-policy-workflow-blocks/policyrolesblock">roles-workflow-block</a></td></tr><tr><td align="center">InterfaceStepBlock</td><td align="center">Similar to the InterfaceContainerBlock, with the difference that it can only render a single child element.</td><td align="center"><a href="available-policy-workflow-blocks/interfacestepblock">step-workflow-block</a></td></tr><tr><td align="center">requestVCDocumentBlock</td><td align="center">A type of the block which creates a form from the schema, and sends the document to the server.</td><td align="center"><a href="available-policy-workflow-blocks/requestvcdocumentblock">request-workflow-block</a></td></tr><tr><td align="center">sendToGuardianBlock</td><td align="center">A type of the block which can save a new or updated document.</td><td align="center"><a href="available-policy-workflow-blocks/sendtoguardianblock">send-workflow-block</a></td></tr><tr><td align="center">reassigningBlock</td><td align="center">A type of block which re-signs the document and change the user to document owner.</td><td align="center"><a href="available-policy-workflow-blocks/reassigningblock">reassigningblock</a></td></tr><tr><td align="center">InformationBlock</td><td align="center">A block type which can display a notification or a progress bar.</td><td align="center"><a href="available-policy-workflow-blocks/informationblock">information-workflow-block</a></td></tr><tr><td align="center">InterfaceDocumentsSourceBlock</td><td align="center">A block type which outputs information from the DB as grid.</td><td align="center"><a href="available-policy-workflow-blocks/interfacedocumentssourceblock">interfacedocumentssourceblock</a></td></tr><tr><td align="center">paginationAddon</td><td align="center">A block type which adds pagination to the InterfaceDocumentSourceBlock if added</td><td align="center"><a href="available-policy-workflow-blocks/paginationaddon">paginationaddon</a></td></tr><tr><td align="center">DocumentsSourceAddOn</td><td align="center">A type of block for searching VC as grid</td><td align="center"><a href="available-policy-workflow-blocks/documentssourceaddon">documentssourceaddonblock</a></td></tr><tr><td align="center">filtersAddOnBlock</td><td align="center">A child block for 'DocumentsSourceAddon'. Contains additional dynamic filters</td><td align="center"><a href="available-policy-workflow-blocks/filtersaddonblock">filtersaddonblock</a></td></tr><tr><td align="center">InterfaceActionBlock</td><td align="center">A block to create custom actions.</td><td align="center"><a href="available-policy-workflow-blocks/interfaceactionblock">action-workflow-block</a></td></tr><tr><td align="center">externalDataBlock</td><td align="center">Receives data from the external source and passes them over the the next block.</td><td align="center"><a href="available-policy-workflow-blocks/externaldatablock">external-data-workflow-block</a></td></tr><tr><td align="center">retirementDocumentBlock</td><td align="center">Receives the VC from the previous block and retires based on the rule(s).</td><td align="center"><a href="available-policy-workflow-blocks/retirementdocumentblock">retirementdocumentblock</a></td></tr><tr><td align="center">calculateContainerBlock &#x26; calculateMathAddonBlock</td><td align="center">The blocks to calculate. calculateContainerBlock: Receives VC from the previous block. Passes the new VC to the next block.<br>calculateMathOnBlock: Child block for 'calculateContainerBlock'. Contains descriptions of variables and formulas.</td><td align="center"><a href="available-policy-workflow-blocks/calculatecontainerblock-and-calculatemathaddonblock">calculatecontainerblock-and-calculatemathaddonblock</a></td></tr><tr><td align="center">reportBlock</td><td align="center">The block container for TrustChain.</td><td align="center"><a href="available-policy-workflow-blocks/reportblock-and-reportitemblock">reportblock-and-reportitemblock</a></td></tr><tr><td align="center">reportItemBlock</td><td align="center">The block for setting up the elements of the TrustChain.</td><td align="center"><a href="available-policy-workflow-blocks/reportblock-and-reportitemblock">reportblock-and-reportitemblock</a></td></tr><tr><td align="center">Switch Block</td><td align="center">This block transfers execution to one or more blocks depending on the parameters</td><td align="center"><a href="available-policy-workflow-blocks/switchblock">switchblock</a></td></tr><tr><td align="center">timerBlock</td><td align="center">timer object which triggers the event</td><td align="center"><a href="available-policy-workflow-blocks/timerblock">timerblock</a></td></tr><tr><td align="center">aggregateDocumentBlock</td><td align="center">block responsible for aggregation of the documents</td><td align="center"><a href="available-policy-workflow-blocks/aggregatedocumentblock">aggregatedocumentblock</a></td></tr><tr><td align="center">revocationBlock</td><td align="center">This Block finds related messages in policy topics, and revokes those messages and sends it to Hedera topic, but it doesn’t save documents in DB</td><td align="center"><a href="available-policy-workflow-blocks/revocationblock">revocationBlock</a></td></tr><tr><td align="center">setRelationshipsBlock</td><td align="center">Contains DocumentSourceAddOn Block and set relationships for input document.</td><td align="center"><a href="available-policy-workflow-blocks/setrelationshipsblock">setrelationshipsblock</a></td></tr><tr><td align="center">buttonBlock</td><td align="center">Block responsible for creating buttons</td><td align="center"><a href="available-policy-workflow-blocks/button-block">buttonblock</a></td></tr><tr><td align="center">documentValidatorBlock</td><td align="center">Block to validate documents, including linked documents</td><td align="center"><a href="available-policy-workflow-blocks/documentvalidatorblock">documentvalidatorblock</a></td></tr><tr><td align="center">tokenActionBlock</td><td align="center">Block is responsible to automation actions related to tokens</td><td align="center"><a href="available-policy-workflow-blocks/tokenactionblock">tokenactionblock</a></td></tr><tr><td align="center">tokenConfirmationBlock</td><td align="center">Block enables the owner of the private key for the account to manually perform operations with the token</td><td align="center"><a href="available-policy-workflow-blocks/tokenconfirmationblock">tokenconfirmationblock</a></td></tr><tr><td align="center">mintDocumentBlock</td><td align="center">Block is responsible for adding configurations on calculating the amount of tokens to be minted.</td><td align="center"><a href="available-policy-workflow-blocks/mintdocumentblock">mintdocumentblock</a></td></tr><tr><td align="center">groupManagerBlock</td><td align="center">Block allows to manage group membership, add and remove users from the group.</td><td align="center"><a href="available-policy-workflow-blocks/groupmanagerblock">groupmanagerblock</a></td></tr><tr><td align="center">multiSignBlock</td><td align="center">This block provides a way to specify multiple signators for a single VC document, and then create a VP based on it.</td><td align="center"><a href="available-policy-workflow-blocks/multisignblock">multisignblock</a></td></tr><tr><td align="center">customLogicBlock</td><td align="center">This block is used to perform Logic</td><td align="center"><a href="available-policy-workflow-blocks/customlogicblock">customlogicblock</a></td></tr><tr><td align="center">splitBlock</td><td align="center">This block allows to accumulate VC documents and produce new VCs in fixed chunks</td><td align="center"><br><a href="available-policy-workflow-blocks/splitblock">splitblock</a></td></tr><tr><td align="center">create Token Block</td><td align="center">This block is used to create Token template</td><td align="center"><a href="available-policy-workflow-blocks/create-token-block">create Token Block</a></td></tr><tr><td align="center">Impact Addon</td><td align="center">This Addon is for the mint block which allows to add additional info for the token being created.</td><td align="center"><a href="available-policy-workflow-blocks/impact-addon">Impact Addon</a></td></tr><tr><td align="center">HttpRequestBlock</td><td align="center">This block is used to retrieve information from outside</td><td align="center"><a href="available-policy-workflow-blocks/http-request-block">HttpRequestBlock</a></td></tr><tr><td align="center">historyAddOn</td><td align="center">This block turn on history on interfaceDocumentsSourceBlock.</td><td align="center"><a href="available-policy-workflow-blocks/historyaddon">historyAddOn</a></td></tr><tr><td align="center">selective Attributes Block</td><td align="center">This will filter attributes (option field) in documents returned by documentsSourceAddon.</td><td align="center"><a href="available-policy-workflow-blocks/selectiveattributes-block">selectiveAttributes Block</a></td></tr><tr><td align="center">tagsManagerBlock</td><td align="center">This Block is responsible for managing tags in policies.</td><td align="center"><a href="available-policy-workflow-blocks/tagsmanagerblock">tagsManagerBlock</a></td></tr><tr><td align="center">extractDataBlock</td><td align="center">This Block provides means to extract a data set which corresponds to any of these embedded schemas </td><td align="center"><a href="available-policy-workflow-blocks/extractdatablock">extractDataBlock</a></td></tr><tr><td align="center">Data Transformation Addon</td><td align="center"><p>This Block produces a transformed result based on the data from the source</p><p>and filters blocks</p></td><td align="center"><a href="available-policy-workflow-blocks/data-transformation-addon">Data Transformation Addon</a></td></tr><tr><td align="center">button block Addon</td><td align="center">This block is used to display interactive buttons</td><td align="center"><a href="available-policy-workflow-blocks/button-blockon-addon">buttonblockAddon</a></td></tr><tr><td align="center">Dropdown Block Addon</td><td align="center">The block is to display an interactive dropdown menu</td><td align="center"><a href="available-policy-workflow-blocks/dropdown-block-addon-dropdownblockaddon">dropdownblockaddon</a></td></tr><tr><td align="center">RequestVC Document Block Addon</td><td align="center">This block is to display an interactive button in the interfaceDocumentsSourceBlock.</td><td align="center"><a href="available-policy-workflow-blocks/request-vc-document-block-addon-requestvcdocumentblockaddon">requestVCDocumentBlockAddon</a></td></tr><tr><td align="center">IntegrationButtonBlock</td><td align="center">This block enable interaction with third-party data providers</td><td align="center"><a href="available-policy-workflow-blocks/integrationbuttonblock">IntegrationButton</a></td></tr><tr><td align="center">Global Events Reader Block</td><td align="center">This block subscribes to global topics and routes incoming events into policy branches</td><td align="center"><a href="available-policy-workflow-blocks/global-events-reader-block">Global Events Reader</a></td></tr><tr><td align="center">Global Events Writer Block</td><td align="center">This block publishes document references to one or more global Hedera topics</td><td align="center"><a href="available-policy-workflow-blocks/global-events-writer-block">Global Events Writer</a></td></tr></tbody></table>
