External - API (1.2.0)

Download OpenAPI specification:

External - API

Partners

Operations to manage partners

Get a list of partners

Get a paginated list of partners possibly filtered whether they are active or inactive.

Authorizations:
api_key
query Parameters
active
boolean
Example: active=true

Get only active/inactive records

offset
integer <int32>
Default: 0
Example: offset=11

First record to return (zero-based). Ordered by id.

limit
integer <int32>
Example: limit=10

Limit the number of returned records

Responses

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": [
    ]
}

Create a new partner

Use the provided data and create a new partner.

Authorizations:
api_key
Request Body schema: application/json; charset=utf-8
required
name
required
string
website
string <url>
phone
string
email
string <email>
required
object (DTOAddress)
active
boolean
Default: "false"
teaser
required
string
description
required
string
object (DTOContactInfo) >= 4 properties
object (DTOPaymentInfo)

Responses

Request samples

Content type
application/json; charset=utf-8
{
  • "name": "Erlebnispartner",
  • "phone": "+431234567890",
  • "email": "erlebnispartner@super-truper.at",
  • "address": {
    },
  • "active": "true",
  • "teaser": "Eine kurze Beschreibung",
  • "description": "Die Beschreibung des Partners",
  • "contactInfo": {
    },
  • "paymentInfo": {
    }
}

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Get a partner

Get the partner referenced by the given id.

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234

Responses

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Change an existing partner

Change the partner referenced by the given id

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234
Request Body schema: application/json; charset=utf-8
required
name
required
string
website
string <url>
phone
string
email
string <email>
required
object (DTOAddress)
active
boolean
Default: "false"
teaser
required
string
description
required
string
object (DTOContactInfo) >= 4 properties
object (DTOPaymentInfo)

Responses

Request samples

Content type
application/json; charset=utf-8
{
  • "name": "Erlebnispartner",
  • "phone": "+431234567890",
  • "email": "erlebnispartner@super-truper.at",
  • "address": {
    },
  • "active": "true",
  • "teaser": "Eine kurze Beschreibung",
  • "description": "Die Beschreibung des Partners",
  • "contactInfo": {
    },
  • "paymentInfo": {
    }
}

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Add/Change image

