kestra-io / kestra-io/plugin-trello

Create returns nothing despite documenting a card ID, and API credentials are grouped as main

Open
#48 0 comments 0 reactions 1 assignee Claimed by @jymaire View on GitHub
area/plugin kind/highlight kind/quick-win
Dominant language
Java
Stars
0
Forks
2
Avg merge
19h 6m
Merged PRs (30d)
3

Description

## Problem 1 — the documented card ID is never returned

`io.kestra.plugin.trello.cards.Create` describes itself as:

> "Creates one card in the target Trello list **and returns the new card ID**."

Its outputs schema is empty. Nothing is returned, so the documentation and the behaviour disagree and
no later task can reference the card that was just created.

Compare the other ticketing plugins:

| Task | Outputs |
|---|---|
| `io.kestra.plugin.github.issues.Create` | `issueNumber`, `issueUrl` |
| `io.kestra.plugin.gitlab.issues.Create` | `issueId`, `webUrl` |
| `io.kestra.plugin.zendesk.tickets.Create` | `id`, `url` |
| `io.kestra.plugin.trello.cards.Create` | *(nothing)* |

Trello's `POST /1/cards` response carries `id`, `shortLink` and `shortUrl`, so the card id and a
browsable URL are both available at the point they are currently discarded.

### Why it matters

Anything acting on the card after creating it is impossible: commenting on it, moving it, or posting
its link. This blocks linking an external ticket to a Kestra EE case
(https://github.com/kestra-io/kestra-ee/issues/10859), where the pattern is to create the ticket and
pass its key and URL to a follow-up task.

## Problem 2 — the API credentials are grouped as `main`

| Property | Current group | Expected | Why |
|---|---|---|---|
| `apiKey` | `main` | `connection` | It is a credential. `apiBaseUrl` is already `connection`. |
| `apiToken` | `main` | `connection` | Same. |
| `listId` | `main` | `destination` | It says *where* the card goes. The equivalent in `plugin-github`, `repository`, is `destination`. |
| `desc` | `advanced` | `main` | It is the card body. `name` is already `main`. |
| `apiVersion` | `advanced` | `connection` | It is part of the API base URL. |

`$group` is what tells the UI which section to render a property under, and what any schema-driven
consumer reads to tell credentials apart from parameters. Kestra is building a form that configures a
ticketing system from a task's connection properties; Trello would render with its key and token
presented as ordinary parameters next to the card name.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.