Sample code for 30+ languages & platforms
Visual FoxPro

Trello List Member Boards

See more Trello Examples

Lists the boards that the user is a member of.

For more information, see https://developers.trello.com/reference#membersidboards

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loJsonToken
LOCAL loOauth1
LOCAL loRest
LOCAL lnBAutoReconnect
LOCAL lcResponseBody
LOCAL loJarr
LOCAL i
LOCAL lnCount_i
LOCAL loJson
LOCAL lcName
LOCAL lcDesc
LOCAL lcDescData
LOCAL lnClosed
LOCAL lcIdOrganization
LOCAL lcLimits
LOCAL lcPinned
LOCAL lcShortLink
LOCAL lcDateLastActivity
LOCAL lcDatePluginDisable
LOCAL lcCreationMethod
LOCAL lcIxUpdate
LOCAL lcId
LOCAL lnStarred
LOCAL lcUrl
LOCAL lcPrefsPermissionLevel
LOCAL lcPrefsVoting
LOCAL lcPrefsComments
LOCAL lcPrefsInvitations
LOCAL lnPrefsSelfJoin
LOCAL lnPrefsCardCovers
LOCAL lcPrefsCardAging
LOCAL lnPrefsCalendarFeedEnabled
LOCAL lcPrefsBackground
LOCAL lcPrefsBackgroundImage
LOCAL lnPrefsBackgroundTile
LOCAL lcPrefsBackgroundBrightness
LOCAL lcPrefsBackgroundBottomColor
LOCAL lcPrefsBackgroundTopColor
LOCAL lnPrefsCanBePublic
LOCAL lnPrefsCanBeEnterprise
LOCAL lnPrefsCanBeOrg
LOCAL lnPrefsCanBePrivate
LOCAL lnPrefsCanInvite
LOCAL lnSubscribed
LOCAL lcLabelNamesGreen
LOCAL lcLabelNamesYellow
LOCAL lcLabelNamesOrange
LOCAL lcLabelNamesRed
LOCAL lcLabelNamesPurple
LOCAL lcLabelNamesBlue
LOCAL lcLabelNamesSky
LOCAL lcLabelNamesLime
LOCAL lcLabelNamesPink
LOCAL lcLabelNamesBlack
LOCAL lcDateLastView
LOCAL lcShortUrl
LOCAL lcPrefsBackgroundImageScaled
LOCAL lcPrefsBackgroundColor
LOCAL j
LOCAL lnCount_j
LOCAL lnWidth
LOCAL lnHeight
LOCAL lcIdMember
LOCAL lcMemberType
LOCAL lnUnconfirmed
LOCAL lnDeactivated

lnSuccess = 0

* This example assumes the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.

* curl --request GET \
*   --url 'https://api.trello.com/1/members/{member_id}/boards?filter=all&fields=all&lists=none&memberships=none&organization=false&organization_fields=displayName'

* First get our previously obtained access token.
loJsonToken = CreateObject('Chilkat.JsonObject')
lnSuccess = loJsonToken.LoadFile("qa_data/tokens/trello.json")

loOauth1 = CreateObject('Chilkat.OAuth1')
loOauth1.ConsumerKey = "TRELLO_CONSUMER_KEY"
loOauth1.ConsumerSecret = "TRELLO_CONSUMER_SECRET"
loOauth1.Token = loJsonToken.StringOf("oauth_token")
loOauth1.TokenSecret = loJsonToken.StringOf("oauth_token_secret")

loRest = CreateObject('Chilkat.Rest')

* Connect using TLS.
* A single REST object, once connected, can be used for many Trello REST API calls.
* The auto-reconnect indicates that if the already-established HTTPS connection is closed,
* then it will be automatically re-established as needed.
lnBAutoReconnect = 1
lnSuccess = loRest.Connect("api.trello.com",443,1,lnBAutoReconnect)
IF (lnSuccess <> 1) THEN
    ? loRest.LastErrorText
    RELEASE loJsonToken
    RELEASE loOauth1
    RELEASE loRest
    CANCEL
