---
title: "Export the scenario as Json to be used by OctoPerf Maven Plugin"
method: POST
path: "/runtime/scenarios/export/maven"
tags: ["Runtime - Scenarios"]
---

# Export the scenario as Json to be used by OctoPerf Maven Plugin

`POST /runtime/scenarios/export/maven`

## Request body

- Scenario
  - `id` string, nullable
  - `userId` string, nullable
  - `projectId` string, nullable
  - `name` string
  - `description` string, nullable
  - `userProfiles` UserProfile[], nullable
    - `id` string, nullable
    - `name` string, nullable
    - `virtualUserId` string
    - `providerId` string
    - `location` string
    - `load` unknown
    - `memory` MemorySettings
      - `vuMb` number, double
    - `iterations` integer
    - `engine` union
      - JmeterUserProfileEngine
        - `settings` JmeterEngineSettings
          - `externalLiveReporting` JmeterExternalLiveReportingSettings
            - `queueSize` integer, nullable
            - `listeners` BackendListener[], nullable
              - …
          - `errorHandling` 'CONTINUE' | 'START_NEXT_THREAD_LOOP' | 'STOP_THREAD' | 'STOP_TEST' | 'STOP_TEST_NOW'
          - `thinkTime` ThinktimeSettings
            - `thinktime` unknown
            - `pacing` unknown
          - `setUp` SetUpTearDownSettings
            - `virtualUserId` string
            - `scope` 'LOCAL' | 'GLOBAL', nullable
            - `onSampleError` 'CONTINUE' | 'START_NEXT_THREAD_LOOP' | 'STOP_THREAD' | 'STOP_TEST' | 'STOP_TEST_NOW'
            - `numberOfThreads` integer
            - `rampupPeriodSec` integer
            - `loopCount` integer
            - `sameUserOnEachIteration` boolean
            - `pacing` unknown
          - `tearDown` SetUpTearDownSettings
            - `virtualUserId` string
            - `scope` 'LOCAL' | 'GLOBAL', nullable
            - `onSampleError` 'CONTINUE' | 'START_NEXT_THREAD_LOOP' | 'STOP_THREAD' | 'STOP_TEST' | 'STOP_TEST_NOW'
            - `numberOfThreads` integer
            - `rampupPeriodSec` integer
            - `loopCount` integer
            - `sameUserOnEachIteration` boolean
            - `pacing` unknown
        - `bandwidth` BandwidthSettings
          - `name` string
          - `bitsPerSecond` integer
        - `browser` BrowserSettings
          - `name` string
          - `userAgent` string
          - `cache` CacheManager
            - `clearCacheOnEachIteration` boolean
            - `useCacheControlHeaders` boolean
            - `cacheSize` integer
          - `cookies` CookiesManager
            - `clearOnEachIteration` boolean
            - `policy` 'COMPATIBILITY' | 'RFC2109' | 'RFC2965' | 'STANDARD' | 'NETSCAPE' | 'IGNORECOOKIES' | 'BESTMATCH'
          - `downloadResources` boolean
          - `keepAlive` boolean
        - `dns` DNSSettings
          - `clearEachIteration` boolean
          - `servers` string[]
          - `staticHosts` object
        - `jtl` JtlSettings
          - `type` 'ALL' | 'ERRORS' | 'SUCCESSES'
          - `settings` string[]
        - `properties` PropertiesSettings
          - `map` object, nullable
      - PlaywrightUserProfileEngine
        - `settings` JmeterEngineSettings
          - `externalLiveReporting` JmeterExternalLiveReportingSettings
            - `queueSize` integer, nullable
            - `listeners` BackendListener[], nullable
              - …
          - `errorHandling` 'CONTINUE' | 'START_NEXT_THREAD_LOOP' | 'STOP_THREAD' | 'STOP_TEST' | 'STOP_TEST_NOW'
          - `thinkTime` ThinktimeSettings
            - `thinktime` unknown
            - `pacing` unknown
          - `setUp` SetUpTearDownSettings
            - `virtualUserId` string
            - `scope` 'LOCAL' | 'GLOBAL', nullable
            - `onSampleError` 'CONTINUE' | 'START_NEXT_THREAD_LOOP' | 'STOP_THREAD' | 'STOP_TEST' | 'STOP_TEST_NOW'
            - `numberOfThreads` integer
            - `rampupPeriodSec` integer
            - `loopCount` integer
            - `sameUserOnEachIteration` boolean
            - `pacing` unknown
          - `tearDown` SetUpTearDownSettings
            - `virtualUserId` string
            - `scope` 'LOCAL' | 'GLOBAL', nullable
            - `onSampleError` 'CONTINUE' | 'START_NEXT_THREAD_LOOP' | 'STOP_THREAD' | 'STOP_TEST' | 'STOP_TEST_NOW'
            - `numberOfThreads` integer
            - `rampupPeriodSec` integer
            - `loopCount` integer
            - `sameUserOnEachIteration` boolean
            - `pacing` unknown
        - `device` PlaywrightDevice
          - `name` string
        - `timeoutMs` integer
        - `baseURL` string
        - `slowMoMs` integer
      - SeleniumUserProfileEngine
        - `settings` JmeterEngineSettings
          - `externalLiveReporting` JmeterExternalLiveReportingSettings
            - `queueSize` integer, nullable
            - `listeners` BackendListener[], nullable
              - …
          - `errorHandling` 'CONTINUE' | 'START_NEXT_THREAD_LOOP' | 'STOP_THREAD' | 'STOP_TEST' | 'STOP_TEST_NOW'
          - `thinkTime` ThinktimeSettings
            - `thinktime` unknown
            - `pacing` unknown
          - `setUp` SetUpTearDownSettings
            - `virtualUserId` string
            - `scope` 'LOCAL' | 'GLOBAL', nullable
            - `onSampleError` 'CONTINUE' | 'START_NEXT_THREAD_LOOP' | 'STOP_THREAD' | 'STOP_TEST' | 'STOP_TEST_NOW'
            - `numberOfThreads` integer
            - `rampupPeriodSec` integer
            - `loopCount` integer
            - `sameUserOnEachIteration` boolean
            - `pacing` unknown
          - `tearDown` SetUpTearDownSettings
            - `virtualUserId` string
            - `scope` 'LOCAL' | 'GLOBAL', nullable
            - `onSampleError` 'CONTINUE' | 'START_NEXT_THREAD_LOOP' | 'STOP_THREAD' | 'STOP_TEST' | 'STOP_TEST_NOW'
            - `numberOfThreads` integer
            - `rampupPeriodSec` integer
            - `loopCount` integer
            - `sameUserOnEachIteration` boolean
            - `pacing` unknown
        - `bandwidth` BandwidthSettings
          - `name` string
          - `bitsPerSecond` integer
  - `mode` 'STANDARD' | 'FUNCTIONAL', nullable
  - `created` string, date-time, nullable
  - `lastModified` string, date-time, nullable
  - `tags` string[], nullable

## Response `200`

OK

## Other responses

- `400` — Bad Request
- `403` — Forbidden
- `404` — Not Found
- `409` — Conflict
- `429` — Too Many Requests

---

[API](https://skmtc.net/octoperf/apis/octoperf-api.md) · [All operations](https://skmtc.net/octoperf/apis/octoperf-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/octoperf/octoperf-api/versions/4b624af2cb6e/schema)
