Automate Trello Integration Tasks from PowerShell

Ready to get started?

Download a free trial:

Download Now

Learn more:

Trello ADO.NET Provider

Rapidly create and deploy powerful .NET applications that integrate with Trello data including Lists, Cards, Boards, and more!

Are you looking for a quick and easy way to access Trello data from PowerShell? We show how to use the Cmdlets for Trello and the CData ADO.NET Provider for Trello to connect to Trello data and synchronize, automate, download, and more.

The CData Cmdlets for Trello are standard PowerShell cmdlets that make it easy to accomplish data cleansing, normalization, backup, and other integration tasks by enabling real-time access to Trello.

Cmdlets or ADO.NET?

The cmdlets are not only a PowerShell interface to the Trello API, but also an SQL interface; this tutorial shows how to use both to retrieve Trello data. We also show examples of the ADO.NET equivalent, which is possible with the CData ADO.NET Provider for Trello. To access Trello data from other .NET applications, like LINQPad, use the CData ADO.NET Provider for Trello.

After obtaining the needed connection properties, accessing Trello data in PowerShell consists of three basic steps.

Trello uses token-based authentication to grant third-party applications access to their API. When a user has granted an application access to their data, the application is given a token that can be used to make requests to Trello's API.

Trello's API can be accessed in 2 different ways. The first is using Trello's own Authorization Route, and the second is using OAuth1.0.

  • Authorization Route: At the moment of registration, Trello assigns an API key and Token to the account. See the Help documentation for information on how to connect via the Authorization route.
  • OAuth Route: Similar to using Authorization, OAuth creates an Application Id and Secret when you create your account. See the Help documentation for information on how to to connect.


  1. Install the module:

    Install-Module TrelloCmdlets
  2. Connect:

    $trello = Connect-Trello -APIKey "$APIKey" -Token "$Token"
  3. Search for and retrieve data:

    $name = "Public Board" $boards = Select-Trello -Connection $trello -Table "Boards" -Where "Name = `'$Name`'" $boards

    You can also use the Invoke-Trello cmdlet to execute SQL commands:

    $boards = Invoke-Trello -Connection $trello -Query 'SELECT * FROM Boards WHERE Name = @Name' -Params @{'@Name'='Public Board'}


  1. Load the provider's assembly:

    [Reflection.Assembly]::LoadFile("C:\Program Files\CData\CData ADO.NET Provider for Trello\lib\System.Data.CData.Trello.dll")
  2. Connect to Trello:

    $conn= New-Object System.Data.CData.Trello.TrelloConnection("APIKey=myApiKey;Token=myGeneratedToken;InitiateOAuth=GETANDREFRESH") $conn.Open()
  3. Instantiate the TrelloDataAdapter, execute an SQL query, and output the results:

    $sql="SELECT BoardId, Name from Boards" $da= New-Object System.Data.CData.Trello.TrelloDataAdapter($sql, $conn) $dt= New-Object System.Data.DataTable $da.Fill($dt) $dt.Rows | foreach { Write-Host $_.boardid $ }