Visma UI Extension API

The UiExtension API from Visma — 5 operation(s) for uiextension.

Operations 5

GET /v1/uiExtension/availableScreens Returns the list of available screenIds and their stepIds for Ui Extensions #
GET /v1/uiExtension/{ownerId} Returns the list of all Ui Extensions for current owner - ScreenId=SM205002 #
POST /v1/uiExtension Create Ui Extension #
DELETE /v1/uiExtension/{ownerId}/{internalId} Delete Menu Ui Extension #
DELETE /v1/uiExtension/{ownerId}/{internalId}/{screenId}/{stepId} Delete Action Ui Extension #

Documentation

Specifications

Other Resources

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/visma-uiextension-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

visma-uiextension-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Visma.net ERP UI Extension API
  version: v1
servers:
- url: https://api.finance.visma.net
tags:
- name: UiExtension
paths:
  /v1/uiExtension/availableScreens:
    get:
      tags:
      - UiExtension
      summary: Returns the list of available screenIds and their stepIds for Ui Extensions
      operationId: UiExtension_GetAllUiExtensions
      parameters:
      - name: erp-api-background
        in: header
        description: 'Accepts the request and queues it to be executed in the background by our least busy worker. Responds with 202 Accepted and a document containing a JobId reference and details state location.

          Supported values:

          * a URL: when the background operation is finished, a notification will be posted to the URL with a document containing a reference id, status code and a details state location.

          * "none" (without quotes): Fire and forget; no notification will be sent when background operation is finished.

          * "subscription[:<name_1>=<value_1>,..,<name_n>=<value_n>]" (without quotes): when the background operation is finsihed, a notification is posted to the Webhook subscription set up in Developer Portal for your integration client.

          Optionally a set of name-value pairs can be added. These will be sent as headers in the POST request to the Webhook subscription''s url.


          To find status and details of a background-api operation, GET .. v1/background/{id}. To get the response payload of a background-api operation, if any, GET .. v1/background/{id}/content'
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UiExtensionScreenDto'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UiExtensionScreenDto'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UiExtensionScreenDto'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UiExtensionScreenDto'
        '202':
          description: Server accepted and queued the request for background execution.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
            text/json:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
            application/xml:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
            text/xml:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
      security:
      - interactiveapi: []
  /v1/uiExtension/{ownerId}:
    get:
      tags:
      - UiExtension
      summary: Returns the list of all Ui Extensions for current owner - ScreenId=SM205002
      operationId: UiExtension_GetAllUiExtensionsByownerId
      parameters:
      - name: ownerId
        in: path
        description: ''
        required: true
        schema:
          type: string
          format: uuid
      - name: screenId
        in: query
        schema:
          type: string
      - name: type
        in: query
        schema:
          enum:
          - Action
          - Menu
          type: string
      - name: erp-api-background
        in: header
        description: 'Accepts the request and queues it to be executed in the background by our least busy worker. Responds with 202 Accepted and a document containing a JobId reference and details state location.

          Supported values:

          * a URL: when the background operation is finished, a notification will be posted to the URL with a document containing a reference id, status code and a details state location.

          * "none" (without quotes): Fire and forget; no notification will be sent when background operation is finished.

          * "subscription[:<name_1>=<value_1>,..,<name_n>=<value_n>]" (without quotes): when the background operation is finsihed, a notification is posted to the Webhook subscription set up in Developer Portal for your integration client.

          Optionally a set of name-value pairs can be added. These will be sent as headers in the POST request to the Webhook subscription''s url.


          To find status and details of a background-api operation, GET .. v1/background/{id}. To get the response payload of a background-api operation, if any, GET .. v1/background/{id}/content'
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UiExtensionDto'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UiExtensionDto'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UiExtensionDto'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UiExtensionDto'
        '202':
          description: Server accepted and queued the request for background execution.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
            text/json:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
            application/xml:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
            text/xml:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
      security:
      - interactiveapi: []
  /v1/uiExtension:
    post:
      tags:
      - UiExtension
      summary: Create Ui Extension
      description: Response Message has StatusCode Ok if POST operation succeed
      operationId: UiExtension_Post
      parameters:
      - name: erp-api-background
        in: header
        description: 'Accepts the request and queues it to be executed in the background by our least busy worker. Responds with 202 Accepted and a document containing a JobId reference and details state location.

          Supported values:

          * a URL: when the background operation is finished, a notification will be posted to the URL with a document containing a reference id, status code and a details state location.

          * "none" (without quotes): Fire and forget; no notification will be sent when background operation is finished.

          * "subscription[:<name_1>=<value_1>,..,<name_n>=<value_n>]" (without quotes): when the background operation is finsihed, a notification is posted to the Webhook subscription set up in Developer Portal for your integration client.

          Optionally a set of name-value pairs can be added. These will be sent as headers in the POST request to the Webhook subscription''s url.


          To find status and details of a background-api operation, GET .. v1/background/{id}. To get the response payload of a background-api operation, if any, GET .. v1/background/{id}/content'
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UiExtensionUpdateDto'
          text/json:
            schema:
              $ref: '#/components/schemas/UiExtensionUpdateDto'
          application/xml:
            schema:
              $ref: '#/components/schemas/UiExtensionUpdateDto'
          text/xml:
            schema:
              $ref: '#/components/schemas/UiExtensionUpdateDto'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/UiExtensionUpdateDto'
        required: true
        x-bodyName: uiExtension
      responses:
        '200':
          description: Ok
          content:
            application/json:
              schema:
                type: object
            text/json:
              schema:
                type: object
        '202':
          description: Server accepted and queued the request for background execution.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
            text/json:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
      security:
      - interactiveapi: []
  /v1/uiExtension/{ownerId}/{internalId}:
    delete:
      tags:
      - UiExtension
      summary: Delete Menu Ui Extension
      description: Response Message has StatusCode Ok if DELETE operation succeed
      operationId: UiExtension_DeleteByownerIdinternalId
      parameters:
      - name: ownerId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: internalId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: erp-api-background
        in: header
        description: 'Accepts the request and queues it to be executed in the background by our least busy worker. Responds with 202 Accepted and a document containing a JobId reference and details state location.

          Supported values:

          * a URL: when the background operation is finished, a notification will be posted to the URL with a document containing a reference id, status code and a details state location.

          * "none" (without quotes): Fire and forget; no notification will be sent when background operation is finished.

          * "subscription[:<name_1>=<value_1>,..,<name_n>=<value_n>]" (without quotes): when the background operation is finsihed, a notification is posted to the Webhook subscription set up in Developer Portal for your integration client.

          Optionally a set of name-value pairs can be added. These will be sent as headers in the POST request to the Webhook subscription''s url.


          To find status and details of a background-api operation, GET .. v1/background/{id}. To get the response payload of a background-api operation, if any, GET .. v1/background/{id}/content'
        schema:
          type: string
      responses:
        '200':
          description: Ok
          content:
            application/json:
              schema:
                type: object
            text/json:
              schema:
                type: object
        '202':
          description: Server accepted and queued the request for background execution.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
            text/json:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
      security:
      - interactiveapi: []
  /v1/uiExtension/{ownerId}/{internalId}/{screenId}/{stepId}:
    delete:
      tags:
      - UiExtension
      summary: Delete Action Ui Extension
      description: Response Message has StatusCode Ok if DELETE operation succeed
      operationId: UiExtension_DeleteByownerIdinternalIdscreenIdstepId
      parameters:
      - name: ownerId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: internalId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: screenId
        in: path
        required: true
        schema:
          type: string
      - name: stepId
        in: path
        required: true
        schema:
          type: string
      - name: erp-api-background
        in: header
        description: 'Accepts the request and queues it to be executed in the background by our least busy worker. Responds with 202 Accepted and a document containing a JobId reference and details state location.

          Supported values:

          * a URL: when the background operation is finished, a notification will be posted to the URL with a document containing a reference id, status code and a details state location.

          * "none" (without quotes): Fire and forget; no notification will be sent when background operation is finished.

          * "subscription[:<name_1>=<value_1>,..,<name_n>=<value_n>]" (without quotes): when the background operation is finsihed, a notification is posted to the Webhook subscription set up in Developer Portal for your integration client.

          Optionally a set of name-value pairs can be added. These will be sent as headers in the POST request to the Webhook subscription''s url.


          To find status and details of a background-api operation, GET .. v1/background/{id}. To get the response payload of a background-api operation, if any, GET .. v1/background/{id}/content'
        schema:
          type: string
      responses:
        '200':
          description: Ok
          content:
            application/json:
              schema:
                type: object
            text/json:
              schema:
                type: object
        '202':
          description: Server accepted and queued the request for background execution.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
            text/json:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
      security:
      - interactiveapi: []
