vivenu Supports API

The supports API from vivenu — 14 operation(s) for supports.

Operations 18

GET /api/supports Get all supports tickets #
GET /api/support/status Count unfinished support requests #
GET /api/support/{id} Get a support ticket #
PUT /api/support/{id} Send a message #
GET /api/supports/{id} Get support ticket #
PATCH /api/supports/{id} Patch a support ticket #
PUT /api/supports/{id} Update a support ticket #
DELETE /api/supports/{id} Delete support ticket #
GET /api/supports/{id}/context Get support context #
POST /api/support Create a support ticket #
POST /api/support/ticket-lookup Look up the last transaction by email and resend the order confirmation #
POST /api/supports/{id}/assign-seller Update seller assignment #
POST /api/supports/{id}/assignee Change support ticket assignee #
POST /api/supports/{id}/message Reply to support ticket #
POST /api/supports/{id}/status Change support ticket status #
POST /api/supports/{id}/seller Change support ticket seller #
POST /api/supports/{id}/prio Change support ticket prio #
PUT /api/supports/{id}/messages/{messageId} Update a support message #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/vivenu-supports-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

vivenu-supports-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: vivenu Supports 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: supports
paths:
  /api/supports:
    get:
      security:
      - jwt: []
      parameters:
      - name: top
        required: false
        schema:
          type: number
          format: float
          default: 25
          metas: {}
        in: query
        style: form
        explode: true
      - name: skip
        required: false
        schema:
          type: number
          format: float
          metas: {}
        in: query
        style: form
        explode: true
      - name: name
        required: false
        schema:
          type: string
          metas: {}
        in: query
        style: form
        explode: true
      - name: assignedToSeller
        required: false
        schema:
          type: boolean
          metas: {}
        in: query
        style: form
        explode: true
      - name: onlymy
        required: false
        schema:
          type: boolean
          metas: {}
        in: query
        style: form
        explode: true
      - name: preferredLanguage
        required: false
        schema:
          type: string
          metas: {}
        in: query
        style: form
        explode: true
      - name: status
        required: false
        schema:
          oneOf:
          - type: string
            metas: {}
          - type: array
            items:
              type: string
              metas: {}
            metas: {}
          metas: {}
        in: query
        style: form
        explode: true
      - name: assignee
        required: false
        schema:
          type: string
          metas: {}
        in: query
        style: form
        explode: true
      - name: tags
        required: false
        schema:
          type: array
          items:
            type: string
            metas: {}
          metas: {}
        in: query
        style: form
        explode: true
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      tags:
      - supports
      operationId: get_all_supports_tickets
      summary: Get all supports tickets
      x-summary-source: derived
  /api/support/status:
    get:
      security:
      - jwt: []
      parameters: []
      responses:
        '200':
          description: OK
        '401':
          description: Unauthorized
      tags:
      - supports
      description: Count unfinished Support requests
      operationId: count_unfinished_support_requests
      summary: Count unfinished support requests
      x-summary-source: derived
  /api/support/{id}:
    get:
      parameters:
      - name: secret
        required: true
        schema:
          type: string
          metas: {}
        in: query
        style: form
        explode: true
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicSupportResource'
        '400':
          description: Bad Request
        '404':
          description: Not Found
      tags:
      - supports
      operationId: get_a_support_ticket
      summary: Get a support ticket
      x-summary-source: derived
    put:
      parameters:
      - name: secret
        required: true
        schema:
          type: string
          metas: {}
        in: query
        style: form
        explode: true
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PUT_Supports_SendAMessage'
      tags:
      - supports
      operationId: send_a_message
      summary: Send a message
      x-summary-source: derived
  /api/supports/{id}:
    get:
      security:
      - jwt: []
      parameters:
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '404':
          description: Not Found
      tags:
      - supports
      operationId: get_support_ticket
      summary: Get support ticket
      x-summary-source: derived
    patch:
      security:
      - jwt: []
      parameters:
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PATCH_Supports_PatchASupportTicket'
      tags:
      - supports
      operationId: patch_a_support_ticket
      summary: Patch a support ticket
      x-summary-source: derived
    put:
      security:
      - jwt: []
      parameters:
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PUT_Supports_UpdateASupportTicket'
      tags:
      - supports
      operationId: update_a_support_ticket
      summary: Update a support ticket
      x-summary-source: derived
    delete:
      security:
      - jwt: []
      parameters:
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '404':
          description: Not Found
      tags:
      - supports
      operationId: delete_support_ticket
      summary: Delete support ticket
      x-summary-source: derived
  /api/supports/{id}/context:
    get:
      security:
      - jwt: []
      parameters:
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '404':
          description: Not Found
      tags:
      - supports
      operationId: get_support_context
      summary: Get support context
      x-summary-source: derived
  /api/support:
    post:
      parameters: []
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicSupportResource'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Supports_CreateASupportTicket'
      tags:
      - supports
      operationId: create_a_support_ticket
      summary: Create a support ticket
      x-summary-source: derived
  /api/support/ticket-lookup:
    post:
      parameters: []
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                email:
                  type: string
                  format: email
                  pattern: ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
                sellerId:
                  type: string
              required:
              - email
              - sellerId
              additionalProperties: false
      tags:
      - supports
      operationId: look_up_the_last_transaction_by_email_and_resend_the_order_confirmation
      summary: Look up the last transaction by email and resend the order confirmation
      x-summary-source: derived
  /api/supports/{id}/assign-seller:
    post:
      security:
      - jwt: []
      parameters:
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Supports_UpdateSellerAssignment'
      tags:
      - supports
      operationId: update_seller_assignment
      summary: Update seller assignment
      x-summary-source: derived
  /api/supports/{id}/assignee:
    post:
      security:
      - jwt: []
      parameters:
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '201':
          description: Created
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Supports_ChangeSupportTicketAssignee'
      tags:
      - supports
      operationId: change_support_ticket_assignee
      summary: Change support ticket assignee
      x-summary-source: derived
  /api/supports/{id}/message:
    post:
      security:
      - jwt: []
      parameters:
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '201':
          description: Created
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Supports_ReplyToSupportTicket'
      tags:
      - supports
      operationId: reply_to_support_ticket
      summary: Reply to support ticket
      x-summary-source: derived
  /api/supports/{id}/status:
    post:
      security:
      - jwt: []
      parameters:
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '201':
          description: Created
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Supports_ChangeSupportTicketStatus'
      tags:
      - supports
      operationId: change_support_ticket_status
      summary: Change support ticket status
      x-summary-source: derived
  /api/supports/{id}/seller:
    post:
      security:
      - jwt: []
      parameters:
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '201':
          description: Created
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Supports_ChangeSupportTicketSeller'
      tags:
      - supports
      operationId: change_support_ticket_seller
      summary: Change support ticket seller
      x-summary-source: derived
  /api/supports/{id}/prio:
    post:
      security:
      - jwt: []
      parameters:
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '201':
          description: Created
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/POST_Supports_ChangeSupportTicketPrio'
      tags:
      - supports
      operationId: change_support_ticket_prio
      summary: Change support ticket prio
      x-summary-source: derived
  /api/supports/{id}/messages/{messageId}:
    put:
      security:
      - jwt: []
      parameters:
      - name: id
        required: true
        schema:
          type: string
          metas: {}
        in: path
      - name: messageId
        required: true
        schema:
          type: string
          metas: {}
        in: path
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      tags:
      - supports
      operationId: update_a_support_message
      summary: Update a support message
      x-summary-source: derived
