Skip to main content
Query the list of provider connections for a workspace. This allows you to see all integrations configured for a workspace and their current connection status.
query GetWorkspaceConnections($workspaceId: ID!, $filters: ConnectionFilters, $limit: Int, $offset: Int, $sortBy: SortBy) {
  me {
    workspaces(filters: { ids: [$workspaceId] }) {
      id
      connections(filters: $filters, limit: $limit, offset: $offset, sortBy: $sortBy) {
        id
        providerKey
        status
        provider {
          category
        }
      }
    }
  }
}
Query Pattern: Connections are accessed through the Workspace type. Query workspaces, then access the connections field to get all provider connections.

Arguments

workspaceId
ID!
required
The ID of the workspace to query connections for.
filters
ConnectionFilters
Optional filters to narrow down the connections returned.
limit
Int
Maximum number of connections to return.
offset
Int
Number of connections to skip for pagination.
sortBy
SortBy
Optional sorting configuration.

Returns

id
ID!
Unique identifier for the connection.
providerKey
String!
The provider key identifying the integration type (e.g., canopy, taxdome, karbon, google_drive, sharepoint).
status
String!
Current status of the connection. Common values include:
  • active - Connection is working and authenticated
  • pending - Connection setup is in progress
  • failed - Connection has failed or credentials are invalid
  • disconnected - Connection has been disconnected
provider.category
String!
The category of the provider. Common values include:
  • practice_management - Practice management systems (e.g., Canopy, TaxDome, Karbon)
  • document_management - Document storage providers (e.g., Google Drive, SharePoint)
  • tax_software - Tax preparation software (e.g., Drake, UltraTax, Lacerte)

Example

curl -X POST https://gateway.filed.com/graphql \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <accessToken>" \
  -d '{
    "query": "query GetWorkspaceConnections($workspaceId: ID!, $filters: ConnectionFilters) { me { workspaces(filters: { ids: [$workspaceId] }) { id connections(filters: $filters) { id providerKey status provider { category } } } } }",
    "variables": {
      "workspaceId": "workspace_123456",
      "filters": {
        "statuses": ["active"]
      }
    }
  }'
{
  "data": {
    "me": {
      "workspaces": [
        {
          "id": "workspace_123456",
          "connections": [
            {
              "id": "conn_abc123",
              "providerKey": "canopy",
              "status": "active",
              "provider": {
                "category": "practice_management"
              }
            },
            {
              "id": "conn_def456",
              "providerKey": "google_drive",
              "status": "active",
              "provider": {
                "category": "document_management"
              }
            },
            {
              "id": "conn_ghi789",
              "providerKey": "taxdome",
              "status": "pending",
              "provider": {
                "category": "practice_management"
              }
            }
          ]
        }
      ]
    }
  }
}

Additional Fields

The ProviderConnection type includes additional fields you can query:
query GetWorkspaceConnectionsDetailed($workspaceId: ID!) {
  me {
    workspaces(filters: { ids: [$workspaceId] }) {
      id
      connections {
        id
        providerKey
        status
        displayName
        createdAt
        updatedAt
        provider {
          name
          category
        }
      }
    }
  }
}
displayName
String
Human-readable name for the connection.
createdAt
Date!
Timestamp when the connection was created.
updatedAt
Date!
Timestamp when the connection was last updated.
provider
Provider!
Provider details including name and category.

Troubleshooting

Problem: No connections returned or empty list Solutions:
  • Verify the workspace ID is correct
  • Check that connections have been set up for this workspace
  • Review filters to ensure they aren’t excluding all connections
Problem: Connection shows failed status Solutions:
  • The connection credentials may have expired or been revoked
  • Re-authenticate the connection using start provider connection
  • Check the provider’s settings or permissions
To set up a new connection, use start provider connection. To complete authentication, use collect provider connection.