ENDIF

loRest.SetAuthOAuth1(loOauth1,0)

loRest.AddQueryParam("filter","all")
loRest.AddQueryParam("fields","all")
loRest.AddQueryParam("lists","none")
loRest.AddQueryParam("memberships","normal")
loRest.AddQueryParam("organization","false")
loRest.AddQueryParam("organization_fields","name,displayName")

loRest.AddHeader("Accept","application/json")

lcResponseBody = loRest.FullRequestNoBody("GET","/1/members/member_id/boards")
IF (loRest.LastMethodSuccess <> 1) THEN
    ? loRest.LastErrorText
    RELEASE loJsonToken
    RELEASE loOauth1
    RELEASE loRest
    CANCEL
ENDIF

* We should expect a 200 response if successful.
IF (loRest.ResponseStatusCode <> 200) THEN
    ? "Request Header: "
    ? loRest.LastRequestHeader
    ? "----"
    ? "Response StatusCode = " + STR(loRest.ResponseStatusCode)
    ? "Response StatusLine: " + loRest.ResponseStatusText
    ? "Response Header:"
    ? loRest.ResponseHeader
    ? lcResponseBody
    RELEASE loJsonToken
    RELEASE loOauth1
    RELEASE loRest
    CANCEL
ENDIF

loJarr = CreateObject('Chilkat.JsonArray')
loJarr.Load(lcResponseBody)
loJarr.EmitCompact = 0
? loJarr.Emit()
? "Success."

* A sample JSON response:
* (See the parsing code below...)

* Use this online tool to generate parsing code from sample JSON: 
* Generate Parsing Code from JSON

