Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Important
This feature is in Beta. To use it, a workspace admin must turn on Lakeflow Connect for Productboard from the Previews page. See Manage Azure Databricks previews.
The managed Productboard connector in Lakeflow Connect supports 18 source tables in the default schema. Only notes syncs incrementally, using the updatedAt cursor. The other 17 tables use full refresh.
Supported source tables
The Productboard connector supports the following source tables, all under the default source schema:
| Source table | Primary key | Description | Sync mode | Cursor field |
|---|---|---|---|---|
features |
id |
Features and subfeatures, with all built-in and custom field values. | Full refresh only | |
products |
id |
Products in the product hierarchy, with field values and the first page of relationships. | Full refresh only | |
components |
id |
Components in the product hierarchy, with field values. | Full refresh only | |
feature_statuses |
id |
The status values that can be assigned to features and subfeatures. | Full refresh only | |
notes |
id |
Customer feedback notes, with field values, archive state, and the first page of relationships. | Incremental | updatedAt |
companies |
id |
Companies, with field values and the first page of relationships. | Full refresh only | |
users |
id |
Users (customer contacts), with field values and the first page of relationships. | Full refresh only | |
members |
id |
Workspace members, including disabled members and members with pending invitations. | Full refresh only | |
release_groups |
id |
Release groups, with field values and the first page of relationships. | Full refresh only | |
releases |
id |
Releases, with field values and the first page of relationships. | Full refresh only | |
objectives |
id |
Objectives, with field values and the first page of relationships. | Full refresh only | |
key_results |
id |
Key results, with field values and the first page of relationships. | Full refresh only | |
initiatives |
id |
Initiatives, with field values and the first page of relationships. | Full refresh only | |
teams |
id |
Workspace teams. | Full refresh only | |
feature_relationships |
feature_id, target_id, relationship_type |
The complete set of relationships for each feature and subfeature, one row per relationship. | Full refresh only | |
component_relationships |
component_id, target_id, relationship_type |
The complete set of relationships for each component, one row per relationship. | Full refresh only | |
field_definitions |
id, entity_type |
Field configuration for each entity type, including built-in and custom fields. | Full refresh only | |
note_field_definitions |
id, note_type |
Field configuration for each note type (textNote, conversationNote, and opportunityNote). |
Full refresh only |
Connector options
The Productboard connector has the following option. For usage, see Examples.
| Option | Type | Scope | Required | Applies to | Description |
|---|---|---|---|---|---|
start_datetime |
String | Pipeline | No | notes |
The earliest updatedAt value to ingest on the first sync, in yyyy-MM-ddTHH:mm:ssZ format (for example, 2024-01-01T00:00:00Z). Defaults to 2020-01-01T00:00:00Z. |
Destination table schemas
features
Primary key: id
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
type |
STRING |
createdAt |
TIMESTAMP |
updatedAt |
TIMESTAMP |
fields |
VARIANT |
links |
STRUCT<self: STRING, html: STRING> |
metadata |
STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>> |
Note
This table does not support SCD type 2 because it has VARIANT columns.
products
Primary key: id
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
type |
STRING |
createdAt |
TIMESTAMP |
updatedAt |
TIMESTAMP |
fields |
VARIANT |
links |
STRUCT<self: STRING, html: STRING> |
relationships |
STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>> |
metadata |
STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>> |
Note
This table does not support SCD type 2 because it has VARIANT columns.
components
Primary key: id
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
type |
STRING |
createdAt |
TIMESTAMP |
updatedAt |
TIMESTAMP |
fields |
VARIANT |
links |
STRUCT<self: STRING, html: STRING> |
metadata |
STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>> |
Note
This table does not support SCD type 2 because it has VARIANT columns.
feature_statuses
Primary key: id
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
name |
STRING |
assignedEntityTypes |
ARRAY<STRING> |
notes
Primary key: id
Sync mode: Incremental
Cursor field: updatedAt
| Field | Data type |
|---|---|
id |
STRING |
type |
STRING |
createdAt |
TIMESTAMP |
updatedAt |
TIMESTAMP |
fields |
VARIANT |
archived |
BOOLEAN |
links |
STRUCT<self: STRING, html: STRING> |
relationships |
STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING>>>>, links: STRUCT<next: STRING>> |
metadata |
STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>> |
Note
This table does not support SCD type 2 because it has VARIANT columns.
companies
Primary key: id
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
type |
STRING |
createdAt |
TIMESTAMP |
updatedAt |
TIMESTAMP |
fields |
VARIANT |
links |
STRUCT<self: STRING, html: STRING> |
relationships |
STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>> |
metadata |
STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>> |
Note
This table does not support SCD type 2 because it has VARIANT columns.
users
Primary key: id
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
type |
STRING |
createdAt |
TIMESTAMP |
updatedAt |
TIMESTAMP |
fields |
VARIANT |
links |
STRUCT<self: STRING, html: STRING> |
relationships |
STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>> |
metadata |
STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>> |
Note
This table does not support SCD type 2 because it has VARIANT columns.
members
Primary key: id
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
type |
STRING |
createdAt |
TIMESTAMP |
updatedAt |
TIMESTAMP |
fields |
STRUCT<name: STRING, username: STRING, email: STRING, role: STRING, disabled: BOOLEAN, invitationPending: BOOLEAN, teams: ARRAY<STRUCT<id: STRING, name: STRING, links: STRUCT<self: STRING>>>> |
links |
STRUCT<self: STRING, html: STRING> |
release_groups
Primary key: id
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
type |
STRING |
createdAt |
TIMESTAMP |
updatedAt |
TIMESTAMP |
fields |
VARIANT |
links |
STRUCT<self: STRING, html: STRING> |
relationships |
STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>> |
metadata |
STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>> |
Note
This table does not support SCD type 2 because it has VARIANT columns.
releases
Primary key: id
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
type |
STRING |
createdAt |
TIMESTAMP |
updatedAt |
TIMESTAMP |
fields |
VARIANT |
links |
STRUCT<self: STRING, html: STRING> |
relationships |
STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>> |
metadata |
STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>> |
Note
This table does not support SCD type 2 because it has VARIANT columns.
objectives
Primary key: id
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
type |
STRING |
createdAt |
TIMESTAMP |
updatedAt |
TIMESTAMP |
fields |
VARIANT |
links |
STRUCT<self: STRING, html: STRING> |
relationships |
STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>> |
metadata |
STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>> |
Note
This table does not support SCD type 2 because it has VARIANT columns.
key_results
Primary key: id
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
type |
STRING |
createdAt |
TIMESTAMP |
updatedAt |
TIMESTAMP |
fields |
VARIANT |
links |
STRUCT<self: STRING, html: STRING> |
relationships |
STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>> |
metadata |
STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>> |
Note
This table does not support SCD type 2 because it has VARIANT columns.
initiatives
Primary key: id
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
type |
STRING |
createdAt |
TIMESTAMP |
updatedAt |
TIMESTAMP |
fields |
VARIANT |
links |
STRUCT<self: STRING, html: STRING> |
relationships |
STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>> |
metadata |
STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>> |
Note
This table does not support SCD type 2 because it has VARIANT columns.
teams
Primary key: id
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
type |
STRING |
createdAt |
TIMESTAMP |
updatedAt |
TIMESTAMP |
fields |
STRUCT<name: STRING, handle: STRING, description: STRING> |
links |
STRUCT<self: STRING, html: STRING, members: STRING> |
feature_relationships
Primary key: feature_id, target_id, relationship_type
Sync mode: Full refresh only
| Field | Data type |
|---|---|
feature_id |
STRING |
target |
STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>> |
target_id |
STRING |
relationship_type |
STRING |
component_relationships
Primary key: component_id, target_id, relationship_type
Sync mode: Full refresh only
| Field | Data type |
|---|---|
component_id |
STRING |
target |
STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>> |
target_id |
STRING |
relationship_type |
STRING |
field_definitions
Primary key: id, entity_type
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
name |
STRING |
path |
STRING |
entity_type |
STRING |
schema |
VARIANT |
values |
VARIANT |
constraints |
VARIANT |
lifecycle |
VARIANT |
default |
VARIANT |
links |
STRUCT<self: STRING> |
Note
This table does not support SCD type 2 because it has VARIANT columns.
note_field_definitions
Primary key: id, note_type
Sync mode: Full refresh only
| Field | Data type |
|---|---|
id |
STRING |
name |
STRING |
path |
STRING |
note_type |
STRING |
schema |
VARIANT |
values |
VARIANT |
constraints |
VARIANT |
lifecycle |
VARIANT |
default |
VARIANT |
Note
This table does not support SCD type 2 because it has VARIANT columns.
Required OAuth permissions
The connector requests the following read scopes when it exchanges the signed JWT for an access token. For more information, see Authentication in the Productboard developer documentation.
| Permission | Required for |
|---|---|
entities:read |
features, products, components, feature_statuses, companies, users, release_groups, releases, objectives, key_results, initiatives, feature_relationships, component_relationships, field_definitions |
notes:read |
notes, note_field_definitions |
members:read |
members |
teams:read |
teams |
members:pii:read |
Unredacted owner and creator emails in entity tables and notes, and unredacted member names, usernames, and emails in members |
users:pii:read |
Unredacted user names and emails in users |