Skip to content
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

Generate documentation report #365

Merged
merged 41 commits into from
Oct 10, 2024
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
26470ff
Add report middleware to handle report layout
andrii-balitskyi Oct 4, 2024
b20849d
Add layout
andrii-balitskyi Oct 4, 2024
a182e50
ci: Format code
seambot Oct 4, 2024
cbb75f9
ci: Generate docs
seambot Oct 4, 2024
d5f42d1
Fix layout
andrii-balitskyi Oct 4, 2024
0ca9dbe
ci: Generate docs
seambot Oct 4, 2024
6564478
Update draft report type
andrii-balitskyi Oct 4, 2024
21444ff
Remove missing return type section
andrii-balitskyi Oct 7, 2024
6223d81
ci: Generate docs
seambot Oct 7, 2024
0f31592
Add todos
andrii-balitskyi Oct 7, 2024
92910c6
ci: Generate docs
seambot Oct 7, 2024
ca6e8c9
Add or helper to avoid rendering empty sections, fix resources witho…
andrii-balitskyi Oct 7, 2024
b94efdb
ci: Generate docs
seambot Oct 7, 2024
6fe15eb
Conditionally render entity sections
andrii-balitskyi Oct 7, 2024
292396a
ci: Generate docs
seambot Oct 7, 2024
891d311
Bump blueprint to add some missing draft entities to the report
andrii-balitskyi Oct 8, 2024
fc3b753
Minor fix
andrii-balitskyi Oct 8, 2024
33fa350
Bump blueprint and seam types
andrii-balitskyi Oct 9, 2024
e70519e
Process depreceted, undocumented and draft resources
andrii-balitskyi Oct 9, 2024
93b00d5
ci: Generate docs
seambot Oct 9, 2024
2db8e37
Add some of the missing messages
andrii-balitskyi Oct 9, 2024
662df68
ci: Generate docs
seambot Oct 9, 2024
77464be
Process namespaces
andrii-balitskyi Oct 9, 2024
fc0bb21
ci: Format code
seambot Oct 9, 2024
10406ec
Add missing reasons to the report layout
andrii-balitskyi Oct 9, 2024
657db80
Fix resource properties usage in the layout
andrii-balitskyi Oct 9, 2024
ec699a5
Add missing resource/route sections to the layout
andrii-balitskyi Oct 9, 2024
51432f9
Lint
andrii-balitskyi Oct 9, 2024
bd58780
ci: Generate docs
seambot Oct 9, 2024
8c0fea3
Report about extra response keys
andrii-balitskyi Oct 9, 2024
316e5f5
ci: Generate docs
seambot Oct 9, 2024
c6704e0
Add section on endpoints without code samples
andrii-balitskyi Oct 9, 2024
9651d42
ci: Generate docs
seambot Oct 9, 2024
16d2e09
Remove pattern key
andrii-balitskyi Oct 9, 2024
69ba7b6
Merge branch 'main' into report
andrii-balitskyi Oct 9, 2024
eb968c8
Fix bug in processRoute
andrii-balitskyi Oct 9, 2024
e30ff9f
ci: Generate docs
seambot Oct 9, 2024
b29e2ee
Dedupe reported endpoints and endpoint params
andrii-balitskyi Oct 10, 2024
c450eed
ci: Generate docs
seambot Oct 10, 2024
c111882
Merge branch 'main' into report
razor-x Oct 10, 2024
9d75d6f
ci: Generate docs
seambot Oct 10, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
368 changes: 368 additions & 0 deletions docs/api/_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,368 @@
# Reference Documentation Report

## Undocumented

These items are intentionally undocumented.

### Resource properties

- `acs_user.is_latest_desired_state_synced_with_provider`: Intentionally undocumented
- `acs_user.latest_desired_state_synced_with_provider_at`: Intentionally undocumented

### Endpoints

- `/acs/encoders/encode_card`: Intentionally undocumented
- `/acs/encoders/read_card`: Intentionally undocumented
- `/acs/users/unmanaged`: Intentionally undocumented
- `/acs/users/unmanaged/get`: Intentionally undocumented
- `/acs/users/unmanaged/list`: Intentionally undocumented

### Endpoint parameters


## No Description

These items have an empty description.
Items that are intentionally undocumented are not included in this section.

### Resources

- ``
- ``
- ``
- ``
- ``
- ``
- ``
- ``

### Resource properties


### Endpoints

- `/acs/access_groups/add_user`
- `/acs/access_groups/add_user`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are some of these repeated?

Copy link
Contributor Author

@andrii-balitskyi andrii-balitskyi Oct 10, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for catching this! It turns out that our blueprint defines an endpoint resource for each method that the actual endpoint supports. So, in the case of /acs/access_groups/add_user, there's one endpoint definition for PUT and one for POST. @razor-x, is this the intended design for the blueprint?
Anyway, I'll deduplicate the endpoints for now.