* [
*   {
*     "name": "House Projects",
*     "desc": "",
*     "descData": null,
*     "closed": false,
*     "idOrganization": null,
*     "limits": null,
*     "pinned": null,
*     "shortLink": "j1hkQKKS",
*     "powerUps": [
*     ],
*     "dateLastActivity": null,
*     "idTags": [
*     ],
*     "datePluginDisable": null,
*     "creationMethod": null,
*     "ixUpdate": null,
*     "id": "5cc5fe862106bb8e05aa41e7",
*     "starred": false,
*     "url": "https://trello.com/b/j1hkQKKS/house-projects",
*     "prefs": {
*       "permissionLevel": "private",
*       "voting": "disabled",
*       "comments": "members",
*       "invitations": "members",
*       "selfJoin": false,
*       "cardCovers": true,
*       "cardAging": "regular",
*       "calendarFeedEnabled": false,
*       "background": "5cc344f6ba4cdc5f5cfc7d81",
*       "backgroundImage": "https://trello-backgrounds.s3.amazonaws.com/SharedBackground/2560x1709/4418c78f2f66d26932fef88aead2aff5/photo-1555985202-12975b0235dc",
*       "backgroundImageScaled": [
*         {
*           "width": 140,
*           "height": 93,
*           "url": "https://trello-backgrounds.s3.amazonaws.com/SharedBackground/140x93/0aebced0ac2d8c9c4b9231b1960d28c2/photo-1555985202-12975b0235dc.jpg"
*         },
*  ...
*         {
*           "width": 2560,
*           "height": 1709,
*           "url": "https://trello-backgrounds.s3.amazonaws.com/SharedBackground/2560x1709/4418c78f2f66d26932fef88aead2aff5/photo-1555985202-12975b0235dc"
*         }
*       ],
*       "backgroundTile": false,
*       "backgroundBrightness": "dark",
*       "backgroundBottomColor": "#412f23",
*       "backgroundTopColor": "#a99d97",
*       "canBePublic": true,
*       "canBeEnterprise": true,
*       "canBeOrg": true,
*       "canBePrivate": true,
*       "canInvite": true
*     },
*     "subscribed": false,
*     "labelNames": {
*       "green": "",
*       "yellow": "",
*       "orange": "",
*       "red": "",
*       "purple": "",
*       "blue": "",
*       "sky": "",
*       "lime": "",
*       "pink": "",
*       "black": ""
*     },
*     "dateLastView": "2019-04-28T19:28:18.159Z",
*     "shortUrl": "https://trello.com/b/j1hkQKKS",
*     "memberships": [
*       {
*         "id": "5cc5fe862106bb8e05aa41e8",
*         "idMember": "5cc5c74067d5215921ca7677",
*         "memberType": "admin",
*         "unconfirmed": false,
*         "deactivated": false
*       }
*     ]
*   },
*   {
*     "name": "Vacation Planning",
*     "desc": "",
*     "descData": null,
*     "closed": false,
*     "idOrganization": null,
*     "limits": null,
*     "pinned": null,
*     "shortLink": "QqIHvQyz",
*     "powerUps": [
*     ],
*     "dateLastActivity": "2019-04-28T15:32:20.134Z",
*     "idTags": [
*     ],
*     "datePluginDisable": null,
*     "creationMethod": "assisted",
*     "ixUpdate": null,
*     "id": "5cc5c783f5b10f8717a6b3d6",
*     "starred": false,
*     "url": "https://trello.com/b/QqIHvQyz/vacation-planning",
*     "prefs": {
*       "permissionLevel": "private",
*       "voting": "disabled",
*       "comments": "members",
*       "invitations": "members",
*       "selfJoin": true,
*       "cardCovers": true,
*       "cardAging": "regular",
*       "calendarFeedEnabled": false,
*       "background": "lime",
*       "backgroundImage": null,
*       "backgroundImageScaled": null,
*       "backgroundTile": false,
*       "backgroundBrightness": "dark",
*       "backgroundColor": "#4BBF6B",
*       "backgroundBottomColor": "#4BBF6B",
*       "backgroundTopColor": "#4BBF6B",
*       "canBePublic": true,
*       "canBeEnterprise": true,
*       "canBeOrg": true,
*       "canBePrivate": true,
*       "canInvite": true
*     },
*     "subscribed": false,
*     "labelNames": {
*       "green": "",
*       "yellow": "",
*       "orange": "",
*       "red": "",
*       "purple": "",
*       "blue": "",
*       "sky": "",
*       "lime": "",
*       "pink": "",
*       "black": ""
*     },
*     "dateLastView": "2019-04-28T19:32:21.009Z",
*     "shortUrl": "https://trello.com/b/QqIHvQyz",
*     "memberships": [
*       {
*         "id": "5cc5c783f5b10f8717a6b3d7",
*         "idMember": "5cc5c74067d5215921ca7677",
*         "memberType": "admin",
*         "unconfirmed": false,
*         "deactivated": false
*       }
*     ]
*   }
* ]

