GoodData Execute

GoodData Execute

Certified

Execute a GoodData AFM analytics query

Posts an AFM (Analytical Framework Model) request to POST /api/v1/actions/workspaces/{workspaceId}/execution/afm/execute. Polls the execution result until completion and handles the result according to fetchType. Response bodies are limited to 10,000,000 characters (approximately 10 MB).

yaml
type: io.kestra.plugin.gooddata.executions.Execute

Execute a GoodData AFM query and store the result

yaml
id: executions_execute
namespace: company.team

tasks:
  - id: execute
    type: io.kestra.plugin.gooddata.executions.Execute
    url: "https://acme.cloud.gooddata.com"
    apiToken: "{{ secret('GOODDATA_TOKEN') }}"
    workspaceId: "my-workspace-id"
    fetchType: STORE
    afmRequest: |
      {
        "execution": {
          "measures": [
            {
              "localIdentifier": "m1",
              "definition": {
                "measure": {
                  "item": { "identifier": { "id": "revenue", "type": "metric" } }
                }
              }
            }
          ],
          "attributes": [],
          "filters": []
        },
        "resultSpec": {
          "dimensions": [
            { "itemIdentifiers": ["measureGroup"] }
          ]
        }
      }
Properties

AFM request JSON

The complete AFM (Analytical Framework Model) request body as a raw JSON string.

API token

Personal API token for authentication (sent as Authorization: Bearer ). Use a Kestra secret expression such as {{ secret('GOODDATA_TOKEN') }}.

GoodData host URL

Base URL of the GoodData Cloud or GoodData.CN instance, e.g. https://acme.cloud.gooddata.com

Workspace ID

The identifier of the GoodData workspace to execute the AFM query against.

Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.

Definitions
assetFailureBehaviorstring
Possible Values
IGNOREFAILWARN

Asset failure behavior

Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.

enableAutobooleanstring

Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.

inputsarray

The assets consumed as inputs.

id*string
Min length1
typestring
outputs

The assets produced as outputs.

id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*string
Min length1

Custom asset type

descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
DefaultSTORE
Possible Values
STOREFETCHFETCH_ONENONE

Fetch type

How to process execution results: STORE (store raw JSON in Kestra storage), FETCH (return all result rows), FETCH_ONE (return first row), or NONE. Defaults to STORE.

DefaultPT1M

Maximum polling duration

Maximum duration to poll for AFM execution completion before timing out. Defaults to PT60S.

DefaultPT1S

Poll interval

Interval between polling requests when waiting for AFM execution completion. Defaults to PT1S. Minimum is PT0.1S (100 ms).

DefaultPT1M

HTTP request timeout

Timeout duration for individual HTTP requests to the GoodData API. Defaults to PT60S.

Execution result ID

The execution result identifier returned by GoodData, extracted from executionResponse.links.executionResult.

Single row

First result row returned by the AFM query (when fetchType is FETCH_ONE).

Fetched rows

List of result rows returned by the AFM query (when fetchType is FETCH).

Result size

Number of data rows or elements returned in the result.

Formaturi

Raw response URI

Kestra internal file URI pointing to the full AFM execute result JSON (when fetchType is STORE).