Trello Grid Integration

The Trello Grid integration allows teams to view, search, add, inline-edit, archive/delete, and export cards from any Trello Board directly inside AppColab Grid.

Trello Live Grid Preview


What’s Deployed

Component Name Purpose
Named Credential Trello Connects to https://api.trello.com via Trello External Credential
External Credential Trello Custom authentication with Trello API key & OAuth token
Apex Client TrelloClient.cls REST client supporting getBoardCards, getBoardLists, createCard, updateCard, deleteCard
Apex Data Provider TrelloGridDataProvider.cls Implements appcg.GridDataProviderV1 and appcg.GridDataMutationProviderV1 with full CRUD
Permission Set Integration_Admin Grants access to Trello → ApiKey external credential principal

One-Time Manual Setup

1. Generate Your Trello API Key & Token

  1. Log into Trello and navigate to the Trello Power-Up / API Key Portal (or trello.com/app-key).
  2. Click New:
    • App Name: AppColab Integration
    • Select your Workspace and click Generate a new API Key.
  3. Copy your 32-character API Key (e.g. bacbd106d720a7ec...).
  4. Click the link beside it to generate a Token:
    • Authorize the integration on the prompt screen.
    • Copy the Token (e.g. ATTA...).

Trello API Key & Token Setup


2. Configure Credentials in Salesforce Setup

2.1 Create the External Credential

  1. Go to Setup (gear icon ⚙️ → Setup).
  2. In the Quick Find box, enter Named Credentials and select Named Credentials.
  3. Click the External Credentials tab → click New:
    • Label: Trello
    • Name: Trello
    • Authentication Protocol: Custom
    • Click Save.
  4. In the Principals section, click New:
    • Parameter Name: ApiKey
    • Sequence: 1
    • Click Save.
  5. In the Custom Headers section, click New:
    • Name: Authorization
    • Value:
      OAuth oauth_consumer_key="YOUR_API_KEY", oauth_token="YOUR_TOKEN"
      
      (Replace with your 32-character API key and token from Step 1)
    • Sequence Number: 1
    • Click Save.

Trello External Credential Setup

2.2 Create the Named Credential

  1. Click the Named Credentials tab (next to External Credentials) → click New:
    • Label: Trello
    • Name: Trello
    • URL: https://api.trello.com
    • External Credential: Select Trello
    • Generate Authorization Header: Checked
    • Allow Formulas in HTTP Header: Checked
  2. Click Save.

Trello Named Credential Setup


3. Assign Permission Set Access

  1. In Salesforce Setup, enter Permission Sets in Quick Find.
  2. Select Integration Admin (or Appcolab Grid Admin).
  3. Click External Credential Principal Access → click Edit.
  4. Add Trello - ApiKey to Enabled External Credential Principals.
  5. Click Save and verify the permission set is assigned to your Salesforce users.

Creating a Trello Grid Definition

  1. In Salesforce, open AppColab Grid app → Grid Definitions tab → click New Grid Definition.
  2. Fill in:
    • Grid Settings Name: Trello_Board_Cards
    • Grid Label: Trello Board Cards
    • Is Active?: Checked
    • Data Provider Class: TrelloGridDataProvider
    • Data Provider Configuration:
      {
        "boardId": "YOUR_BOARD_ID"
      }
      

      Tip: Extract your boardId from your Trello board URL: https://trello.com/b/660e1f4b8a9c/my-sprint-board

  3. Click Save & Next → proceed to Preview.
  4. Your Trello cards display live with Card Name, List Name, Due Date, Due Complete, Labels, and Members!

Trello Grid Definition


Supported Grid Features

Column Data Type Editable Notes
Card Name TEXT Yes Inline editable card title
List Name TEXT Read-only Which list/column the card belongs to (e.g. To Do, Doing, Done)
Due Date DATE Yes Card deadline date
Due Complete BOOLEAN Yes Checkbox toggle for completed cards
Description TEXT Yes Card details / notes
Labels TEXT Read-only Comma-separated label names

Troubleshooting

  • 401 Unauthorized / invalid key: Check your Authorization header format in the Trello External Credential. It must be OAuth oauth_consumer_key="...", oauth_token="..." with double quotes.
  • 404 Not Found / invalid id: Ensure your boardId string is copied accurately from your board URL.