i = 0
lnCount_i = loJarr.Size
DO WHILE i < lnCount_i
    loJson = loJarr.ObjectAt(i)
    lcName = loJson.StringOf("name")
    lcDesc = loJson.StringOf("desc")
    lcDescData = loJson.StringOf("descData")
    lnClosed = loJson.BoolOf("closed")
    lcIdOrganization = loJson.StringOf("idOrganization")
    lcLimits = loJson.StringOf("limits")
    lcPinned = loJson.StringOf("pinned")
    lcShortLink = loJson.StringOf("shortLink")
    lcDateLastActivity = loJson.StringOf("dateLastActivity")
    lcDatePluginDisable = loJson.StringOf("datePluginDisable")
    lcCreationMethod = loJson.StringOf("creationMethod")
    lcIxUpdate = loJson.StringOf("ixUpdate")
    lcId = loJson.StringOf("id")
    lnStarred = loJson.BoolOf("starred")
    lcUrl = loJson.StringOf("url")
    lcPrefsPermissionLevel = loJson.StringOf("prefs.permissionLevel")
    lcPrefsVoting = loJson.StringOf("prefs.voting")
    lcPrefsComments = loJson.StringOf("prefs.comments")
    lcPrefsInvitations = loJson.StringOf("prefs.invitations")
    lnPrefsSelfJoin = loJson.BoolOf("prefs.selfJoin")
    lnPrefsCardCovers = loJson.BoolOf("prefs.cardCovers")
    lcPrefsCardAging = loJson.StringOf("prefs.cardAging")
    lnPrefsCalendarFeedEnabled = loJson.BoolOf("prefs.calendarFeedEnabled")
    lcPrefsBackground = loJson.StringOf("prefs.background")
    lcPrefsBackgroundImage = loJson.StringOf("prefs.backgroundImage")
    lnPrefsBackgroundTile = loJson.BoolOf("prefs.backgroundTile")
    lcPrefsBackgroundBrightness = loJson.StringOf("prefs.backgroundBrightness")
    lcPrefsBackgroundBottomColor = loJson.StringOf("prefs.backgroundBottomColor")
    lcPrefsBackgroundTopColor = loJson.StringOf("prefs.backgroundTopColor")
    lnPrefsCanBePublic = loJson.BoolOf("prefs.canBePublic")
    lnPrefsCanBeEnterprise = loJson.BoolOf("prefs.canBeEnterprise")
    lnPrefsCanBeOrg = loJson.BoolOf("prefs.canBeOrg")
    lnPrefsCanBePrivate = loJson.BoolOf("prefs.canBePrivate")
    lnPrefsCanInvite = loJson.BoolOf("prefs.canInvite")
    lnSubscribed = loJson.BoolOf("subscribed")
    lcLabelNamesGreen = loJson.StringOf("labelNames.green")
    lcLabelNamesYellow = loJson.StringOf("labelNames.yellow")
    lcLabelNamesOrange = loJson.StringOf("labelNames.orange")
    lcLabelNamesRed = loJson.StringOf("labelNames.red")
    lcLabelNamesPurple = loJson.StringOf("labelNames.purple")
    lcLabelNamesBlue = loJson.StringOf("labelNames.blue")
    lcLabelNamesSky = loJson.StringOf("labelNames.sky")
    lcLabelNamesLime = loJson.StringOf("labelNames.lime")
    lcLabelNamesPink = loJson.StringOf("labelNames.pink")
    lcLabelNamesBlack = loJson.StringOf("labelNames.black")
    lcDateLastView = loJson.StringOf("dateLastView")
    lcShortUrl = loJson.StringOf("shortUrl")
    lcPrefsBackgroundImageScaled = loJson.StringOf("prefs.backgroundImageScaled")
    lcPrefsBackgroundColor = loJson.StringOf("prefs.backgroundColor")
    j = 0
    lnCount_j = loJson.SizeOfArray("powerUps")
    DO WHILE j < lnCount_j
        loJson.J = j
        * ...
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("idTags")
    DO WHILE j < lnCount_j
        loJson.J = j
        * ...
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("prefs.backgroundImageScaled")
    DO WHILE j < lnCount_j
        loJson.J = j
        lnWidth = loJson.IntOf("prefs.backgroundImageScaled[j].width")
        lnHeight = loJson.IntOf("prefs.backgroundImageScaled[j].height")
        lcUrl = loJson.StringOf("prefs.backgroundImageScaled[j].url")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("memberships")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcId = loJson.StringOf("memberships[j].id")
        lcIdMember = loJson.StringOf("memberships[j].idMember")
        lcMemberType = loJson.StringOf("memberships[j].memberType")
        lnUnconfirmed = loJson.BoolOf("memberships[j].unconfirmed")
        lnDeactivated = loJson.BoolOf("memberships[j].deactivated")
        j = j + 1
    ENDDO
    RELEASE loJson
    i = i + 1
ENDDO

RELEASE loJsonToken
RELEASE loOauth1
RELEASE loRest
RELEASE loJarr