Copy link
Contributor Author

@andrii-balitskyi andrii-balitskyi Oct 10, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix b29e2ee
Updated report c450eed

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, this is a bug in blueprint then. There should be one endpoint per path, the supported methods defined on the endpoint

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

- `/acs/access_groups/get`
- `/acs/access_groups/list`
- `/acs/access_groups/list_accessible_entrances`
- `/acs/access_groups/list_users`
- `/acs/access_groups/remove_user`
- `/acs/access_groups/unmanaged/get`
- `/acs/access_groups/unmanaged/list`
- `/acs/credential_pools/list`
- `/acs/credential_provisioning_automations/launch`
- `/acs/credentials/assign`
- `/acs/credentials/assign`
- `/acs/credentials/create`
- `/acs/credentials/delete`
- `/acs/credentials/get`
- `/acs/credentials/list`
- `/acs/credentials/list_accessible_entrances`
- `/acs/credentials/unassign`
- `/acs/credentials/unassign`
- `/acs/credentials/update`
- `/acs/credentials/update`
- `/acs/credentials/unmanaged/get`
- `/acs/credentials/unmanaged/list`
- `/acs/encoders/list`
- `/acs/entrances/get`
- `/acs/entrances/grant_access`
- `/acs/entrances/list`
- `/acs/entrances/list_credentials_with_access`
- `/events/get`
- `/events/list`
- `/thermostats/activate_climate_preset`
- `/thermostats/cool`
- `/thermostats/create_climate_preset`
- `/thermostats/delete_climate_preset`
- `/thermostats/get`
- `/thermostats/heat`
- `/thermostats/heat_cool`
- `/thermostats/list`
- `/thermostats/off`
- `/thermostats/set_fallback_climate_preset`
- `/thermostats/set_fan_mode`
- `/thermostats/update_climate_preset`
- `/thermostats/update_climate_preset`
- `/thermostats/schedules/create`
- `/thermostats/schedules/delete`
- `/thermostats/schedules/get`
- `/thermostats/schedules/list`
- `/thermostats/schedules/update`
- `/thermostats/schedules/update`

### Endpoint parameters