components:
  schemas:
    UiExtensionScreenDto:
      type: object
      properties:
        screenId:
          type: string
        stepIds:
          type: array
          items:
            type: string
    UiExtensionDto:
      type: object
      properties:
        internalId:
          type: string
          format: uuid
        title:
          type: string
        url:
          type: string
        type:
          enum:
          - Action
          - Menu
          type: string
        screenId:
          type: string
        stepId:
          type: string
        ownerName:
          type: string
        enabled:
          type: boolean
    UiExtensionUpdateDto:
      required:
      - title
      - url
      - type
      - ownerId
      - ownerName
      type: object
      properties:
        title:
          type: string
          description: ''
        url:
          type: string
          description: ''
        type:
          enum:
          - Action
          - Menu
          type: string
          description: ''
        screenId:
          type: string
          description: ''
        stepId:
          type: string
          description: ''
        ownerId:
          type: string
          description: ''
          format: uuid
        ownerName:
          type: string
          description: ''
    BackgroundApiAcceptedDto:
      type: object
      properties:
        id:
          type: string
        stateLocation:
          type: string
  securitySchemes:
    interactiveapi:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://connect.visma.com/connect/authorize
          tokenUrl: https://connect.visma.com/connect/token
          scopes:
            vismanet_erp_interactive_api:read: vismanet_erp_interactive_api:read
            vismanet_erp_interactive_api:update: vismanet_erp_interactive_api:update
            vismanet_erp_interactive_api:create: vismanet_erp_interactive_api:create
            vismanet_erp_interactive_api:delete: vismanet_erp_interactive_api:delete
            vismanet_erp_interactive_api:ui-extension: vismanet_erp_interactive_api:ui-extension