Skip to content

Instantly share code, notes, and snippets.

@Jesm
Created July 19, 2022 18:26
Show Gist options
  • Save Jesm/3e48a16f9e51844aec610a27f0c5e611 to your computer and use it in GitHub Desktop.
Save Jesm/3e48a16f9e51844aec610a27f0c5e611 to your computer and use it in GitHub Desktop.
openapi: 3.0.3
info:
title: Buyer API
version: 0.1.0
paths:
/products/{productId}/currentTariffGroup:
parameters:
- $ref: '#/components/parameters/ProductIdParam'
get:
responses:
'200':
description: TODO
content:
application/json:
schema:
$ref: '#/components/schemas/TariffGroup'
/products/{productId}/schedulings:
parameters:
- $ref: '#/components/parameters/ProductIdParam'
get:
responses:
'200':
description: TODO
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Scheduling'
/reservations/{reservationId}/rescheduleSchedulings:
parameters:
- $ref: '#/components/parameters/ReservationIdParam'
get:
responses:
'200':
description: TODO
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/RescheduleScheduling'
components:
schemas:
TariffGroup:
type: object
properties:
tariffs:
type: array
items:
$ref: '#/components/schemas/Tariff'
Tariff:
type: object
properties:
id:
type: string
type:
type: object
properties:
id:
type: string
name:
type: string
priceCents:
type: integer
oldPriceCents:
type: integer
nullable: true
isDependent:
type: boolean
Scheduling:
type: object
properties:
id:
type: string
date:
type: string
format: date
consumableFromMinutes:
type: integer
nullable: true
consumableToMinutes:
type: integer
nullable: true
calendarIntervalMinutes:
type: integer
nullable: true
durationMinutes:
type: integer
antecedenceHours:
type: integer
nullable: true
antecedenceHoursReferenceMinutes:
type: integer
nullable: true
availableScheduleTimes:
type: array
items:
type: object
properties:
minutes:
type: integer
formattedTime:
type: string
nullable: true
tariffGroup:
$ref: '#/components/schemas/TariffGroup'
occupationRates:
$ref: '#/components/schemas/OccupationRates'
OccupationRates:
type: object
properties:
quantity:
$ref: '#/components/schemas/OccupationInfo'
nullable: true
tariffQuantities:
type: array
items:
type: object
properties:
tariffId:
type: string
occupation:
$ref: '#/components/schemas/OccupationInfo'
nullable: true
additionalQuantities:
type: array
items:
type: object
properties:
additionalId:
type: string
occupation:
$ref: '#/components/schemas/OccupationInfo'
nullable: true
scheduleQuantities:
type: array
items:
type: object
properties:
minutes:
type: integer
occupation:
$ref: '#/components/schemas/OccupationInfo'
nullable: true
tariffScheduleQuantities:
type: array
items:
type: object
properties:
tariffId:
type: string
occupationSchedule:
type: array
items:
type: object
properties:
minutes:
type: integer
occupation:
$ref: '#/components/schemas/OccupationInfo'
nullable: true
additionalScheduleQuantities:
type: array
items:
type: object
properties:
additionalId:
type: string
occupationSchedule:
type: array
items:
type: object
properties:
minutes:
type: integer
occupation:
$ref: '#/components/schemas/OccupationInfo'
nullable: true
OccupationInfo:
type: object
properties:
availableAmount:
type: integer
nullable: true
occupationRate:
type: float
nullable: true
RescheduleScheduling:
type: object
properties:
id:
type: string
date:
type: string
format: date
consumableFromMinutes:
type: integer
nullable: true
consumableToMinutes:
type: integer
nullable: true
calendarIntervalMinutes:
type: integer
nullable: true
durationMinutes:
type: integer
antecedenceHours:
type: integer
nullable: true
antecedenceHoursReferenceMinutes:
type: integer
nullable: true
availableScheduleTimes:
type: array
items:
type: object
properties:
minutes:
type: integer
formattedTime:
type: string
nullable: true
parameters:
ProductIdParam:
name: productId
in: path
required: true
schema:
type: string
ReservationIdParam:
name: reservationId
in: path
required: true
schema:
type: string
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment