---
title: "Get a block action catalog and input definitions"
method: GET
path: "/blocks/{type}"
tags: ["Blocks"]
---

# Get a block action catalog and input definitions

`GET /blocks/{type}`

## Request

- Base URL: `https://workflow.loopfour.ai/api/v1`
- URL: `https://workflow.loopfour.ai/api/v1/blocks/{type}`
- Auth: API key in header `x-api-key`

Call directly when the block type is known, avoiding the full catalog. For example, quickbooks exposes quickbooks.runReport and all reportType choices, date/filter inputs and report output fields. Requires workflows:read. Unknown or hidden block types return 404. Provider permissions and region availability are checked only during execution.

## Path parameters

- `type` string, required

## Response `200`

Success

- object
  - `success` unknown
  - `data` BlockMetadata
    - `type` string, required
    - `name` string, required
    - `description` string, required
    - `kind` 'core' | 'integrations' | 'triggers', required
    - `category` string
    - `connectionRequired` boolean, required
    - `links` object, required: Resolve against the API origin. Follow self for block details and collection to return to the catalog.
      - `self` string, uri-reference, required
      - `collection` string, uri-reference, required
    - `actions` string[], required: Action IDs declared by this block. Discover the deployed catalog at runtime.
    - `inputs` object[], required
      - `key` string, required
      - `type` 'string' | 'number' | 'boolean' | 'json' | 'array' | 'file', required
      - `description` string
      - `schema` object: Nested input schema, when declared by the block.
    - `outputs` string[], required
    - `subBlocks` object[], required: Field definitions. Join id to inputs.key for types and nested schemas. A required field applies only when visibleWhen matches.
      - `id` string, required
      - `title` string
      - `type` string, required: Authoring control type; the value type is in inputs.
      - `required` boolean
      - `requiredWhen` BlockFieldCondition
        - `field` string, required
        - `value` union, required: Match a scalar, or any member of an array. Negate with not; combine with and.
          - string
          - number
          - boolean
          - union[]
            - union
              - …
        - `not` boolean
        - `and` BlockFieldCondition (recursive)
      - `visibleWhen` BlockFieldCondition
        - `field` string, required
        - `value` union, required: Match a scalar, or any member of an array. Negate with not; combine with and.
          - string
          - number
          - boolean
          - union[]
            - union
              - …
        - `not` boolean
        - `and` BlockFieldCondition (recursive)
      - `options` object[]: Static choices, including all QuickBooks report names. Connection-dependent choices are not resolved.
        - `id` string, required
        - `label` string, required

## Other responses

- `400`: Bad request — invalid parameters or request body.
- `401`: Missing or invalid API key.
- `403`: Forbidden — insufficient permissions for this resource.
- `404`: Resource not found.
- `429`: Too many requests — rate limit exceeded.

---

[API](https://skmtc.dev/loopfour/apis/loopfour-workflows-api.md) - [All operations](https://skmtc.dev/loopfour/apis/loopfour-workflows-api/llms.txt) - [OpenAPI document](https://skmtc.dev/loopfour/apis/loopfour-workflows-api/revisions/872822a3af00?raw)