- `/acs/access_groups/add_user`
- `acs_access_group_id`
- `acs_user_id`
- `/acs/access_groups/add_user`
- `acs_access_group_id`
- `acs_user_id`
- `/acs/access_groups/get`
- `acs_access_group_id`
- `/acs/access_groups/list`
- `acs_system_id`
- `acs_user_id`
- `/acs/access_groups/list_accessible_entrances`
- `acs_access_group_id`
- `/acs/access_groups/list_users`
- `acs_access_group_id`
- `/acs/access_groups/remove_user`
- `acs_access_group_id`
- `acs_user_id`
- `/acs/access_groups/unmanaged/get`
- `acs_access_group_id`
- `/acs/access_groups/unmanaged/list`
- `acs_system_id`
- `acs_user_id`
- `/acs/credential_pools/list`
- `acs_system_id`
- `/acs/credential_provisioning_automations/launch`
- `acs_credential_pool_id`
- `create_credential_manager_user`
- `credential_manager_acs_system_id`
- `credential_manager_acs_user_id`
- `user_identity_id`
- `/acs/credentials/assign`
- `acs_credential_id`
- `acs_user_id`
- `/acs/credentials/assign`
- `acs_credential_id`
- `acs_user_id`
- `/acs/credentials/create`
- `access_method`
- `acs_user_id`
- `allowed_acs_entrance_ids`
- `code`
- `credential_manager_acs_system_id`
- `ends_at`
- `is_multi_phone_sync_credential`
- `starts_at`
- `visionline_metadata`
- `/acs/credentials/delete`
- `acs_credential_id`
- `/acs/credentials/get`
- `acs_credential_id`
- `/acs/credentials/list_accessible_entrances`
- `acs_credential_id`
- `/acs/credentials/unassign`
- `acs_credential_id`
- `acs_user_id`
- `/acs/credentials/unassign`
- `acs_credential_id`
- `acs_user_id`
- `/acs/credentials/update`
- `acs_credential_id`
- `code`
- `ends_at`
- `/acs/credentials/update`
- `acs_credential_id`
- `code`
- `ends_at`
- `/acs/credentials/unmanaged/get`
- `acs_credential_id`
- `/acs/entrances/get`
- `acs_entrance_id`
- `/acs/entrances/grant_access`
- `acs_entrance_id`
- `acs_user_id`
- `/acs/entrances/list`
- `acs_credential_id`
- `acs_system_id`
- `/acs/entrances/list_credentials_with_access`
- `acs_entrance_id`
- `include_if`
- `/acs/users/create`
- `email`
- `/acs/users/list`
- `created_before`
- `limit`
- `/acs/users/update`
- `email`
- `hid_acs_system_id`
- `/acs/users/update`
- `email`
- `hid_acs_system_id`
- `/acs/users/unmanaged/get`
- `acs_user_id`
- `/acs/users/unmanaged/list`
- `acs_system_id`
- `limit`
- `user_identity_email_address`
- `user_identity_id`
- `user_identity_phone_number`
- `/events/get`
- `device_id`
- `event_id`
- `event_type`
- `/events/list`
- `access_code_id`
- `access_code_ids`
- `between`
- `connect_webview_id`
- `connected_account_id`
- `device_id`
- `device_ids`
- `event_type`
- `event_types`
- `limit`
- `since`
- `/thermostats/activate_climate_preset`
- `climate_preset_key`
- `device_id`
- `/thermostats/cool`
- `cooling_set_point_celsius`
- `cooling_set_point_fahrenheit`
- `device_id`
- `sync`
- `/thermostats/create_climate_preset`
- `climate_preset_key`
- `cooling_set_point_celsius`
- `cooling_set_point_fahrenheit`
- `device_id`
- `fan_mode_setting`
- `heating_set_point_celsius`
- `heating_set_point_fahrenheit`
- `hvac_mode_setting`
- `manual_override_allowed`
- `name`
- `/thermostats/delete_climate_preset`
- `climate_preset_key`
- `device_id`
- `/thermostats/get`
- `device_id`
- `name`
- `/thermostats/heat`
- `device_id`
- `heating_set_point_celsius`
- `heating_set_point_fahrenheit`
- `sync`
- `/thermostats/heat_cool`
- `cooling_set_point_celsius`
- `cooling_set_point_fahrenheit`
- `device_id`
- `heating_set_point_celsius`
- `heating_set_point_fahrenheit`
- `sync`
- `/thermostats/list`
- `connect_webview_id`
- `connected_account_ids`
- `created_before`
- `custom_metadata_has`
- `device_ids`
- `device_types`
- `exclude_if`
- `include_if`
- `limit`
- `manufacturer`
- `user_identifier_key`
- `/thermostats/off`
- `device_id`
- `sync`
- `/thermostats/set_fallback_climate_preset`
- `climate_preset_key`
- `device_id`
- `/thermostats/set_fan_mode`
- `device_id`
- `fan_mode`
- `fan_mode_setting`
- `sync`
- `/thermostats/update_climate_preset`
- `climate_preset_key`
- `cooling_set_point_celsius`
- `cooling_set_point_fahrenheit`
- `device_id`
- `fan_mode_setting`
- `heating_set_point_celsius`
- `heating_set_point_fahrenheit`
- `hvac_mode_setting`
- `manual_override_allowed`
- `name`
- `/thermostats/update_climate_preset`
- `climate_preset_key`
- `cooling_set_point_celsius`
- `cooling_set_point_fahrenheit`
- `device_id`
- `fan_mode_setting`
- `heating_set_point_celsius`
- `heating_set_point_fahrenheit`
- `hvac_mode_setting`
- `manual_override_allowed`
- `name`
- `/thermostats/schedules/create`
- `climate_preset_key`
- `device_id`
- `ends_at`
- `max_override_period_minutes`
- `name`
- `starts_at`
- `/thermostats/schedules/delete`
- `thermostat_schedule_id`
- `/thermostats/schedules/get`
- `thermostat_schedule_id`
- `/thermostats/schedules/list`
- `device_id`
- `user_identifier_key`
- `/thermostats/schedules/update`
- `climate_preset_key`
- `ends_at`
- `max_override_period_minutes`
- `name`
- `starts_at`
- `thermostat_schedule_id`
- `/thermostats/schedules/update`
- `climate_preset_key`
- `ends_at`
- `max_override_period_minutes`
- `name`
- `starts_at`
- `thermostat_schedule_id`

## Draft

These items have been marked as draft.

### Resources


### Resource properties


### Endpoints


### Endpoint parameters


## Missing `return_type`

These routes are missing a `return_type` and should be fixed.
andrii-balitskyi marked this conversation as resolved.
Show resolved Hide resolved


## Deprecated

These items are deprecated.

### Resource properties

- `acs_access_group.access_group_type`: use external_type
- `acs_access_group.access_group_type_display_name`: use external_type_display_name
- `acs_system.system_type`: Use `external_type`.
- `acs_system.system_type_display_name`: Use `external_type_display_name`.
- `acs_user.email`: use email_address.

### Endpoints


### Endpoint parameters

- `/acs/users/create`
- `email`: use email_address.
- `/acs/users/update`
- `email`: use email_address.
- `/acs/users/update`
- `email`: use email_address.
- `/thermostats/set_fan_mode`
- `fan_mode`: use fan_mode_setting instead.
Loading