Add/Change image for the partner referenced by the given id

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234
Request Body schema: image/*
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Remove image

Remove image from the partner referenced by the given id

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234

Responses

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Partner POS account

Operations to manage the POS account of the partner

Get POS account

Get the active POS account for this partner.

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234

Responses

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Add/Update POS account

Add or update a POS account with the given email address to the partner and send an activation email.

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234
query Parameters
email
required
string <email>
Example: email=my-pos-account@email.com

The email address to use as a login. An activation link will be sent to this email address for confirmation.

Responses

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Deactivate POS account

Deactivate the POS account for this partner.

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234

Responses

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Benefits

Operations to manage benefits

Get a list of benefits

Get a paginated list of benefits possibly filtered whether they are active or inactive.

Authorizations:
api_key
query Parameters
partner
integer <int64>
Example: partner=1234

Get only benefits for the partner with the given id.

status
string <EnumBenefitStatus>
Enum: "EDITABLE" "ACTIVATED" "DEACTIVATED" "OUTDATED" "ARCHIVED"
Example: status=ACTIVATED

Get only benefits with the given status.

offset
integer <int32>
Default: 0
Example: offset=11

First record to return (zero-based). Ordered by id.

limit
integer <int32>
Example: limit=10

Limit the number of returned records

Responses

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": [
    ]
}

Create a new benefit

Use the provided data and create a new benefit.

Authorizations:
api_key
Request Body schema: application/json; charset=utf-8
required
non-empty
partnerId
required
integer <int64>

The internal id of the partner that offers this benefit.

personGroupId
string
Default: "ALL"

The age group that is allowed to redeem this benefit.

contingent
integer <int32>
Default: -1

The overall contingent the partner offers of this benefit. Unlimited by default.

maxUsagesPerCard
integer <int32>
Default: -1

The maximum of redemptions of this benefit allowed for a single card. Unlimited by default.

maxUsagesPerCardPerDay
integer <int32>
Default: -1

The maximum of redemptions per day of this benefit allowed for a single card. Unlimited by default.

object >= 4 properties

Contact info to override contact info of partner

object

Location of the benefit if different from partner location.

test
boolean
Default: false
selfRedeemable
boolean
Default: false
required
Array of objects non-empty unique
copyright
string
title
required
string
description
required
string
showFrom
required
string <dd-MM-yyyy HH:mm:ss>
showTo
required
string <dd-MM-yyyy HH:mm:ss>

Responses

Request samples

Content type
application/json; charset=utf-8
{
  • "partnerId": 1234,
  • "personGroupId": "ALL",
  • "contingent": 3000,
  • "maxUsagesPerCard": 3,
  • "maxUsagesPerCardPerDay": 1,
  • "contactInfo": {
    },
  • "address": {
    },
  • "test": false,
  • "selfRedeemable": false,
  • "validityPeriods": [
    ],
  • "copyright": "string",
  • "title": "Bestes Erlebnis",
  • "description": "Beschreibung des Erlebnis",
  • "showFrom": "06-08-2024 08:47:00",
  • "showTo": "06-08-2024 08:48:01"
}

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Get a benefit

Get the benefit referenced by the given id.

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234

Responses

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Change an existing benefit

Change the benefit referenced by the given id. Required benefit status is either EDITABLE.

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234
Request Body schema: application/json; charset=utf-8
required
non-empty
partnerId
required
integer <int64>

The internal id of the partner that offers this benefit.

personGroupId
string
Default: "ALL"

The age group that is allowed to redeem this benefit.

contingent
integer <int32>
Default: -1

The overall contingent the partner offers of this benefit. Unlimited by default.

maxUsagesPerCard
integer <int32>
Default: -1

The maximum of redemptions of this benefit allowed for a single card. Unlimited by default.

maxUsagesPerCardPerDay
integer <int32>
Default: -1

The maximum of redemptions per day of this benefit allowed for a single card. Unlimited by default.

object >= 4 properties

Contact info to override contact info of partner

object

Location of the benefit if different from partner location.

test
boolean
Default: false
selfRedeemable
boolean
Default: false
required
Array of objects non-empty unique
copyright
string
title
required
string
description
required
string
showFrom
required
string <dd-MM-yyyy HH:mm:ss>
showTo
required
string <dd-MM-yyyy HH:mm:ss>

Responses

Request samples

Content type
application/json; charset=utf-8
{
  • "partnerId": 1234,
  • "personGroupId": "ALL",
  • "contingent": 3000,
  • "maxUsagesPerCard": 3,
  • "maxUsagesPerCardPerDay": 1,
  • "contactInfo": {
    },
  • "address": {
    },
  • "test": false,
  • "selfRedeemable": false,
  • "validityPeriods": [
    ],
  • "copyright": "string",
  • "title": "Bestes Erlebnis",
  • "description": "Beschreibung des Erlebnis",
  • "showFrom": "06-08-2024 08:47:00",
  • "showTo": "06-08-2024 08:48:01"
}

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Change an existing benefit

Change the benefit referenced by the given id. The following properties can be changed after the benefit was activated: title, description, showFrom, showTo and validityPeriods.

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234
Request Body schema: application/json; charset=utf-8
required
non-empty
title
string
description
string
showFrom
string <dd-MM-yyyy HH:mm:ss>
showTo
string <dd-MM-yyyy HH:mm:ss>
Array of objects (DTOBenefitValidityPeriod) unique

Responses

Request samples

Content type
application/json; charset=utf-8
{
  • "title": "Bestes Erlebnis",
  • "description": "Beschreibung des Erlebnis",
  • "showFrom": "06-08-2024 08:47:00",
  • "showTo": "06-08-2024 08:48:01",
  • "validityPeriods": [
    ]
}

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Delete or deactivate benefit

Deletes benefit if it is EDITABLE and deactivates it otherwise.

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234

Responses

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Add/Change banner

Add/Change the banner for the benefit referenced by the given id

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234
Request Body schema: image/*
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Remove banner

Remove the banner from the benefit referenced by the given id

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234

Responses

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Change status

Change the status of this benefit. Allowed transitions are: EDITABLE -> ACTIVATED, {EDITABLE, ACTIVATED} -> ARCHIVED

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234
status
required
string <EnumBenefitStatusChange>
Enum: "ACTIVATED" "ARCHIVED"
Example: ACTIVATED

Status to set.

Responses

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Benefit validity periods

Operations to manage benefit validity periods

Delete validity period

Delete the validity period with the given dates from this benefit if it exists. Required benefit status is either EDITABLE or ACTIVATED.

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234
Request Body schema: application/json; charset=utf-8
required
validFrom
required
string <dd-MM-yyyy>
validTo
required
string <dd-MM-yyyy>
monday
boolean
Default: true
tuesday
boolean
Default: true
wednesday
boolean
Default: true
thursday
boolean
Default: true
friday
boolean
Default: true
saturday
boolean
Default: true
sunday
boolean
Default: true
holidays
boolean
Default: true

Responses

Request samples

Content type
application/json; charset=utf-8
{
  • "validFrom": "07-08-2024",
  • "validTo": "08-08-2024",
  • "monday": true,
  • "tuesday": true,
  • "wednesday": true,
  • "thursday": true,
  • "friday": false,
  • "saturday": true,
  • "sunday": true,
  • "holidays": false
}

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Create or update validity period

Create or update the validity period with the given dates of this benefit if it exists. Required benefit status is either EDITABLE or ACTIVATED.

Authorizations:
api_key
path Parameters
id
required
integer <int64>
Example: 1234
Request Body schema: application/json; charset=utf-8
required
validFrom
required
string <dd-MM-yyyy>
validTo
required
string <dd-MM-yyyy>
monday
boolean
Default: true
tuesday
boolean
Default: true
wednesday
boolean
Default: true
thursday
boolean
Default: true
friday
boolean
Default: true
saturday
boolean
Default: true
sunday
boolean
Default: true
holidays
boolean
Default: true

Responses

Request samples

Content type
application/json; charset=utf-8
{
  • "validFrom": "07-08-2024",
  • "validTo": "08-08-2024",
  • "monday": true,
  • "tuesday": true,
  • "wednesday": true,
  • "thursday": true,
  • "friday": false,
  • "saturday": true,
  • "sunday": true,
  • "holidays": false
}

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}

Cards

Operations to manage cards

Get the cards redemptions

Get a summary of card data and a list of redeemed benefits.

Authorizations:
api_key
Request Body schema: application/json; charset=utf-8
required
version
required
integer <int32> >= 1
key
required
integer <int32> [ 1 .. 3 ]
payload
required
string <byte>

Responses

Request samples

Content type
application/json; charset=utf-8
{
  • "version": 14,
  • "key": 14,
  • "payload": "string"
}

Response samples

Content type
application/json
{
  • "resultCode": 0,
  • "returnObject": {
    }
}