feature/OVPAY-2473 #55
677
src/openapi/customers/customers-trips.yaml
Normal file
677
src/openapi/customers/customers-trips.yaml
Normal file
@ -0,0 +1,677 @@
|
||||
openapi: 3.0.1
|
||||
info:
|
||||
title: ABTCustomers
|
||||
version: '1.0'
|
||||
servers:
|
||||
- url: https://services.acc.api.htm.nl/abt/abtcustomers/1.0
|
||||
security:
|
||||
- default: []
|
||||
paths:
|
||||
/customers/tokens/{ovpayTokenId}/trips:
|
||||
get:
|
||||
tags:
|
||||
- Customer self-service trips
|
||||
summary: Get trips for a token
|
||||
description: >-
|
||||
Get the most recent trips for a given token ID, as long as this token is
|
||||
bound to the profile (as derived from sub in given JWT)
|
||||
parameters:
|
||||
- name: X-HTM-JWT-AUTH-HEADER
|
||||
in: header
|
||||
required: true
|
||||
style: simple
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: ovpayTokenId
|
||||
in: path
|
||||
required: true
|
||||
style: simple
|
||||
explode: false
|
||||
schema:
|
||||
type: integer
|
||||
- name: dateTimeFrom
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: dateTimeUntil
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: organisationId
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: transportType
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: lineId
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: paymentMethod
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: productTemplateId
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: category
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: tripStatus
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: tripId
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: showSuperseedingTrips
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: organisationName
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: limit
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: integer
|
||||
- name: offset
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: integer
|
||||
responses:
|
||||
'200':
|
||||
description: ok
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/getTokenTrips'
|
||||
'400':
|
||||
description: '400'
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/400Response'
|
||||
'401':
|
||||
description: '401'
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/401Response'
|
||||
'403':
|
||||
description: '403'
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/403Response'
|
||||
'404':
|
||||
description: '404'
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/404Response'
|
||||
'500':
|
||||
description: '500'
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/500Response'
|
||||
security:
|
||||
- default: []
|
||||
- default: []
|
||||
x-auth-type: Application & Application User
|
||||
x-throttling-tier: Unlimited
|
||||
/customers/trips/{tripId}:
|
||||
get:
|
||||
tags:
|
||||
- Customer self-service trips
|
||||
summary: Get trips details for a trip and token
|
||||
description: >-
|
||||
Get the trip details for a given trip and token ID, as long as the trip
|
||||
belongs to the token and this token is bound to the profile (as derived
|
||||
from sub in given JWT)
|
||||
parameters:
|
||||
- name: X-HTM-JWT-AUTH-HEADER
|
||||
in: header
|
||||
required: true
|
||||
style: simple
|
||||
explode: false
|
||||
schema:
|
||||
type: string
|
||||
- name: tripId
|
||||
in: path
|
||||
required: true
|
||||
style: simple
|
||||
explode: false
|
||||
schema:
|
||||
type: integer
|
||||
- name: ovPayTokenId
|
||||
in: query
|
||||
required: true
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: integer
|
||||
responses:
|
||||
'200':
|
||||
description: ok
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/getTrips'
|
||||
'400':
|
||||
description: '400'
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/400Response'
|
||||
'401':
|
||||
description: '401'
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/401Response'
|
||||
'403':
|
||||
description: '403'
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/403Response'
|
||||
'404':
|
||||
description: '404'
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/404Response'
|
||||
'500':
|
||||
description: '500'
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/500Response'
|
||||
security:
|
||||
- default: []
|
||||
- default: []
|
||||
x-auth-type: Application & Application User
|
||||
x-throttling-tier: Unlimited
|
||||
components:
|
||||
schemas:
|
||||
getTokenTrips:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
tripId:
|
||||
type: number
|
||||
tripVersion:
|
||||
type: number
|
||||
transportType:
|
||||
type: string
|
||||
lineId:
|
||||
type: string
|
||||
tripStatus:
|
||||
type: string
|
||||
fare:
|
||||
type: number
|
||||
currency:
|
||||
type: string
|
||||
lastUpdatedTripDateTime:
|
||||
type: string
|
||||
checkinTransactionTimestamp:
|
||||
type: string
|
||||
checkoutTransactionTimestamp:
|
||||
type: string
|
||||
checkinLocation:
|
||||
type: object
|
||||
properties:
|
||||
stopId:
|
||||
type: number
|
||||
stopName:
|
||||
type: object
|
||||
properties:
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
key:
|
||||
type: string
|
||||
value:
|
||||
type: string
|
||||
stopDesc:
|
||||
type: string
|
||||
stopUrl:
|
||||
type: string
|
||||
locationType:
|
||||
type: number
|
||||
checkoutLocation:
|
||||
type: object
|
||||
properties:
|
||||
stopId:
|
||||
type: number
|
||||
stopName:
|
||||
type: object
|
||||
properties:
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
key:
|
||||
type: string
|
||||
value:
|
||||
type: string
|
||||
stopDesc:
|
||||
type: string
|
||||
stopUrl:
|
||||
type: string
|
||||
locationType:
|
||||
type: number
|
||||
loyaltyOrDiscount:
|
||||
type: boolean
|
||||
_links:
|
||||
type: object
|
||||
properties:
|
||||
tripDetails:
|
||||
type: object
|
||||
properties:
|
||||
href:
|
||||
type: string
|
||||
method:
|
||||
type: string
|
||||
templated:
|
||||
type: boolean
|
||||
getTrips:
|
||||
type: object
|
||||
properties:
|
||||
tripId:
|
||||
type: number
|
||||
tripVersion:
|
||||
type: number
|
||||
tripStatus:
|
||||
type: string
|
||||
organisationIcon:
|
||||
type: string
|
||||
organisationId:
|
||||
type: string
|
||||
organisationName:
|
||||
type: string
|
||||
supersededByTripIds:
|
||||
type: array
|
||||
items:
|
||||
type: number
|
||||
supersedesTripIds:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
tripStartTxnId:
|
||||
type: number
|
||||
tripEndTxnId:
|
||||
type: number
|
||||
numberOfSyntheticLegs:
|
||||
type: number
|
||||
numberofSyntheticTrips:
|
||||
type: number
|
||||
products:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
productTemplateId:
|
||||
type: string
|
||||
purchaseDateTime:
|
||||
type: string
|
||||
appliedValue:
|
||||
type: number
|
||||
xspit:
|
||||
type: string
|
||||
category:
|
||||
type: string
|
||||
typesOfFareProduct:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
privateCode:
|
||||
|
bboterm marked this conversation as resolved
|
||||
type: string
|
||||
checkinTransactionTimestamp:
|
||||
type: string
|
||||
checkoutTransactionTimestamp:
|
||||
type: string
|
||||
checkinTransactionReference:
|
||||
type: string
|
||||
checkoutTransactionReference:
|
||||
type: string
|
||||
checkinLocation:
|
||||
type: object
|
||||
properties:
|
||||
stopId:
|
||||
type: number
|
||||
stopName:
|
||||
type: object
|
||||
properties:
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
key:
|
||||
type: string
|
||||
value:
|
||||
type: string
|
||||
stopDesc:
|
||||
type: string
|
||||
stopUrl:
|
||||
type: string
|
||||
locationType:
|
||||
type: number
|
||||
checkoutLocation:
|
||||
type: object
|
||||
properties:
|
||||
stopId:
|
||||
type: number
|
||||
stopName:
|
||||
type: object
|
||||
properties:
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
key:
|
||||
type: string
|
||||
value:
|
||||
type: string
|
||||
stopDesc:
|
||||
type: string
|
||||
stopUrl:
|
||||
type: string
|
||||
locationType:
|
||||
type: number
|
||||
xbot:
|
||||
type: string
|
||||
tokenType:
|
||||
type: string
|
||||
transportType:
|
||||
type: string
|
||||
lineId:
|
||||
type: string
|
||||
networkId:
|
||||
type: string
|
||||
networkName:
|
||||
type: string
|
||||
currency:
|
||||
type: string
|
||||
transportIcon:
|
||||
type: string
|
||||
legs:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
legId:
|
||||
type: number
|
||||
checkinTransactionTimestamp:
|
||||
type: string
|
||||
checkoutTransactionTimestamp:
|
||||
type: string
|
||||
checkinLocation:
|
||||
type: object
|
||||
properties:
|
||||
stopId:
|
||||
type: number
|
||||
stopName:
|
||||
type: object
|
||||
properties:
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
key:
|
||||
type: string
|
||||
value:
|
||||
type: string
|
||||
stopDesc:
|
||||
type: string
|
||||
stopUrl:
|
||||
type: string
|
||||
locationType:
|
||||
type: number
|
||||
checkoutLocation:
|
||||
type: object
|
||||
properties:
|
||||
stopId:
|
||||
type: number
|
||||
stopName:
|
||||
type: object
|
||||
properties:
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
key:
|
||||
type: string
|
||||
value:
|
||||
type: string
|
||||
stopDesc:
|
||||
type: string
|
||||
stopUrl:
|
||||
type: string
|
||||
locationType:
|
||||
type: number
|
||||
baseRate:
|
||||
type: number
|
||||
lineId:
|
||||
type: string
|
||||
networkId:
|
||||
type: string
|
||||
networkName:
|
||||
type: string
|
||||
fare:
|
||||
type: number
|
||||
fareState:
|
||||
type: string
|
||||
currency:
|
||||
type: string
|
||||
products:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
productTemplateId:
|
||||
type: string
|
||||
purchaseDateTime:
|
||||
type: string
|
||||
appliedValue:
|
||||
type: number
|
||||
xspit:
|
||||
type: string
|
||||
category:
|
||||
type: string
|
||||
|
bboterm marked this conversation as resolved
MirjamHTM
commented
Mist Hateoas voor het fixen van de missing CO Mist Hateoas voor het fixen van de missing CO
bboterm
commented
Ahh, ik had 1 commit niet gepushed. Daarom zag je hem niet. Hij zit er nu bij in elk geval! Ahh, ik had 1 commit niet gepushed. Daarom zag je hem niet. Hij zit er nu bij in elk geval!
|
||||
typesOfFareProduct:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
privateCode:
|
||||
type: string
|
||||
appliedTimePeriods:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
tariffJourneyStart:
|
||||
type: boolean
|
||||
tariffDistance:
|
||||
type: number
|
||||
aggrGeoIntervalDistance:
|
||||
type: number
|
||||
topoDistance:
|
||||
type: number
|
||||
concessionId:
|
||||
type: string
|
||||
tripLegIdx:
|
||||
type: number
|
||||
appliedZones:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
zoneId:
|
||||
type: string
|
||||
zoneName:
|
||||
type: object
|
||||
properties:
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
key:
|
||||
type: string
|
||||
value:
|
||||
type: string
|
||||
lastUpdatedTripDateTime:
|
||||
type: string
|
||||
fare:
|
||||
type: number
|
||||
loyaltyOrDiscount:
|
||||
type: boolean
|
||||
supportCode:
|
||||
type: string
|
||||
checkinTransactionId:
|
||||
type: string
|
||||
checkoutTransactionId:
|
||||
type: string
|
||||
tariffVersionId:
|
||||
type: string
|
||||
correlationId:
|
||||
type: string
|
||||
createdAt:
|
||||
type: string
|
||||
400Response:
|
||||
type: object
|
||||
properties:
|
||||
code:
|
||||
type: string
|
||||
example: '400'
|
||||
type:
|
||||
type: string
|
||||
message:
|
||||
type: string
|
||||
example: Bad Request
|
||||
description:
|
||||
type: string
|
||||
example: >-
|
||||
'Bad Request: Input parameters missing! Please fill in at least 1
|
||||
valid input parameter.
|
||||
401Response:
|
||||
type: object
|
||||
properties:
|
||||
code:
|
||||
type: string
|
||||
example: '900901'
|
||||
type:
|
||||
type: string
|
||||
message:
|
||||
type: string
|
||||
example: Invalid Credentials
|
||||
description:
|
||||
type: string
|
||||
example: >-
|
||||
Invalid Credentials. Make sure you have provided the correct
|
||||
security credentials.
|
||||
403Response:
|
||||
type: object
|
||||
properties:
|
||||
code:
|
||||
type: string
|
||||
example: '900901'
|
||||
type:
|
||||
type: string
|
||||
message:
|
||||
type: string
|
||||
example: Retailer not authorized
|
||||
description:
|
||||
type: string
|
||||
example: >-
|
||||
The retailer is not allowed to access resource for requested
|
||||
touchpoint.
|
||||
404Response:
|
||||
type: object
|
||||
properties:
|
||||
code:
|
||||
type: string
|
||||
example: '404'
|
||||
type:
|
||||
type: string
|
||||
example: Status report
|
||||
message:
|
||||
type: string
|
||||
example: Not Found
|
||||
description:
|
||||
type: string
|
||||
example: The requested resource is not available.
|
||||
500Response:
|
||||
type: object
|
||||
properties:
|
||||
code:
|
||||
type: string
|
||||
example: '500'
|
||||
type:
|
||||
type: string
|
||||
message:
|
||||
type: string
|
||||
example: Internal Server Error
|
||||
description:
|
||||
type: string
|
||||
Loading…
Reference in New Issue
Block a user
We geven in de tripdetails nergens de xbot mee terug, die krijgen we wel. Als we het zo houden hebben we 2 opties (1) TP pakt Xbot uit tokendetails om de stops call mee te doen (2) we geven de info terug in de Hateoas voor ingevuld. Of we voegen de info hier toe, die hebben we toen weggehaald, met het idee dat de XBOT een privacy gevoelig gegeven was.
Ja je miste dus die ene commit van mij die ik niet had gepusht. Hij zit idd in de HATEOAS.