Repository navigation
Implement P1 protocol layer: Widget contracts, ETL, Connectors, Data Sync, and OData v4 #293
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
hotlong
merged 2 commits into
main
from
copilot/start-implementation-object-definitions
Jan 27, 2026
Merged
Changes from all commits
Commits
Show all changes
2 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -4,6 +4,7 @@ | |
| "contract", | ||
| "discovery", | ||
| "endpoint", | ||
| "odata", | ||
| "realtime", | ||
| "router" | ||
| ] | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| --- | ||
| title: ODataError | ||
| description: ODataError Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **error** | `object` | ✅ | | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,35 @@ | ||
| --- | ||
| title: ODataFilterFunction | ||
| description: ODataFilterFunction Schema Reference | ||
| --- | ||
|
|
||
| ## Allowed Values | ||
|
|
||
| * `contains` | ||
| * `startswith` | ||
| * `endswith` | ||
| * `length` | ||
| * `indexof` | ||
| * `substring` | ||
| * `tolower` | ||
| * `toupper` | ||
| * `trim` | ||
| * `concat` | ||
| * `year` | ||
| * `month` | ||
| * `day` | ||
| * `hour` | ||
| * `minute` | ||
| * `second` | ||
| * `date` | ||
| * `time` | ||
| * `now` | ||
| * `maxdatetime` | ||
| * `mindatetime` | ||
| * `round` | ||
| * `floor` | ||
| * `ceiling` | ||
| * `cast` | ||
| * `isof` | ||
| * `any` | ||
| * `all` |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,20 @@ | ||
| --- | ||
| title: ODataFilterOperator | ||
| description: ODataFilterOperator Schema Reference | ||
| --- | ||
|
|
||
| ## Allowed Values | ||
|
|
||
| * `eq` | ||
| * `ne` | ||
| * `lt` | ||
| * `le` | ||
| * `gt` | ||
| * `ge` | ||
| * `and` | ||
| * `or` | ||
| * `not` | ||
| * `(` | ||
| * `)` | ||
| * `in` | ||
| * `has` |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,12 @@ | ||
| --- | ||
| title: ODataMetadata | ||
| description: ODataMetadata Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **namespace** | `string` | ✅ | Service namespace | | ||
| | **entityTypes** | `object[]` | ✅ | Entity types | | ||
| | **entitySets** | `object[]` | ✅ | Entity sets | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| --- | ||
| title: ODataQuery | ||
| description: ODataQuery Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **$select** | `string \| string[]` | optional | Fields to select | | ||
| | **$filter** | `string` | optional | Filter expression (OData filter syntax) | | ||
| | **$orderby** | `string \| string[]` | optional | Sort order | | ||
| | **$top** | `integer` | optional | Max results to return | | ||
| | **$skip** | `integer` | optional | Results to skip | | ||
| | **$expand** | `string \| string[]` | optional | Navigation properties to expand | | ||
| | **$count** | `boolean` | optional | Include total count | | ||
| | **$search** | `string` | optional | Search expression | | ||
| | **$format** | `Enum<'json' \| 'xml' \| 'atom'>` | optional | Response format | | ||
| | **$apply** | `string` | optional | Aggregation expression | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,13 @@ | ||
| --- | ||
| title: ODataResponse | ||
| description: ODataResponse Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **@odata.context** | `string` | optional | Metadata context URL | | ||
| | **@odata.count** | `integer` | optional | Total results count | | ||
| | **@odata.nextLink** | `string` | optional | Next page URL | | ||
| | **value** | `Record<string, any>[]` | ✅ | Results array | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| { | ||
| "title": "Odata" | ||
| } | ||
17 changes: 17 additions & 0 deletions
17
content/docs/references/automation/connector/AuthField.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| --- | ||
| title: AuthField | ||
| description: AuthField Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **name** | `string` | ✅ | Field name (snake_case) | | ||
| | **label** | `string` | ✅ | Field label | | ||
| | **type** | `Enum<'text' \| 'password' \| 'url' \| 'select'>` | optional | Field type | | ||
| | **description** | `string` | optional | Field description | | ||
| | **required** | `boolean` | optional | Required field | | ||
| | **default** | `string` | optional | Default value | | ||
| | **options** | `object[]` | optional | Select field options | | ||
| | **placeholder** | `string` | optional | Placeholder text | |
13 changes: 13 additions & 0 deletions
13
content/docs/references/automation/connector/Authentication.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,13 @@ | ||
| --- | ||
| title: Authentication | ||
| description: Authentication Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **type** | `Enum<'none' \| 'apiKey' \| 'basic' \| 'bearer' \| 'oauth1' \| 'oauth2' \| 'custom'>` | ✅ | Authentication type | | ||
| | **fields** | `object[]` | optional | Authentication fields | | ||
| | **oauth2** | `object` | optional | OAuth 2.0 configuration | | ||
| | **test** | `object` | optional | Authentication test configuration | |
14 changes: 14 additions & 0 deletions
14
content/docs/references/automation/connector/AuthenticationType.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,14 @@ | ||
| --- | ||
| title: AuthenticationType | ||
| description: AuthenticationType Schema Reference | ||
| --- | ||
|
|
||
| ## Allowed Values | ||
|
|
||
| * `none` | ||
| * `apiKey` | ||
| * `basic` | ||
| * `bearer` | ||
| * `oauth1` | ||
| * `oauth2` | ||
| * `custom` |
27 changes: 27 additions & 0 deletions
27
content/docs/references/automation/connector/Connector.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,27 @@ | ||
| --- | ||
| title: Connector | ||
| description: Connector Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **id** | `string` | ✅ | Connector ID (snake_case) | | ||
| | **name** | `string` | ✅ | Connector name | | ||
| | **description** | `string` | optional | Connector description | | ||
| | **version** | `string` | optional | Connector version | | ||
| | **icon** | `string` | optional | Connector icon | | ||
| | **category** | `Enum<'crm' \| 'payment' \| 'communication' \| 'storage' \| 'analytics' \| 'database' \| 'marketing' \| 'accounting' \| 'hr' \| 'productivity' \| 'ecommerce' \| 'support' \| 'devtools' \| 'social' \| 'other'>` | ✅ | Connector category | | ||
| | **baseUrl** | `string` | optional | API base URL | | ||
| | **authentication** | `object` | ✅ | Authentication config | | ||
| | **operations** | `object[]` | optional | Connector operations | | ||
| | **triggers** | `object[]` | optional | Connector triggers | | ||
| | **rateLimit** | `object` | optional | Rate limiting | | ||
| | **author** | `string` | optional | Connector author | | ||
| | **documentation** | `string` | optional | Documentation URL | | ||
| | **homepage** | `string` | optional | Homepage URL | | ||
| | **license** | `string` | optional | License (SPDX identifier) | | ||
| | **tags** | `string[]` | optional | Connector tags | | ||
| | **verified** | `boolean` | optional | Verified connector | | ||
| | **metadata** | `Record<string, any>` | optional | Custom metadata | |
22 changes: 22 additions & 0 deletions
22
content/docs/references/automation/connector/ConnectorCategory.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,22 @@ | ||
| --- | ||
| title: ConnectorCategory | ||
| description: ConnectorCategory Schema Reference | ||
| --- | ||
|
|
||
| ## Allowed Values | ||
|
|
||
| * `crm` | ||
| * `payment` | ||
| * `communication` | ||
| * `storage` | ||
| * `analytics` | ||
| * `database` | ||
| * `marketing` | ||
| * `accounting` | ||
| * `hr` | ||
| * `productivity` | ||
| * `ecommerce` | ||
| * `support` | ||
| * `devtools` | ||
| * `social` | ||
| * `other` |
19 changes: 19 additions & 0 deletions
19
content/docs/references/automation/connector/ConnectorInstance.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| --- | ||
| title: ConnectorInstance | ||
| description: ConnectorInstance Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **id** | `string` | ✅ | Instance ID | | ||
| | **connectorId** | `string` | ✅ | Connector ID | | ||
| | **name** | `string` | ✅ | Instance name | | ||
| | **description** | `string` | optional | Instance description | | ||
| | **credentials** | `Record<string, any>` | ✅ | Encrypted credentials | | ||
| | **config** | `Record<string, any>` | optional | Additional config | | ||
| | **active** | `boolean` | optional | Instance active status | | ||
| | **createdAt** | `string` | optional | Creation time | | ||
| | **lastTestedAt** | `string` | optional | Last test time | | ||
| | **testStatus** | `Enum<'unknown' \| 'success' \| 'failed'>` | optional | Connection test status | |
18 changes: 18 additions & 0 deletions
18
content/docs/references/automation/connector/ConnectorOperation.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,18 @@ | ||
| --- | ||
| title: ConnectorOperation | ||
| description: ConnectorOperation Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **id** | `string` | ✅ | Operation ID (snake_case) | | ||
| | **name** | `string` | ✅ | Operation name | | ||
| | **description** | `string` | optional | Operation description | | ||
| | **type** | `Enum<'read' \| 'write' \| 'delete' \| 'search' \| 'trigger' \| 'action'>` | ✅ | Operation type | | ||
| | **inputSchema** | `object[]` | optional | Input parameters | | ||
| | **outputSchema** | `Record<string, any>` | optional | Output schema | | ||
| | **sampleOutput** | `any` | optional | Sample output | | ||
| | **supportsPagination** | `boolean` | optional | Supports pagination | | ||
| | **supportsFiltering** | `boolean` | optional | Supports filtering | |
16 changes: 16 additions & 0 deletions
16
content/docs/references/automation/connector/ConnectorTrigger.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,16 @@ | ||
| --- | ||
| title: ConnectorTrigger | ||
| description: ConnectorTrigger Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **id** | `string` | ✅ | Trigger ID (snake_case) | | ||
| | **name** | `string` | ✅ | Trigger name | | ||
| | **description** | `string` | optional | Trigger description | | ||
| | **type** | `Enum<'webhook' \| 'polling' \| 'stream'>` | ✅ | Trigger mechanism | | ||
| | **config** | `Record<string, any>` | optional | Trigger configuration | | ||
| | **outputSchema** | `Record<string, any>` | optional | Event payload schema | | ||
| | **pollingIntervalMs** | `integer` | optional | Polling interval in ms | |
14 changes: 14 additions & 0 deletions
14
content/docs/references/automation/connector/OAuth2Config.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,14 @@ | ||
| --- | ||
| title: OAuth2Config | ||
| description: OAuth2Config Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **authorizationUrl** | `string` | ✅ | Authorization endpoint URL | | ||
| | **tokenUrl** | `string` | ✅ | Token endpoint URL | | ||
| | **scopes** | `string[]` | optional | OAuth scopes | | ||
| | **clientIdField** | `string` | optional | Client ID field name | | ||
| | **clientSecretField** | `string` | optional | Client secret field name | |
17 changes: 17 additions & 0 deletions
17
content/docs/references/automation/connector/OperationParameter.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| --- | ||
| title: OperationParameter | ||
| description: OperationParameter Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **name** | `string` | ✅ | Parameter name | | ||
| | **label** | `string` | ✅ | Parameter label | | ||
| | **description** | `string` | optional | Parameter description | | ||
| | **type** | `Enum<'string' \| 'number' \| 'boolean' \| 'array' \| 'object' \| 'date' \| 'file'>` | ✅ | Parameter type | | ||
| | **required** | `boolean` | optional | Required parameter | | ||
| | **default** | `any` | optional | Default value | | ||
| | **validation** | `Record<string, any>` | optional | Validation rules | | ||
| | **dynamicOptions** | `string` | optional | Function to load dynamic options | |
13 changes: 13 additions & 0 deletions
13
content/docs/references/automation/connector/OperationType.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,13 @@ | ||
| --- | ||
| title: OperationType | ||
| description: OperationType Schema Reference | ||
| --- | ||
|
|
||
| ## Allowed Values | ||
|
|
||
| * `read` | ||
| * `write` | ||
| * `delete` | ||
| * `search` | ||
| * `trigger` | ||
| * `action` |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| { | ||
| "title": "Connector" | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,14 @@ | ||
| --- | ||
| title: ETLDestination | ||
| description: ETLDestination Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **type** | `Enum<'database' \| 'api' \| 'file' \| 'stream' \| 'object' \| 'warehouse' \| 'storage' \| 'spreadsheet'>` | ✅ | Destination type | | ||
| | **connector** | `string` | optional | Connector ID | | ||
| | **config** | `Record<string, any>` | ✅ | Destination configuration | | ||
| | **writeMode** | `Enum<'append' \| 'overwrite' \| 'upsert' \| 'merge'>` | optional | How to write data | | ||
| | **primaryKey** | `string[]` | optional | Primary key fields | |
15 changes: 15 additions & 0 deletions
15
content/docs/references/automation/etl/ETLEndpointType.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| --- | ||
| title: ETLEndpointType | ||
| description: ETLEndpointType Schema Reference | ||
| --- | ||
|
|
||
| ## Allowed Values | ||
|
|
||
| * `database` | ||
| * `api` | ||
| * `file` | ||
| * `stream` | ||
| * `object` | ||
| * `warehouse` | ||
| * `storage` | ||
| * `spreadsheet` |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,22 @@ | ||
| --- | ||
| title: ETLPipeline | ||
| description: ETLPipeline Schema Reference | ||
| --- | ||
|
|
||
| ## Properties | ||
|
|
||
| | Property | Type | Required | Description | | ||
| | :--- | :--- | :--- | :--- | | ||
| | **name** | `string` | ✅ | Pipeline identifier (snake_case) | | ||
| | **label** | `string` | optional | Pipeline display name | | ||
| | **description** | `string` | optional | Pipeline description | | ||
| | **source** | `object` | ✅ | Data source | | ||
| | **destination** | `object` | ✅ | Data destination | | ||
| | **transformations** | `object[]` | optional | Transformation pipeline | | ||
| | **syncMode** | `Enum<'full' \| 'incremental' \| 'cdc'>` | optional | Sync mode | | ||
| | **schedule** | `string` | optional | Cron schedule expression | | ||
| | **enabled** | `boolean` | optional | Pipeline enabled status | | ||
| | **retry** | `object` | optional | Retry configuration | | ||
| | **notifications** | `object` | optional | Notification settings | | ||
| | **tags** | `string[]` | optional | Pipeline tags | | ||
| | **metadata** | `Record<string, any>` | optional | Custom metadata | |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Docs nav title capitalization is inconsistent with the protocol name. Consider changing the title from "Odata" to "OData".