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:
|
||||||
|
bboterm marked this conversation as resolved
Outdated
MirjamHTM
commented
Hier ook misschien beter om het een duidelijke naam te geven, die we aan de achterkant naar GBO mapppen Hier ook misschien beter om het een duidelijke naam te geven, die we aan de achterkant naar GBO mapppen
bboterm
commented
Goed punt. Aangepast. Goed punt. Aangepast.
|
|||||||
|
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:
|
||||||
|
bboterm marked this conversation as resolved
Outdated
MirjamHTM
commented
Willen we dit endpoint met deze URL aan TP zo doen, ik zou de id-media gewoon weghalen, is transparanter denk ik. Willen we dit endpoint met deze URL aan TP zo doen, ik zou de id-media gewoon weghalen, is transparanter denk ik.
bboterm
commented
Goed punt. Aangepast. Goed punt. Aangepast.
|
|||||||
|
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.