# InterfaceStepBlock

### Properties

| Block Property | Definition                                                                                                      | Example Input                              | Status |
| -------------- | --------------------------------------------------------------------------------------------------------------- | ------------------------------------------ | ------ |
| type           | Similar to the **InterfaceContainer**Block, with the difference that it can only render a single child element. | **InterfaceStepBlock** (Can't be changed). |        |
| tag            | Unique name for the logic block.                                                                                | CSD01 Document.                            |        |
| permissions    | Which entity has rights to interact at this part of the workflow.                                               | Standard Registry.                         |        |
| defaultActive  | Shows whether this block is active at this time and whether it needs to be shown.                               | Checked or unchecked.                      |        |
| cyclic         | Go back one step to enable the creation of the previous object.                                                 | Checked or unchecked.                      |        |

{% hint style="info" %}
RefreshEvents are used to refreshing the UI, instead of "dependencies" property.
{% endhint %}

### Events

| Property Name | Name in JSON | Property Value                                                    | Value in JSON                                                                                                                   | Description |
| ------------- | ------------ | ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ----------- |
| Event Type    | -            | <p>Input Event</p><p>Output Event</p>                             | Type of the event - determines whether this is ingress or egress event for the current block.                                   |             |
| Source        | "source"     | Block tag(string)                                                 | The block which initiates the event.                                                                                            |             |
| Target        | "target"     | Block tag(string)                                                 | The block which receives the event.                                                                                             |             |
| Output Event  | "output"     | Event name(string)                                                | Action or issue that caused the event.                                                                                          |             |
| Input Event   | "input"      | Event name(string)                                                | Action which will be triggered by the event.                                                                                    |             |
| Event Actor   | "actor"      | <p>Event Initiator</p><p>Document Owner</p><p>Document Issuer</p> | Allows to transfer control of the block (execution context) to another user. Empty field leaves control at the Event Initiator. |             |
| Disabled      | "disabled"   | True/False                                                        | Allows to disable the event without deleting it.                                                                                |             |

To know more information about events, please look at [Events](/guardian-dev/guardian/standard-registry/policies/policy-creation/introduction/events.md).

### API Parameters

<mark style="color:blue;">`GET`</mark> `/policies/{policyId}/blocks/{uuid}`

#### Path Parameters

| Name                                       | Type   | Description |
| ------------------------------------------ | ------ | ----------- |
| policyId<mark style="color:red;">\*</mark> | String | Policy ID   |
| uuid<mark style="color:red;">\*</mark>     | String | Block UUID  |

{% tabs %}
{% tab title="200: OK Successful Operation" %}

```javascript
{
  "uiMetaData": {
    "type": "blank"
  },
  "index": 8,
  "id": "92fdc241-da15-46cb-9153-d223aeb61c5a",
  "blockType": "interfaceStepBlock",
  "blocks": [
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    {
      "uiMetaData": {
        "type": "tabs"
      },
      "content": "interfaceContainerBlock",
      "blockType": "interfaceContainerBlock",
      "id": "768d5fae-a907-4566-aa87-62f6929a03c7"
    },
    null,
    null,
    null,
    null,
    null
  ]
}

```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://guardian.hedera.com/guardian-dev/guardian/standard-registry/policies/policy-creation/introduction/step-workflow-block.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
