Worldline Message - Subscription API
Message Subscription Api Controller
Message Subscription Api Controller
swagger: '2.0'
info:
description: 'The current set of APIs will be available in Q2 2026 on Worldline Global Issuing Platforms.
Additional APIs are under construction and planned to be available in 2026.'
version: 2.41.1
title: Worldline Card Issuing Account - AccountState Message - Subscription API
contact: {}
host: sbx-wlip.api1-eu2.psapigateway.preprod.giservices.io/card-issuing
basePath: /api/v2
schemes:
- https
tags:
- name: Message - Subscription
description: Message Subscription Api Controller
paths:
/issuers/{issuerId}/subscriptions:
post:
tags:
- Message - Subscription
summary: Create a new WL Message subscription
operationId: createSubscription
consumes:
- application/json
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
description: WL-Correlation-ID
required: false
type: string
- name: issuerId
in: path
description: Id of the issuing bank
required: true
type: string
- in: body
name: subscription
description: subscription
required: true
schema:
$ref: '#/definitions/Subscription'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityCreateSubscription'
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedResponseMetadata'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
/issuers/{issuerId}/subscriptions/search:
get:
tags:
- Message - Subscription
summary: Search for subscriptions (with non-pci search terms)
operationId: searchSubscriptions
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
description: WL-Correlation-ID
required: false
type: string
- name: cardContractReference
in: query
description: Card Contract Reference
required: false
type: string
allowEmptyValue: false
- name: issuerId
in: path
description: Id of the issuing bank
required: true
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntitySearchSubscription'
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedResponseMetadata'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
/issuers/{issuerId}/subscriptions/{subscriptionReference}:
get:
tags:
- Message - Subscription
summary: Retrieve subscription by reference
operationId: getSubscriptionByReference
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
description: WL-Correlation-ID
required: false
type: string
- name: issuerId
in: path
description: Id of the issuing bank
required: true
type: string
- name: subscriptionReference
in: path
description: Reference of the subscription
required: true
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntitySubscription'
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedResponseMetadata'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
put:
tags:
- Message - Subscription
summary: Modify subscription by reference
operationId: modifySubscriptionByReference
consumes:
- application/json
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
description: WL-Correlation-ID
required: false
type: string
- name: issuerId
in: path
description: Id of the issuing bank
required: true
type: string
- in: body
name: subscription
description: subscription
required: true
schema:
$ref: '#/definitions/Subscription'
- name: subscriptionReference
in: path
description: Reference of the subscription
required: true
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityModifySubscription'
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedResponseMetadata'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
delete:
tags:
- Message - Subscription
summary: Delete subscription by reference
operationId: deleteSubscriptionByReference
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
description: WL-Correlation-ID
required: false
type: string
- name: issuerId
in: path
description: Id of the issuing bank
required: true
type: string
- name: subscriptionReference
in: path
description: Reference of the subscription
required: true
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityDeleteSubscription'
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedResponseMetadata'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
definitions:
SubscriptionIdentifier:
type: object
properties:
subscriptionReference:
type: string
title: SubscriptionIdentifier
ApiResponseEntityCreateSubscription:
type: object
required:
- responseMetadata
properties:
data:
$ref: '#/definitions/SubscriptionResponse'
responseMetadata:
$ref: '#/definitions/ResponseMetadata'
title: ApiResponseEntityCreateSubscription
description: Issuer response entity
NotFoundErrorApiResponse:
type: object
required:
- responseMetadata
properties:
responseMetadata:
allOf:
- $ref: '#/definitions/NotFoundResponseMetadata'
title: NotFoundErrorApiResponse
ApiResponseEntitySearchSubscription:
type: object
required:
- responseMetadata
properties:
data:
type: array
items:
$ref: '#/definitions/Subscription'
responseMetadata:
$ref: '#/definitions/ResponseMetadata'
title: ApiResponseEntitySearchSubscription
description: Issuer response entity
BadGatewayErrorApiResponse:
type: object
required:
- responseMetadata
properties:
responseMetadata:
allOf:
- $ref: '#/definitions/BadGatewayResponseMetadata'
title: BadGatewayErrorApiResponse
InternalServerErrorErrorApiResponse:
type: object
required:
- responseMetadata
properties:
responseMetadata:
allOf:
- $ref: '#/definitions/InternalServerErrorResponseMetadata'
title: InternalServerErrorErrorApiResponse
InternalServerErrorResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
statusCode:
type: integer
format: int32
example: 500
description: HTTP status code
statusMessage:
type: string
example: Internal server error
description: Executed REST API status message
title: InternalServerErrorResponseMetadata
Subscription:
type: object
required:
- cardContractReference
- services
properties:
cardContractReference:
type: string
example: 9.9999e+20
customerInfo:
type: object
example:
additionalKey1: some-value
additionalKey2: another-value
description: Key/value object, entries will be part of each notification for this subscription (max. length of the keys is 32 characters)
additionalProperties:
type: string
services:
type: array
items:
$ref: '#/definitions/SubscriptionService'
subscriptionIdentifier:
$ref: '#/definitions/SubscriptionIdentifier'
title: Subscription
Links:
type: object
required:
- self
properties:
self:
type: string
example: /x/{x}?x=x
description: Service method URL
next:
type: string
example: /x/{x}?page[offset]=2
description: URL pagination query parameter next page
title: Links
ApiResponseEntityDeleteSubscription:
type: object
required:
- responseMetadata
properties:
data:
$ref: '#/definitions/SubscriptionResponse'
responseMetadata:
$ref: '#/definitions/ResponseMetadata'
title: ApiResponseEntityDeleteSubscription
description: Issuer response entity
UnauthorizedResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
statusCode:
type: integer
format: int32
example: 401
description: HTTP status code
statusMessage:
type: string
example: Unauthorized
description: Executed REST API status message
title: UnauthorizedResponseMetadata
ApiResponseEntityModifySubscription:
type: object
required:
- responseMetadata
properties:
data:
$ref: '#/definitions/SubscriptionResponse'
responseMetadata:
$ref: '#/definitions/ResponseMetadata'
title: ApiResponseEntityModifySubscription
description: Issuer response entity
SubscriptionResponse:
type: object
properties:
subscriptionIdentifier:
$ref: '#/definitions/SubscriptionIdentifier'
title: SubscriptionResponse
SubscriptionEvent:
type: object
required:
- eventName
properties:
eventName:
type: string
example: XX_Approve_FO
externalReference:
type: string
description: Optional external event identifier
parameters:
type: array
description: Optional list of parameters to customize the criteria values for events
items:
$ref: '#/definitions/SubscriptionParameter'
subscriptionEventIdentifier:
$ref: '#/definitions/SubscriptionEventIdentifier'
title: SubscriptionEvent
ResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
links:
description: Metadata Links
allOf:
- $ref: '#/definitions/Links'
statusMessage:
type: string
example: Executed successfully
description: Executed REST API status message
statusCode:
type: integer
format: int32
example: 200
description: HTTP status code
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
timeTakenMs:
type: integer
format: int64
example: 12
description: Wall clock time required from service to generate the response
title: ResponseMetadata
NotFoundResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
statusCode:
type: integer
format: int32
example: 404
description: HTTP status code
statusMessage:
type: string
example: Not found
description: Executed REST API status message
title: NotFoundResponseMetadata
ForbiddenErrorApiResponse:
type: object
required:
- responseMetadata
properties:
responseMetadata:
allOf:
- $ref: '#/definitions/ForbiddenResponseMetadata'
title: ForbiddenErrorApiResponse
SubscriptionServiceIdentifier:
type: object
properties:
subscriptionServiceReference:
type: string
title: SubscriptionServiceIdentifier
SubscriptionService:
type: object
required:
- serviceType
properties:
contacts:
type: array
description: List of addresses for an ALERT subscription (required if serviceType is ALERT)
items:
$ref: '#/definitions/SubscriptionContact'
events:
type: array
description: List of events this subscription will be notified for
items:
$ref: '#/definitions/SubscriptionEvent'
packet:
type: string
description: ALERT packet name from the issuer configuration (required if serviceType is ALERT)
serviceType:
type: string
example: MESSAGE_SERVICE
enum:
- ALERT
- INSTALMENT
- MESSAGE_SERVICE
subscriptionServiceIdentifier:
$ref: '#/definitions/SubscriptionServiceIdentifier'
title: SubscriptionService
BadRequestResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
statusCode:
type: integer
format: int32
example: 400
description: HTTP status code
statusMessage:
type: string
example: Bad request
description: Executed REST API status message
title: BadRequestResponseMetadata
SubscriptionContact:
type: object
required:
- type
- value
properties:
pushDeviceType:
type: string
description: Type of (mobile) device (required if type is PUSH)
enum:
- ANDROID
- IOS
type:
type: string
example: MSISDN
enum:
- MSISDN
- EMAIL
- PUSH
value:
type: string
example: '+49171000000001'
title: SubscriptionContact
SubscriptionParameter:
type: object
required:
- criteria
- value
properties:
criteria:
type: string
value:
type: string
title: SubscriptionParameter
SubscriptionEventIdentifier:
type: object
properties:
subscriptionEventReference:
type: string
title: SubscriptionEventIdentifier
BadGatewayResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
statusCode:
type: integer
format: int32
example: 502
description: HTTP status code
statusMessage:
type: string
example: Bad Gateway
description: Executed REST API status message
title: BadGatewayResponseMetadata
BadRequestErrorApiResponse:
type: object
required:
- responseMetadata
properties:
responseMetadata:
allOf:
- $ref: '#/definitions/BadRequestResponseMetadata'
title: BadRequestErrorApiResponse
ApiResponseEntitySubscription:
type: object
required:
- responseMetadata
properties:
data:
$ref: '#/definitions/Subscription'
responseMetadata:
$ref: '#/definitions/ResponseMetadata'
title: ApiResponseEntitySubscription
description: Issuer response entity
ForbiddenResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
statusCode:
type: integer
format: int32
example: 403
description: HTTP status code
statusMessage:
type: string
example: Forbidden
description: Executed REST API status message
title: ForbiddenResponseMetadata
securityDefinitions:
basic:
type: oauth2
flow: application
tokenUrl: https://sbx-wlip.api1-eu2.psapigateway.preprod.giservices.io/token