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

[API] Missing API documentation #1441

Open
48 tasks
Fryguy opened this issue May 5, 2020 · 5 comments
Open
48 tasks

[API] Missing API documentation #1441

Fryguy opened this issue May 5, 2020 · 5 comments

Comments

@Fryguy
Copy link
Member

Fryguy commented May 5, 2020

Several new collections were added over the last few releases but have no examples in the API Docs->Reference section other than the general mention in the Reference->Primary Collections and the HATEOAS like things one can query via /api, returned actions on collections and resources and OPTIONS on collections.

We need endpoint examples in their own Reference entry or part of a related topic section, i.e. Physical Server Management.

  • /api/alert_definition_profiles
  • /api/auth_key_pairs
  • /api/automate_classes
  • /api/availability_zones
  • /api/cloud_networks - Cloud Object Management
  • /api/cloud_object_store_containers
  • /api/cloud_subnets
  • /api/cloud_templates
  • /api/cloud_volume_types
  • /api/clusters
  • /api/configuration_profiles
  • /api/configuration_script_payloads
  • /api/configuration_scripts
  • /api/configured_systems
  • /api/container_groups - Container Management
  • /api/container_images
  • /api/container_nodes
  • /api/container_projects
  • /api/container_templates
  • /api/container_volumes
  • /api/containers
  • /api/currencies
  • /api/customization_scripts
  • /api/customization_templates
  • /api/data_stores
  • /api/enterprises
  • /api/firmware_registries
  • /api/firmwares
  • /api/floating_ips
  • /api/guest_devices
  • /api/lans
  • /api/load_balancers
  • /api/measures
  • /api/orchestration_stacks
  • /api/physical_chassis - Physical Server Management
  • /api/physical_racks
  • /api/physical_storages
  • /api/physical_switches
  • /api/regions
  • /api/request_tasks
  • /api/resource_pools
  • /api/servers
  • /api/service_offerings
  • /api/service_parameters_sets
  • /api/switches
  • /api/templates
  • /api/tenant_groups
  • /api/zones

cc @abellotti Please update this issue with other things you've found

@Fryguy Fryguy added the bug label May 5, 2020
@abellotti
Copy link
Member

Ok, updated @Fryguy

@starcraftnight
Copy link

Have we really implemented /api/configured_systems? Can not find any clue in https://github.com/ManageIQ/manageiq-api/tree/master/spec/requests.
https://github.com/ManageIQ/manageiq-api/blob/master/app/controllers/api/configured_systems_controller.rb have no actual implementation as well.

@abellotti
Copy link
Member

abellotti commented May 6, 2020

It's leveraging the base controller's methods, no extra logic needed. looking at config/api.yml it's exposed read-only as a primary collection as well as a subcollection of providers. The only logic added was how to fetch the subcollection resources in app/controllers/api/subcollections/configured_systems.rb

specs we have:

spec/requests/collections_spec.rb has tests for it as primary
spec/request/providers_spec.rb as subcollection

GET /api/configured_systems
GET /api/configured_systems/:id
GET /api/providers/:id/configured_systems
GET /api/providers/:id/configured_systems/:c_id
also OPTIONS /api/configured_systems

last one would show you any optional virtual attributes and relationships you can query off configured system resources via ?attributes=...

Hope this helps.

@Fryguy
Copy link
Member Author

Fryguy commented May 7, 2020

@starcraftnight Which version of ManageIQ are you using? /api/configured_systems was added in jansa release, so if you are using ivanchuk, it's not there yet.

(Compare https://github.com/ManageIQ/manageiq-api/blob/jansa/config/api.yml#L899-L921 to https://github.com/ManageIQ/manageiq-api/blob/ivanchuk/config/api.yml)

@miq-bot
Copy link
Member

miq-bot commented Mar 6, 2023

This issue has been automatically marked as stale because it has not been updated for at least 3 months.

If you can still reproduce this issue on the current release or on master, please reply with all of the information you have about it in order to keep the issue open.

Thank you for all your contributions! More information about the ManageIQ triage process can be found in the triage process documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants