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

Initial API proposal for QoD Booking API #379

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

Masa8106
Copy link
Collaborator

What type of PR is this?

Add one of the following kinds:

  • enhancement/feature

What this PR does / why we need it:

This is the initial proposal from KDDI for the QoD Booking API

Which issue(s) this PR fixes:

Fixes #337

Special notes for reviewers:

None

Changelog input

 release-note
- Initial version of QoD Booking API

Additional documentation

None

@hdamker hdamker marked this pull request as draft November 29, 2024 13:41
Copy link
Collaborator

@jlurien jlurien left a comment

Choose a reason for hiding this comment

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

Some initial comments for basic aspects. We have to decide if this would be a new API withing the current repo or it is moved to a new one.
Going into other details we will have to define relevant errors for this API, for example to control limits in startTime, duration, area, etc

- $ref: "#/components/schemas/BaseBookingInfo"
- type: object
properties:
statrTime:
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
statrTime:
startTime:

format: date-time
example: "2024-06-01T12:00:00Z"
duration:
description:
Copy link
Collaborator

Choose a reason for hiding this comment

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

For a CreateBooking request, duration is just what the client is requesting, regardless the qosStatus. -We should adapt this description

description: Attributes to request a new QoD Booking
allOf:
- $ref: "#/components/schemas/BaseBookingInfo"
- type: object
Copy link
Collaborator

Choose a reason for hiding this comment

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

To create a booking, at least startTime must be required, probably also duration (unless we set a default but I think it makes more sense to eb required). area may be optional but we should define the expectancy when it is not provided

example: 3600
serviceArea:
$ref: "#/components/schemas/Area"
BookingId:
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
BookingId:
bookingId:

statusInfo:
$ref: "#/components/schemas/StatusInfo"
required:
- BookingId
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
- BookingId
- bookingId

$ref: "#/components/schemas/Status"
statusInfo:
$ref: "#/components/schemas/StatusInfo"
required:
Copy link
Collaborator

Choose a reason for hiding this comment

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

In the response, other properties must be required: startTime, duration . startedAt has no sense in the response to CreateBooking but it is relevant for GET.

@Masa8106
Copy link
Collaborator Author

@jlurien, Thank you for the initial comments.
I have explained this API proposal in API Backlog WG yesterday. And I understand we have to decide if this would be a new API withing the current repo or it is moved to a new one.
If you all are ok, please allow me discuss here on the Initial API proposal until decision on the above.

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

Successfully merging this pull request may close these issues.

Potential enhancement of booking feature for qod-provision
2 participants