components:
  schemas:
    POST_Supports_ChangeSupportTicketPrio:
      type: object
      properties:
        priority:
          type: string
      required:
      - priority
    POST_Supports_UpdateSellerAssignment:
      type: object
      properties:
        assignedToSeller:
          type: boolean
      required:
      - assignedToSeller
    POST_Supports_ChangeSupportTicketStatus:
      type: object
      properties:
        status:
          type: string
      required:
      - status
    PUT_Supports_SendAMessage:
      type: object
      properties:
        message:
          type: string
      required:
      - message
    POST_Supports_ReplyToSupportTicket:
      type: object
      properties:
        message:
          type: string
      required:
      - message
    PATCH_Supports_PatchASupportTicket:
      type: object
      properties:
        tags:
          type: array
          items:
            type: string
    PUT_Supports_UpdateASupportTicket:
      type: object
      properties:
        note:
          type:
          - string
          - 'null'
    POST_Supports_ChangeSupportTicketAssignee:
      type: object
      properties:
        assignee:
          type: string
      required:
      - assignee
    POST_Supports_CreateASupportTicket:
      type: object
      properties:
        firstname:
          type: string
        lastname:
          type: string
        email:
          type: string
          format: email
        message:
          type: string
        transactionId:
          type: string
        sellerId:
          type: string
        assignToSeller:
          type: boolean
      required:
      - firstname
      - lastname
      - message
    PublicSupportResource:
      type: object
      properties:
        _id:
          type: string
          description: The ID of the status
        transactionId:
          type: string
          description: The ID of the corresponding transaction
        name:
          type: string
          description: The name of the ticket
        firstname:
          type: string
          description: The firstname of the ticket creator
        lastname:
          type: string
          description: The lastname of the ticket creator
        email:
          type: string
          format: email
          description: The email of the ticket creator
        status:
          type: string
          enum:
          - NEW
          - INPROGRESS
          - RESOLVED
          description: The current status of the support ticket
          default: NEW
        messages:
          type: array
          items:
            type: object
            properties:
              _id:
                type: string
                description: The ID of the support message
              userId:
                type: string
                description: The ID of the user who sent the message
              senderName:
                type: string
                description: The name of the message sender
              message:
                type: string
                description: The text content of the support message
              createdAt:
                type: string
                format: date-time
                description: An ISO timestamp indicating when the message was created
            required:
            - _id
            - userId
            - senderName
            - message
          description: The sent messages associated with this ticket
        secret:
          type: string
          description: The secret of the support ticket
        assignee:
          type: string
          description: The userId of the assignee
        assignedToSeller:
          type: boolean
          description: Flag indicating whether the ticket is assigned to the seller
        lastInteraction:
          type: string
          format: date-time
          description: An ISO timestamp indicating the last interaction with the ticket
        sellerId:
          type: string
          description: The ID of the seller of the support ticket
        preferredLanguage:
          type: string
          enum:
          - de
          - de-CH
          - en
          - en-GB
          - en-AU
          - fr
          - es
          - es-MX
          - is
          - it
          - ru
          - pt
          - tr
          - nb
          - nl
          - pl
          - sv
          - sl
          - da
          - cs
          - lv
          - he
          - ar
          - th
          - ko
          - ja
          - zh-TW
          default: de
        createdAt:
          type: string
          format: date-time
          description: An ISO timestamp indicating when the support ticket was created
        updatedAt:
          type: string
          format: date-time
          description: An ISO timestamp indicating when the support ticket was updated
        customerId:
          type: string
          description: The ID of the customer
        context:
          type: object
      required:
      - _id
      - name
      - email
      - status
      - secret
      - lastInteraction
      - createdAt
      - updatedAt
    POST_Supports_ChangeSupportTicketSeller:
      type: object
      properties:
        sellerId:
          type: string
      required:
      - sellerId
  securitySchemes:
    jwt:
      type: http
      scheme: bearer
      bearerFormat: JWT
    apikey:
      type: apiKey
      scheme: bearer
      in: header
      name: Authorization
    customer-jwt:
      type: http
      scheme: bearer
      bearerFormat: JWT
    orgApiKey:
      type: apiKey
      scheme: bearer
      in: header
      name: Authorization