vivenu api API

The api API from vivenu — 449 operation(s) for api.

OpenAPI Specification

vivenu-api-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: vivenu access-lists api API
  description: vivenu API Documentation
  version: 1.0.0
  contact:
    name: vivenu GmbH
    url: https://vivenu.com
servers:
- url: https://vivenu.com
  description: Production API
- url: https://vivenu.dev
  description: Staging API
tags:
- name: api
paths:
  /api/access-lists:
    get:
      security:
      - jwt: []
      - apikey: []
      parameters:
      - name: name
        required: false
        schema:
          type: string
          description: The name to filter for.
          metas: {}
        in: query
        style: form
        explode: true
      - name: skip
        required: false
        schema:
          type: number
          format: float
          description: The number of objects to skip for the requested result
          metas: {}
        in: query
        style: form
        explode: true
      - name: top
        required: false
        schema:
          type: number
          format: float
          description: A limit on the number of objects to be returned. Can range between 1 and 1000.
          default: 25
          metas: {}
        in: query
        style: form
        explode: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GET_Access-lists_GetAccessLists_200_response'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      tags:
      - api
      description: Get Access Lists
      operationId: access-lists/list
    post:
      security:
      - jwt: []
      - apikey: []
      parameters: []
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessListResource'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Access-lists_CreateAnAccessList'
      tags:
      - api
      description: Create an Access List
      operationId: access-lists/create
  /api/accessusers:
    get:
      security:
      - jwt: []
      - apikey: []
      parameters: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GET_Accessusers_GetAllAccessUsers_200_response'
        '401':
          description: Unauthorized
      tags:
      - api
      description: Get all Access Users
      operationId: accessusers/list
    post:
      security:
      - jwt: []
      - apikey: []
      parameters: []
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessUserResource'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Accessusers_CreateAnAccessUser'
      tags:
      - api
      description: Create an Access User
      operationId: accessusers/create
  /api/attributes:
    get:
      security:
      - jwt: []
      - apikey: []
      parameters:
      - name: top
        schema:
          default: 25
          description: A limit on the number of objects to be returned. Can range between 1 and 1000.
          type: integer
          minimum: 1
          maximum: 1000
        description: A limit on the number of objects to be returned. Can range between 1 and 1000.
        in: query
        required: true
        style: form
        explode: true
      - name: skip
        schema:
          default: 0
          description: The number of objects to skip for the requested result
          type: integer
          minimum: 0
          maximum: 9007199254740991
        description: The number of objects to skip for the requested result
        in: query
        required: true
        style: form
        explode: true
      - name: resourceTypes
        schema:
          type: array
          items:
            type: string
            enum:
            - event
            - subscription
        in: query
        required: false
        style: form
        explode: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  docs:
                    type: array
                    items:
                      type: object
                      properties:
                        _id:
                          type: string
                        sellerId:
                          type: string
                        slug:
                          type: string
                        name:
                          type: string
                        resourceTypes:
                          type: array
                          items:
                            type: string
                            enum:
                            - event
                            - subscription
                        type:
                          type: string
                          enum:
                          - select
                        options:
                          type: array
                          items:
                            type: string
                        isArchived:
                          default: false
                          type: boolean
                        createdAt:
                          type: string
                          format: date-time
                        updatedAt:
                          type: string
                          format: date-time
                      required:
                      - _id
                      - sellerId
                      - slug
                      - name
                      - resourceTypes
                      - type
                      - isArchived
                      - createdAt
                      - updatedAt
                      additionalProperties: false
                  total:
                    type: number
                required:
                - docs
                - total
                additionalProperties: false
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      tags:
      - api
      description: Get All Attributes
      operationId: attributes/list
    post:
      security:
      - jwt: []
      - apikey: []
      parameters: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  _id:
                    type: string
                  sellerId:
                    type: string
                  slug:
                    type: string
                  name:
                    type: string
                  resourceTypes:
                    type: array
                    items:
                      type: string
                      enum:
                      - event
                      - subscription
                  type:
                    type: string
                    enum:
                    - select
                  options:
                    type: array
                    items:
                      type: string
                  isArchived:
                    default: false
                    type: boolean
                  createdAt:
                    type: string
                    format: date-time
                  updatedAt:
                    type: string
                    format: date-time
                required:
                - _id
                - sellerId
                - slug
                - name
                - resourceTypes
                - type
                - isArchived
                - createdAt
                - updatedAt
                additionalProperties: false
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                resourceTypes:
                  type: array
                  items:
                    type: string
                    enum:
                    - event
                    - subscription
                type:
                  type: string
                  enum:
                  - select
                options:
                  type: array
                  items:
                    type: string
              required:
              - name
              - resourceTypes
              - type
              additionalProperties: false
      tags:
      - api
      description: Create an Attribute
      operationId: attributes/create
  /api/bundles:
    get:
      security:
      - jwt: []
      - apikey: []
      parameters:
      - name: name
        required: false
        schema:
          type: string
          metas: {}
        in: query
        style: form
        explode: true
      - name: top
        required: false
        schema:
          type: integer
          maximum: 1000
          description: A limit on the number of objects to be returned. Can range between 1 and 1000.
          default: 25
          metas: {}
        in: query
        style: form
        explode: true
      - name: skip
        required: false
        schema:
          type: integer
          description: The number of objects to skip for the requested result
          metas: {}
        in: query
        style: form
        explode: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GET_Bundles_GetAllBundles_200_response'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      tags:
      - api
      description: Get all Bundles
      operationId: bundles/list
    post:
      security:
      - jwt: []
      - apikey: []
      parameters: []
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/POST_Bundles_CreateABundle_201_response'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Bundles_CreateABundle'
      tags:
      - api
      description: Create a Bundle
      operationId: bundles/create
  /api/cancellations:
    get:
      security:
      - jwt: []
      - apikey: []
      parameters:
      - name: transactionId
        required: true
        schema:
          type: string
          metas: {}
        in: query
        style: form
        explode: true
      - name: top
        required: false
        schema:
          type: number
          format: float
          description: A limit on the number of objects to be returned. Can range between 1 and 1000.
          default: 25
          metas: {}
        in: query
        style: form
        explode: true
      - name: skip
        required: false
        schema:
          type: number
          format: float
          description: The number of objects to skip for the requested result
          metas: {}
        in: query
        style: form
        explode: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GET_Cancellations_GetAllCancellations_200_response'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      tags:
      - api
      description: Get all cancellations
      operationId: get_all_cancellations
  /api/channels:
    get:
      security:
      - jwt: []
      - apikey: []
      parameters:
      - name: top
        required: false
        schema:
          type: number
          format: float
          default: 100
          metas: {}
        in: query
        style: form
        explode: true
      - name: skip
        required: false
        schema:
          type: number
          format: float
          metas: {}
        in: query
        style: form
        explode: true
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      tags:
      - api
      description: Get all Channels
      operationId: get_all_channels
    post:
      security:
      - jwt: []
      - apikey: []
      parameters: []
      responses:
        '201':
          description: Created
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Channels_CreateAChannel'
      tags:
      - api
      description: Create a Channel
      operationId: create_a_channel
  /api/checkouts:
    get:
      security:
      - jwt: []
      - apikey: []
      parameters:
      - name: status
        required: false
        schema:
          type: array
          items:
            type: string
            enum:
            - NEW
            - ABORTED
            - COMPLETE
            metas: {}
          description: Filter checkouts by checkout status
          metas: {}
        in: query
        style: form
        explode: true
      - name: name
        required: false
        schema:
          type: string
          description: Filter checkouts by name
          metas: {}
        in: query
        style: form
        explode: true
      - name: email
        required: false
        schema:
          type: string
          description: The email of the checkout customer
          metas: {}
        in: query
        style: form
        explode: true
      - name: type
        required: false
        schema:
          type: array
          items:
            type: string
            enum:
            - transaction
            - upgrade
            - rebooking
            - purchaseintent
            - subscription
            metas: {}
          description: Filter checkouts by checkout type
          metas: {}
        in: query
        style: form
        explode: true
      - name: customerId
        required: false
        schema:
          type: string
          description: The ID of the checkout customer
          metas: {}
        in: query
        style: form
        explode: true
      - name: channel
        required: false
        schema:
          type: array
          items:
            oneOf:
            - oneOf:
              - type: array
              - type: boolean
              - type: number
              - type: object
              - type: string
              enum:
              - online
              metas: {}
            - oneOf:
              - type: array
              - type: boolean
              - type: number
              - type: object
              - type: string
              enum:
              - internal
              metas: {}
            - oneOf:
              - type: array
              - type: boolean
              - type: number
              - type: object
              - type: string
              enum:
              - pos
              metas: {}
            metas: {}
          description: Filter checkout by checkout channel
          metas: {}
        in: query
        style: form
        explode: true
      - name: createdAt
        required: false
        schema:
          type: object
          properties:
            $gt:
              type: string
              format: date-time
              description: value is greater than
              metas: {}
            $gte:
              type: string
              format: date-time
              description: value is greater than or equal
              metas: {}
            $lt:
              type: string
              format: date-time
              description: value is less than
              metas: {}
            $lte:
              type: string
              format: date-time
              description: value is less than or equal
              metas: {}
            $eq:
              type: string
              format: date-time
              description: value is equal
              metas: {}
            $ne:
              type: string
              format: date-time
              description: value is not equal
              metas: {}
          description: Range of dates indicating when the checkout was created in ISO format.
          metas: {}
        in: query
        style: deepObject
        explode: true
      - name: updatedAt
        required: false
        schema:
          type: object
          properties:
            $gt:
              type: string
              format: date-time
              description: value is greater than
              metas: {}
            $gte:
              type: string
              format: date-time
              description: value is greater than or equal
              metas: {}
            $lt:
              type: string
              format: date-time
              description: value is less than
              metas: {}
            $lte:
              type: string
              format: date-time
              description: value is less than or equal
              metas: {}
            $eq:
              type: string
              format: date-time
              description: value is equal
              metas: {}
            $ne:
              type: string
              format: date-time
              description: value is not equal
              metas: {}
          description: Range of dates indicating when the checkout was last updated in ISO format.
          metas: {}
        in: query
        style: deepObject
        explode: true
      - name: top
        required: false
        schema:
          type: integer
          maximum: 1000
          description: A limit on the number of objects to be returned. Can range between 1 and 1000.
          default: 25
          metas: {}
        in: query
        style: form
        explode: true
      - name: skip
        required: false
        schema:
          type: integer
          description: The number of objects to skip for the requested result
          metas: {}
        in: query
        style: form
        explode: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GET_Checkouts_GetAllCheckouts_200_response'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      tags:
      - api
      description: Get all checkouts
      operationId: checkouts/list
    post:
      security:
      - jwt: []
      - apikey: []
      parameters: []
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Checkouts_CreateACheckout'
      tags:
      - api
      description: Create a checkout
      operationId: checkouts/createInternal
  /api/credit-notes:
    get:
      security:
      - jwt: []
      - apikey: []
      parameters:
      - name: transactionId
        schema:
          type: string
        in: query
        required: false
        style: form
        explode: true
      - name: offerId
        schema:
          type: string
        in: query
        required: false
        style: form
        explode: true
      - name: top
        schema:
          default: 25
          description: A limit on the number of objects to be returned. Can range between 1 and 1000.
          type: integer
          minimum: 1
          maximum: 1000
        description: A limit on the number of objects to be returned. Can range between 1 and 1000.
        in: query
        required: false
        style: form
        explode: true
      - name: skip
        schema:
          default: 0
          description: The number of objects to skip for the requested result
          type: integer
          minimum: 0
          maximum: 9007199254740991
        description: The number of objects to skip for the requested result
        in: query
        required: false
        style: form
        explode: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GET_Credit-notes_ListCreditNotes_200_response'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      tags:
      - api
      description: List Credit Notes
      operationId: credit-notes/list
  /api/data-fields:
    get:
      security:
      - jwt: []
      - apikey: []
      parameters: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GET_Data-fields_GetAllDataFields_200_response'
        '401':
          description: Unauthorized
      tags:
      - api
      description: Get all Data Fields
      operationId: data-fields/list
    post:
      security:
      - jwt: []
      - apikey: []
      parameters: []
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataFieldResource'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Data-fields_CreateADataField'
      tags:
      - api
      description: Create a Data Field
      operationId: data-fields/create
  /api/disputes:
    get:
      security:
      - jwt: []
      parameters:
      - name: top
        schema:
          default: 25
          description: A limit on the number of objects to be returned. Can range between 1 and 1000.
          type: integer
          minimum: 1
          maximum: 1000
        description: A limit on the number of objects to be returned. Can range between 1 and 1000.
        in: query
        required: true
        style: form
        explode: true
      - name: skip
        schema:
          default: 0
          description: The number of objects to skip for the requested result
          type: integer
          minimum: 0
          maximum: 9007199254740991
        description: The number of objects to skip for the requested result
        in: query
        required: true
        style: form
        explode: true
      - name: sellerId
        schema:
          type: string
        in: query
        required: false
        style: form
        explode: true
      - name: reference
        schema:
          type: string
        in: query
        required: false
        style: form
        explode: true
      - name: paymentId
        schema:
          type: string
        in: query
        required: false
        style: form
        explode: true
      - name: paymentGatewayId
        schema:
          type: string
        in: query
        required: false
        style: form
        explode: true
      - name: createdAt
        schema:
          type: object
          properties:
            $gt:
              description: value is greater than
              type: string
              format: date-time
            $gte:
              description: value is greater than or equal
              type: string
              format: date-time
            $lt:
              description: value is less than
              type: string
              format: date-time
            $lte:
              description: value is less than or equal
              type: string
              format: date-time
            $eq:
              description: value is equal
              type: string
              format: date-time
            $ne:
              description: value is not equal
              type: string
              format: date-time
          additionalProperties: false
        in: query
        required: false
        style: deepObject
        explode: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  docs:
                    type: array
                    items:
                      type: object
                      properties:
                        _id:
                          type: string
                        status:
                          type: string
                        reference:
                          type: string
                        amount:
                          type: number
                        currency:
                          type: string
                        paymentId:
                          type: string
                        paymentGatewayId:
                          type: string
                        sellerId:
                          type: string
                        deadline:
                          type: string
                          format: date-time
                        createdAt:
                          type: string
                          format: date-time
                        updatedAt:
                          type: string
                          format: date-time
                      required:
                      - _id
                      - status
                      - reference
                      - amount
                      - currency
                      - paymentId
                      - paymentGatewayId
                      - sellerId
                      - createdAt
                      - updatedAt
                      additionalProperties: false
                  total:
                    type: number
                required:
                - docs
                - total
                additionalProperties: false
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      tags:
      - api
      description: Get disputes
      operationId: get_disputes
  /api/distributors:
    get:
      security:
      - jwt: []
      - apikey: []
      parameters:
      - name: salesChannelId
        required: false
        schema:
          type: string
          description: The ID of the sales channel.
          metas: {}
        in: query
        style: form
        explode: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GET_Distributor_GetDistributorForSalesChannel_200_response'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      tags:
      - api
      description: Get distributor for sales channel
      operationId: get_distributor_for_sales_channel
  /api/document-templates:
    get:
      security:
      - jwt: []
      - apikey: []
      parameters:
      - name: skip
        required: false
        schema:
          type: number
          format: float
          description: The number of objects to skip for the requested result
          metas: {}
        in: query
        style: form
        explode: true
      - name: top
        required: false
        schema:
          type: number
          format: float
          description: A limit on the number of objects to be returned. Can range between 1 and 1000.
          default: 25
          metas: {}
        in: query
        style: form
        explode: true
      - name: type
        required: false
        schema:
          oneOf:
          - type: string
            enum:
            - ticket
            - invoice
            - voucher
            - member-card
            - header-card
            description: The type of a document template to filter for
            metas: {}
          - type: array
            items:
              type: string
              enum:
              - ticket
              - invoice
              - voucher
              - member-card
              - header-card
              metas: {}
            description: An array of types of a document template to filter for
            metas: {}
          metas: {}
        in: query
        style: form
        explode: true
      - name: targets
        required: false
        schema:
          type: array
          items:
            type: string
            enum:
            - thermal
            - digital
            - wallet
            metas: {}
          description: The targets of a document template to filter for
          metas: {}
        in: query
        style: form
        explode: true
      - name: formats
        required: false
        schema:
          type: array
          items:
            type: string
            enum:
            - A4
            - LETTER
            - LEGAL
            - BOARDING-PASS
            - PLASTIC-CARD
            - CARD
            - LABEL
            - CUSTOM
            - APPLE
            - GOOGLE
            metas: {}
          description: The formats of a document template to filter for
          metas: {}
        in: query
        style: form
        explode: true
      - name: title
        required: false
        schema:
          type: string
          description: The title of a document template to filter for
          metas: {}
        in: query
        style: form
        explode: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GET_Document-templates_GetAllDocumentTemplates_200_response'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      tags:
      - api
      description: Get all Document Templates
      operationId: document-templates/list
    post:
      security:
      - jwt: []
      - apikey: []
      parameters: []
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/POST_Document-templates_CreateADocumentTemplate_201_response'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Document-templates_CreateADocumentTemplate'
      tags:
      - api
      description: Create a Document Template
      operationId: document-templates/create
  /api/entitlements:
    get:
      security:
      - jwt: []
      - apikey: []
      parameters:
      - name: top
        schema:
          default: 25
          description: A limit on the number of objects to be returned. Can range between 1 and 1000.
          type: integer
          minimum: 1
          maximum: 1000
        description: A limit on the number of objects to be returned. Can range between 1 and 1000.
        in: query
        required: true
        style: form
        explode: true
      - name: skip
        schema:
          default: 0
          description: The number of objects to skip for the requested result
          type: integer
          minimum: 0
          maximum: 9007199254740991
        description: The number of objects to skip for the requested r

# --- truncated at 32 KB (3012 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vivenu/refs/heads/main/openapi/vivenu-api-api-openapi.yml