Web-NCC API 1.0.0

The OpenAPI document (YAML) describes the API in machine-readable form.

ServerURL
Productionhttps://api.web-ncc.maillefer.net
Developmenthttps://dev-api.web-ncc.momocode.com

The Web-NCC API keeps the data needed to simulate cable production with NCC-Core, such as production lines, extruders, cables and materials, and runs the simulations.

Authentication

Logging in takes two steps:

  1. POST /login-keys with the user's email address as the username. A one-time login key is sent to that address. It is valid for 10 minutes.
  2. POST /sessions with the username and the login key. The response contains a session token.

Send the session token in the Authorization header of every other request:

Authorization: Bearer <session token>

The user's access is checked on every request, so a session stops working when the user is deleted or the customer's subscription ends. A request without a valid session token is rejected with 401, and a request to an operation or workspace the user has no access to with 403.

Workspaces

Lines, cables and the other entities are kept in workspaces: the {workspace} in /ws/{workspace}/.... Access to a workspace is one of:

The users of a customer have access to the customer's workspace, which is identified by the customer's id. The access is full or no-edit-lines depending on the customer's subscription. They can also read the shared common workspace. Internal users, who do not belong to a customer, have access to everything, including the Users and Customers operations. A user can be given access to additional workspaces.

GET /me lists the workspaces available to the caller, except for the common workspace of customer users.

Entities

Lines, extruders, extruder output data, cables, materials, customers and simulations are entities that share the same operations under /ws/{workspace}/{type}:

Responses include the entity's workspace, id, version, created and modified, and archived when it is archived.

Simulations

A simulation is created as a draft, whose input may be incomplete, or directly as pending. Setting the state to pending submits the simulation to be run and requires a complete input. The state then changes to running and finally to finished or failed; poll the simulation to follow it. A finished simulation has a resultSummary, and the full result is included when the simulation is fetched by its id. A failed one has simulationInfo telling why.

Errors

A request body that does not match its schema is rejected with 400 and a body with a message and the validation errors. An entity that does not exist gives 404 without a body.

Authentication

Sessions

Logging in and inspecting the caller's credentials.

Requests a login key for a user

POST /login-keysNo authentication

Sends a one-time login key to the user's email address. The key is valid for 10 minutes.

Request body

object

PropertyTypeDescription
usernamerequired string The user's email address.
Responses

204 A login key was created and sent by email.

400 The request body does not match its schema.

ValidationError

403 The user does not exist or cannot log in, e.g. because the customer's subscription has ended.

Creates a session

POST /sessionsNo authentication

Exchanges a login key for a session token. The key can only be used once.

Request body

object

PropertyTypeDescription
usernamerequired string The user's email address.
loginKeyrequired string The login key sent by POST /login-keys.
Responses

201 A session was created.

object

PropertyTypeDescription
sessionTokenrequired string Session token for the Authorization header.

400 The request body does not match its schema.

ValidationError

403 The login key is wrong, expired or already used, or the user cannot log in.

Gets information about caller's credentials

GET /me

Responses

200 Caller's credentials.

object

PropertyTypeDescription
usernamerequired string
uidrequired string The user's id.
rolerequired one of "internal", "customer" internal for internal users, customer for the users of a customer.
workspacesrequired array of objects
workspaces[].workspacerequired string
workspaces[].namerequired string Name of the workspace for display.
workspaces[].accessrequired one of "full", "no-edit-lines", "read-only"

Sign-up

Creating a user with a sign-up token. An internal user creates the token for a customer and passes it to the invitee, who uses it to create a user account belonging to the customer.

Gets information about a sign-up token

GET /sign-up/tokens/{token}No authentication

Parameters
NameInTypeDescription
tokenrequired path string
Responses

200 The information given when the token was created.

object

PropertyTypeDescription
inviteerequired string Name of the invitee.
message string

403 The token is invalid, expired or already used.

Consumes a sign-up token to create a user

POST /sign-up/tokens/{token}/consumeNo authentication

Creates a user belonging to the customer the token was created for, named after the invitee. The email address must be verified first: if it is not, a verification email is sent and the request is rejected with EMAIL_VERIFICATION_REQUIRED. Retry once the address has been verified.

Parameters
NameInTypeDescription
tokenrequired path string
Request body

object

PropertyTypeDescription
emailrequired string The new user's email address.
Responses

200 The user was created.

400 The request body does not match its schema.

ValidationError

403 The token is invalid, expired or already used, or the email address needs to be verified first.

Reason

409 The email address is already in use.

Reason

Administration

Users

User accounts. Available to internal users only.

Lists users

GET /users

Responses

200 The list of users.

array of User

Inserts a new user

POST /users

When the user belongs to a customer, the customer's sign-up is marked completed and any sign-up token of the customer is revoked.

Request body

UserInsert

A user account.

PropertyTypeDescription
emailrequired string Email address, also used as the username for logging in.
namerequired string
customer reference to Customer or null The customer the user belongs to. A user without a customer is an internal user.
additionalWorkspaces array of objects Workspaces the user has access to in addition to the ones given by the user's customer or internal role.
additionalWorkspaces[].workspace string
additionalWorkspaces[].access one of "full", "no-edit-lines", "read-only"
Responses

201 The user was created.

HeaderDescription
Location Location of the new user.

User

400 The request body does not match its schema.

ValidationError

409 The email address is already in use.

422 The customer does not exist.

Reason

Gets user details

GET /users/{id}

Parameters
NameInTypeDescription
idrequired path string
Responses

200 The user details.

User

404 The entity does not exist.

Partially updates user

PATCH /users/{id}

Parameters
NameInTypeDescription
idrequired path string
Request body

UserUpdate

Changes to User as a JSON merge patch (RFC 7386). The merged properties must match UserInsert. Setting an optional property to null removes it.

PropertyTypeDescription
name string
additionalWorkspaces array of objects or null Workspaces the user has access to in addition to the ones given by the user's customer or internal role.
additionalWorkspaces[].workspace string
additionalWorkspaces[].access one of "full", "no-edit-lines", "read-only"
Responses

200 The updated user.

User

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Deletes user

DELETE /users/{id}

Succeeds also when the user does not exist.

Parameters
NameInTypeDescription
idrequired path string
Responses

204 The user no longer exists.

Customers

Customers, their subscriptions and sign-up tokens. Managed by internal users.

Lists customers

GET /ws/{workspace}/customers

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
archived query one of "" Give without a value (?archived) to list only archived entities. Otherwise archived entities are left out.
Responses

200 The list of customers.

array of Customer

Inserts a new customer

POST /ws/{workspace}/customers

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
Request body

CustomerInsert

A customer. The users of a customer have access to a workspace identified by the customer's id.

PropertyTypeDescription
namerequired string
trialrequired boolean Whether the customer is a trial customer.
email string
phone string
subscription object The customer's users can log in only while the subscription is active and has not expired.
subscription.active boolean
subscription.expiresAt string (date-time) or null When the subscription expires. Null if it does not.
subscription.allowEditLines boolean Whether the customer's users can create and change lines in the customer's workspace.
Responses

201 The created customer.

HeaderDescription
Location Location of the new customer.

Customer

400 The request body does not match its schema.

ValidationError

Gets customer details

GET /ws/{workspace}/customers/{id}

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

200 The current version of the customer.

Customer

404 The entity does not exist.

Partially updates customer

PATCH /ws/{workspace}/customers/{id}

Applies a JSON merge patch and stores the result as a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

CustomerUpdate

Changes to Customer as a JSON merge patch (RFC 7386). The merged properties must match CustomerInsert. Setting an optional property to null removes it.

PropertyTypeDescription
name string
trial boolean Whether the customer is a trial customer.
email string or null
phone string or null
subscription object or null The customer's users can log in only while the subscription is active and has not expired.
Responses

200 The updated customer.

Customer

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Sets archival status

PUT /ws/{workspace}/customers/{id}/archived

Archives or unarchives the customer. This does not create a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

ArchivedStatusUpdate

PropertyTypeDescription
archivedrequired boolean
Responses

200 The archival status was set.

ArchivedStatus

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Lists versions of a customer

GET /ws/{workspace}/customers/{id}/versions

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

200 All versions, oldest first, including the current one.

Versions

404 The entity does not exist.

Gets a specific version of a customer

GET /ws/{workspace}/customers/{id}/versions/{version}

A version is stored shortly after it is created, so fetching a version right after a change may briefly give 404.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
versionrequired path string A version identifier from the list of versions.
Responses

200 The customer as it was in the given version.

Customer

404 The entity does not exist.

Creates a sign-up token for the customer

POST /ws/{workspace}/customers/{id}/sign-up-token

A customer can have one sign-up token at a time, and none after a user has been created with it.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

object

PropertyTypeDescription
expiresAtrequired string (date-time) When the token expires. Must be in the future.
inviteerequired string Name of the invitee, which becomes the name of the created user.
message string Message shown to the invitee.
Responses

201 The sign-up token was created.

object

PropertyTypeDescription
tokenrequired string The sign-up token to pass to the invitee.

400 The request body does not match its schema, or expiresAt is in the past.

ValidationError or Error

404 The customer does not exist.

Error

409 The customer already has a sign-up token, or has completed the sign-up.

Reason

Revokes customer's sign-up token

DELETE /ws/{workspace}/customers/{id}/sign-up-token

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

204 The customer no longer has a valid sign-up token.

Simulation inputs

Lines

Production lines, their construction and extruders.

Lists lines

GET /ws/{workspace}/lines

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
archived query one of "" Give without a value (?archived) to list only archived entities. Otherwise archived entities are left out.
Responses

200 The list of lines.

array of Line

Inserts a new line

POST /ws/{workspace}/lines

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
Request body

LineInsert

A production line.

PropertyTypeDescription
namerequired string
tag string
project string
serial string
type one of "CCV", "VCV"
customerrequired reference to Customer or null The customer that owns the line.
constructionrequired LineConstruction
extrudersrequired object The extruders on the line.
extruders.extruder1required reference to Extruder
extruders.extruder2required reference to Extruder
extruders.extruder3required reference to Extruder
Responses

201 The created line.

HeaderDescription
Location Location of the new line.

Line

400 The request body does not match its schema.

ValidationError

Gets line details

GET /ws/{workspace}/lines/{id}

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

200 The current version of the line.

Line

404 The entity does not exist.

Partially updates line

PATCH /ws/{workspace}/lines/{id}

Applies a JSON merge patch and stores the result as a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

LineUpdate

Changes to Line as a JSON merge patch (RFC 7386). The merged properties must match LineInsert. Setting an optional property to null removes it.

PropertyTypeDescription
name string
tag string or null
project string or null
serial string or null
type one of "CCV", "VCV" or null
customer object or null The customer that owns the line.
construction object
extruders object The extruders on the line.
Responses

200 The updated line.

Line

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Sets archival status

PUT /ws/{workspace}/lines/{id}/archived

Archives or unarchives the line. This does not create a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

ArchivedStatusUpdate

PropertyTypeDescription
archivedrequired boolean
Responses

200 The archival status was set.

ArchivedStatus

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Lists versions of a line

GET /ws/{workspace}/lines/{id}/versions

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

200 All versions, oldest first, including the current one.

Versions

404 The entity does not exist.

Gets a specific version of a line

GET /ws/{workspace}/lines/{id}/versions/{version}

A version is stored shortly after it is created, so fetching a version right after a change may briefly give 404.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
versionrequired path string A version identifier from the list of versions.
Responses

200 The line as it was in the given version.

Line

404 The entity does not exist.

Extruders

Extruders that can be placed on a line.

Lists extruders

GET /ws/{workspace}/extruders

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
archived query one of "" Give without a value (?archived) to list only archived entities. Otherwise archived entities are left out.
Responses

200 The list of extruders.

array of Extruder

Inserts a new extruder

POST /ws/{workspace}/extruders

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
Request body

ExtruderInsert

An extruder.

PropertyTypeDescription
namerequired string Name of the extruder
Responses

201 The created extruder.

HeaderDescription
Location Location of the new extruder.

Extruder

400 The request body does not match its schema.

ValidationError

Gets extruder details

GET /ws/{workspace}/extruders/{id}

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

200 The current version of the extruder.

Extruder

404 The entity does not exist.

Partially updates extruder

PATCH /ws/{workspace}/extruders/{id}

Applies a JSON merge patch and stores the result as a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

ExtruderUpdate

Changes to Extruder as a JSON merge patch (RFC 7386). The merged properties must match ExtruderInsert. Setting an optional property to null removes it.

PropertyTypeDescription
name string Name of the extruder
Responses

200 The updated extruder.

Extruder

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Sets archival status

PUT /ws/{workspace}/extruders/{id}/archived

Archives or unarchives the extruder. This does not create a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

ArchivedStatusUpdate

PropertyTypeDescription
archivedrequired boolean
Responses

200 The archival status was set.

ArchivedStatus

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Lists versions of an extruder

GET /ws/{workspace}/extruders/{id}/versions

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

200 All versions, oldest first, including the current one.

Versions

404 The entity does not exist.

Gets a specific version of an extruder

GET /ws/{workspace}/extruders/{id}/versions/{version}

A version is stored shortly after it is created, so fetching a version right after a change may briefly give 404.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
versionrequired path string A version identifier from the list of versions.
Responses

200 The extruder as it was in the given version.

Extruder

404 The entity does not exist.

Extruder output data

Output data of an extruder with a given screw, filters and material, measured in a test run.

Lists extruder output data

GET /ws/{workspace}/extruder-output-data

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
archived query one of "" Give without a value (?archived) to list only archived entities. Otherwise archived entities are left out.
Responses

200 The list of extruder output data.

array of ExtruderOutputData

Inserts new extruder output data

POST /ws/{workspace}/extruder-output-data

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
Request body

ExtruderOutputDataInsert

Output of an extruder with a given screw, filters and material, measured in a test run.

PropertyTypeDescription
namerequired string
extruderrequired reference to Extruder The extruder that was tested.
linerequired reference to Line or null Line on which the test was performed
screwrequired string Screw that was used for the test
filtersrequired integer Filters that were used for the test
materialrequired reference to Material Material that was used for the test
datarequired ExtruderData
Responses

201 The created extruder output data.

HeaderDescription
Location Location of the new extruder output data.

ExtruderOutputData

400 The request body does not match its schema.

ValidationError

Gets extruder output data details

GET /ws/{workspace}/extruder-output-data/{id}

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

200 The current version of the extruder output data.

ExtruderOutputData

404 The entity does not exist.

Partially updates extruder output data

PATCH /ws/{workspace}/extruder-output-data/{id}

Applies a JSON merge patch and stores the result as a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

ExtruderOutputDataUpdate

Changes to ExtruderOutputData as a JSON merge patch (RFC 7386). The merged properties must match ExtruderOutputDataInsert. Setting an optional property to null removes it.

PropertyTypeDescription
name string
extruder object The extruder that was tested.
line object or null Line on which the test was performed
screw string Screw that was used for the test
filters integer Filters that were used for the test
material object Material that was used for the test
data object
Responses

200 The updated extruder output data.

ExtruderOutputData

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Sets archival status

PUT /ws/{workspace}/extruder-output-data/{id}/archived

Archives or unarchives the extruder output data. This does not create a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

ArchivedStatusUpdate

PropertyTypeDescription
archivedrequired boolean
Responses

200 The archival status was set.

ArchivedStatus

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Lists versions of extruder output data

GET /ws/{workspace}/extruder-output-data/{id}/versions

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

200 All versions, oldest first, including the current one.

Versions

404 The entity does not exist.

Gets a specific version of extruder output data

GET /ws/{workspace}/extruder-output-data/{id}/versions/{version}

A version is stored shortly after it is created, so fetching a version right after a change may briefly give 404.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
versionrequired path string A version identifier from the list of versions.
Responses

200 The extruder output data as it was in the given version.

ExtruderOutputData

404 The entity does not exist.

Cables

Cables, their layer materials and parameters.

Lists cables

GET /ws/{workspace}/cables

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
archived query one of "" Give without a value (?archived) to list only archived entities. Otherwise archived entities are left out.
Responses

200 The list of cables.

array of Cable

Inserts a new cable

POST /ws/{workspace}/cables

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
Request body

CableInsert

A cable design.

PropertyTypeDescription
namerequired string
materialsrequired object
materials.innerLayerrequired reference to Material Inner layer material
materials.insulationLayerrequired reference to Material Insulation layer material
materials.outerLayerrequired reference to Material Outer layer material
parametersrequired CableParameters
voltage number kV
Responses

201 The created cable.

HeaderDescription
Location Location of the new cable.

Cable

400 The request body does not match its schema.

ValidationError

Gets cable details

GET /ws/{workspace}/cables/{id}

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

200 The current version of the cable.

Cable

404 The entity does not exist.

Partially updates cable

PATCH /ws/{workspace}/cables/{id}

Applies a JSON merge patch and stores the result as a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

CableUpdate

Changes to Cable as a JSON merge patch (RFC 7386). The merged properties must match CableInsert. Setting an optional property to null removes it.

PropertyTypeDescription
name string
materials object
parameters object
voltage number or null kV
Responses

200 The updated cable.

Cable

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Sets archival status

PUT /ws/{workspace}/cables/{id}/archived

Archives or unarchives the cable. This does not create a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

ArchivedStatusUpdate

PropertyTypeDescription
archivedrequired boolean
Responses

200 The archival status was set.

ArchivedStatus

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Lists versions of a cable

GET /ws/{workspace}/cables/{id}/versions

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

200 All versions, oldest first, including the current one.

Versions

404 The entity does not exist.

Gets a specific version of a cable

GET /ws/{workspace}/cables/{id}/versions/{version}

A version is stored shortly after it is created, so fetching a version right after a change may briefly give 404.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
versionrequired path string A version identifier from the list of versions.
Responses

200 The cable as it was in the given version.

Cable

404 The entity does not exist.

Materials

Materials and their parameters.

Lists materials

GET /ws/{workspace}/materials

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
archived query one of "" Give without a value (?archived) to list only archived entities. Otherwise archived entities are left out.
Responses

200 The list of materials.

array of Material

Inserts a new material

POST /ws/{workspace}/materials

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
Request body

MaterialInsert

A screen or insulation material.

PropertyTypeDescription
namerequired string
typerequired one of "screen", "insulation"
hvdcModuleMaterialrequired boolean
parametersrequired MaterialParameters
Responses

201 The created material.

HeaderDescription
Location Location of the new material.

Material

400 The request body does not match its schema.

ValidationError

Gets material details

GET /ws/{workspace}/materials/{id}

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

200 The current version of the material.

Material

404 The entity does not exist.

Partially updates material

PATCH /ws/{workspace}/materials/{id}

Applies a JSON merge patch and stores the result as a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

MaterialUpdate

Changes to Material as a JSON merge patch (RFC 7386). The merged properties must match MaterialInsert. Setting an optional property to null removes it.

PropertyTypeDescription
name string
type one of "screen", "insulation"
hvdcModuleMaterial boolean
parameters object
Responses

200 The updated material.

Material

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Sets archival status

PUT /ws/{workspace}/materials/{id}/archived

Archives or unarchives the material. This does not create a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

ArchivedStatusUpdate

PropertyTypeDescription
archivedrequired boolean
Responses

200 The archival status was set.

ArchivedStatus

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Lists versions of a material

GET /ws/{workspace}/materials/{id}/versions

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

200 All versions, oldest first, including the current one.

Versions

404 The entity does not exist.

Gets a specific version of a material

GET /ws/{workspace}/materials/{id}/versions/{version}

A version is stored shortly after it is created, so fetching a version right after a change may briefly give 404.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
versionrequired path string A version identifier from the list of versions.
Responses

200 The material as it was in the given version.

Material

404 The entity does not exist.

Simulation

Simulations

Simulations of producing a cable on a line. A simulation is run when its state is set to pending, either on creation or by updating a draft.

Lists simulations

GET /ws/{workspace}/simulations

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
archived query one of "" Give without a value (?archived) to list only archived entities. Otherwise archived entities are left out.
Responses

200 The list of simulations.

array of Simulation

Inserts a new simulation

POST /ws/{workspace}/simulations

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
Request body

SimulationInsert

A simulation of producing a cable on a line. See the overview for the states of a simulation.

PropertyTypeDescription
linerequired reference to Line (a specific version) or null The line whose construction was used for the input.
cablerequired reference to Cable (a specific version) or null The cable used for the input.
inputrequired object The input for NCC-Core. May be incomplete while state is draft.
name string
tags array of string
staterequired SimulationState
previousSimulation reference to Simulation The simulation that this simulation was copied from.
options object
options.automateConditionsAndLimitsrequired boolean
materials object The materials used for the input.
materials.innerLayerrequired reference to Material (a specific version) Inner layer material
materials.insulationLayerrequired reference to Material (a specific version) Insulation layer material
materials.outerLayerrequired reference to Material (a specific version) Outer layer material
extruderOutputData object The extruder output data used for the input.
extruderOutputData.extruder1required reference to ExtruderOutputData (a specific version) or null
extruderOutputData.extruder2required reference to ExtruderOutputData (a specific version) or null
extruderOutputData.extruder3required reference to ExtruderOutputData (a specific version) or null

Unless state is "draft", input must be SimulationInput.

Responses

201 The created simulation.

HeaderDescription
Location Location of the new simulation.

Simulation

400 The request body does not match its schema.

ValidationError

Gets simulation details

GET /ws/{workspace}/simulations/{id}

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Responses

200 The current version of the simulation.

Simulation

404 The entity does not exist.

Partially updates simulation

PATCH /ws/{workspace}/simulations/{id}

Applies a JSON merge patch and stores the result as a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

SimulationUpdate

Changes to Simulation as a JSON merge patch (RFC 7386). The merged properties must match SimulationInsert. Setting an optional property to null removes it.

PropertyTypeDescription
line object or null The line whose construction was used for the input.
cable object or null The cable used for the input.
input object The input for NCC-Core.
name string or null
tags array of string or null
state SimulationState
previousSimulation object or null The simulation that this simulation was copied from.
options object or null
materials object or null The materials used for the input.
extruderOutputData object or null The extruder output data used for the input.
Responses

200 The updated simulation.

Simulation

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Sets archival status

PUT /ws/{workspace}/simulations/{id}/archived

Archives or unarchives the simulation. This does not create a new version.

Parameters
NameInTypeDescription
workspacerequired path string The workspace the entities are kept in.
idrequired path string
Request body

ArchivedStatusUpdate

PropertyTypeDescription
archivedrequired boolean
Responses

200 The archival status was set.

ArchivedStatus

400 The request body does not match its schema.

ValidationError

404 The entity does not exist.

Schemas

Versions

array of objects

PropertyTypeDescription
[].versionrequired string Version identifier.
[].createdrequired string (date-time) When the version was created.

ArchivedStatus

object

PropertyTypeDescription
archivedrequired boolean
archivedOn string (date-time) When the entity was archived. Only when archived.

ArchivedStatusUpdate

object

PropertyTypeDescription
archivedrequired boolean

ValidationError

object

PropertyTypeDescription
messagerequired string
errorsrequired array of objects The validation errors as reported by Ajv. instancePath is a JSON pointer to the invalid value in the request body.
errors[].instancePath string
errors[].schemaPath string
errors[].keyword string
errors[].params object
errors[].message string

Error

object

PropertyTypeDescription
errorrequired object
error.messagerequired string

Reason

object

PropertyTypeDescription
reasonrequired string EMAIL_VERIFICATION_REQUIRED, EMAIL_IN_USE, CUSTOMER_NOT_FOUND, SIGN_UP_TOKEN_ALREADY_EXISTS or SIGN_UP_ALREADY_COMPLETED, depending on the operation.

User

object

PropertyTypeDescription
idrequired string
namerequired string
emailrequired string Email address, also used as the username for logging in.
customer reference to Customer or null The customer the user belongs to. A user without a customer is an internal user.
additionalWorkspaces array of objects Workspaces the user has access to in addition to the ones given by the user's customer or internal role.
additionalWorkspaces[].workspace string
additionalWorkspaces[].access one of "full", "no-edit-lines", "read-only"

UserInsert

object

PropertyTypeDescription
emailrequired string Email address, also used as the username for logging in.
namerequired string
customer reference to Customer or null The customer the user belongs to. A user without a customer is an internal user.
additionalWorkspaces array of objects Workspaces the user has access to in addition to the ones given by the user's customer or internal role.
additionalWorkspaces[].workspace string
additionalWorkspaces[].access one of "full", "no-edit-lines", "read-only"

UserUpdate

object

PropertyTypeDescription
name string
additionalWorkspaces array of objects or null Workspaces the user has access to in addition to the ones given by the user's customer or internal role.
additionalWorkspaces[].workspace string
additionalWorkspaces[].access one of "full", "no-edit-lines", "read-only"

Line

object

PropertyTypeDescription
workspacerequired string The workspace the entity is stored in.
idrequired string Identifier of the entity within its workspace.
versionrequired string Identifier of the current version.
createdrequired string (date-time) When the entity was created.
modifiedrequired string (date-time) When the current version was created.
archived string (date-time) When the entity was archived. Only present on archived entities.
namerequired string
tag string
project string
serial string
type one of "CCV", "VCV"
customerrequired reference to Customer or null The customer that owns the line.
constructionrequired LineConstruction
extrudersrequired object The extruders on the line.
extruders.extruder1required reference to Extruder
extruders.extruder2required reference to Extruder
extruders.extruder3required reference to Extruder

LineConstruction

object

PropertyTypeDescription
parametersrequired LineParameters
sectionsrequired array of LineSection
extraModules object
extraModules.degassing object
extraModules.hvdc object
extraModules.roundnessEstimation object
MRCparameters object
MRCparameters.TargetSurfaceTemperature number °C
MRCparameters.TargetSurfaceTemperatureHVDC number °C
MRCparameters.TargetXLinkLayerThickness number mm
MRCparameters.MaxZoneTemperature number °C
MRCparameters.ColdTemperature number °C
MRCparameters.ZoneTemperatureStep number °C
MRCparameters.ZoneTemperatureCorrection array of number °C, 3 items

LineParameters

object

PropertyTypeDescription
AmbientTemperaturerequired number Ambient Temperature [°C]
CableEmissivityrequired number Cable Emissivity [-]
TubeEmissivityrequired number Tube Emissivity [-]
GasCondCoeffrequired number Gas Cond Coeff. [ ]
GasCondCoeff2required number Gas Cond Coeff. #2 [ ]
DefaultGasSpeedrequired number Default Gas Speed [m/s]
DefaultGasTemprequired number Default Gas Temp [°C]
CoolingExponentrequired number Cooling Exponent [-]
CoolingCoefficientrequired number Cooling Coefficient [W/m2°C]
InsulationLayerrequired number Insulation Layer
SimulationAccuracyrequired number Simulation Accuracy
CompactnessCoeffLimitrequired number Compactness Coeff. Limit
ZoneCoolingConstantrequired number Zone Cooling Constant [s]
GasHeatingConstantrequired number Gas Heating Constant [-]
FloatingTemperaturerequired number Floating temperature [°C]
MinimumCuringTemprequired number Minimum curing temp. [°C]
ProfileReductionModerequired string Profile reduction mode
ProfileMaxSteprequired number Profile max. step [°C]
NumberOfExtraHalfLivesrequired number Number of extra half-lives
SpecialProfileTmaxrequired number Special Profile T(max) [°C]
SpecialProfileXmaxrequired number Special Profile X(max) [%]
ObservationPointrequired number Observation point (0-1)
XRayPositionrequired number X-ray position [m]
HeatZoneNoninsulLength number m
HeatZoneWallThickess number mm
TubeFlangeThickness number mm
TubeFlangeDiameter number mm
TubeOuterEmissivity number
TubeOuterConvCoeff number
EndCuringProfileSteprequired number End Curing Profile Step [°C]
ShutDownTemperaturerequired number Shut-Down Temperature [°C]
N2FlowInsideHeatingrequired number N2 Flow inside heating
N2ToTubeConvCoeffrequired number N2 to Tube Conv. Coeff.
N2ToCableConvCoeffrequired number N2 to Cable Conv. Coeff.
TcAdjustmentrequired number TC Adjustment [%]
CatenaryFactorrequired number Catenary Factor [m]
XHeadAnglerequired number X-head Angle [ °]
MaxZoneTemprequired array of number Max Zone Temp (Nr&Values)
SlowZoneToGasCoefficientrequired number Slow Zone To Gas coeff. [W/m2°C]
SlowCableToGasCoefficientrequired number Slow Cable To Gas coeff. [W/m2°C]
SlowGasCoolingFlowrequired number Slow Gas Cooling Flow [m3/h]
SlowTempDifferenceCorrrequired number Slow Temp Difference Corr. [°C]
SlowCueCurveMaximum number
EnterCvZoneCoolingConstantrequired number Enter-CV zone cooling constant [s]
EnterCvMinEndTemperaturerequired number Enter-CV min. end temperature [°C]
CableFloatingAlarmLimitrequired number Cable floating alarm limit [%]
EnterTypeCvLinerequired boolean Enter-type_CV-line (No NCS)
NoBpsOrBpsWithReheaterrequired boolean No BPS or BPS with reheater

LineSection

object

PropertyTypeDescription
Typerequired integer
Length number m Length of the zone
ZoneLength array of number m
Diameter number mm (0 decimals) Inner diameter of the zone
GasFlow number m/s (0 decimals) Axial gas flow in the zone
Temperature number °C (0 decimals)
LengthToTouchPoint number m The distance from the turn pulley start to where the cable touches the turn pulley
TurnPulleyVolume number

LineInsert

object

PropertyTypeDescription
namerequired string
tag string
project string
serial string
type one of "CCV", "VCV"
customerrequired reference to Customer or null The customer that owns the line.
constructionrequired LineConstruction
extrudersrequired object The extruders on the line.
extruders.extruder1required reference to Extruder
extruders.extruder2required reference to Extruder
extruders.extruder3required reference to Extruder

LineUpdate

object

PropertyTypeDescription
name string
tag string or null
project string or null
serial string or null
type one of "CCV", "VCV" or null
customer object or null The customer that owns the line.
construction object
extruders object The extruders on the line.

Customer

object

PropertyTypeDescription
workspacerequired string The workspace the entity is stored in.
idrequired string Identifier of the entity within its workspace.
versionrequired string Identifier of the current version.
createdrequired string (date-time) When the entity was created.
modifiedrequired string (date-time) When the current version was created.
archived string (date-time) When the entity was archived. Only present on archived entities.
namerequired string
email string
phone string
trialrequired boolean Whether the customer is a trial customer.
subscription object The customer's users can log in only while the subscription is active and has not expired.
subscription.active boolean
subscription.expiresAt string (date-time) or null When the subscription expires. Null if it does not.
subscription.allowEditLines boolean Whether the customer's users can create and change lines in the customer's workspace.
signUp object State of the customer's sign-up token, managed with the sign-up-token operations.
signUp.tokenCreatedAtrequired string (date-time)
signUp.tokenExpiresAtrequired string (date-time)
signUp.revocationTokenrequired string
signUp.completedrequired boolean

CustomerInsert

object

PropertyTypeDescription
namerequired string
trialrequired boolean Whether the customer is a trial customer.
email string
phone string
subscription object The customer's users can log in only while the subscription is active and has not expired.
subscription.active boolean
subscription.expiresAt string (date-time) or null When the subscription expires. Null if it does not.
subscription.allowEditLines boolean Whether the customer's users can create and change lines in the customer's workspace.

CustomerUpdate

object

PropertyTypeDescription
name string
trial boolean Whether the customer is a trial customer.
email string or null
phone string or null
subscription object or null The customer's users can log in only while the subscription is active and has not expired.

Material

object

PropertyTypeDescription
workspacerequired string The workspace the entity is stored in.
idrequired string Identifier of the entity within its workspace.
versionrequired string Identifier of the current version.
createdrequired string (date-time) When the entity was created.
modifiedrequired string (date-time) When the current version was created.
archived string (date-time) When the entity was archived. Only present on archived entities.
typerequired one of "screen", "insulation"
namerequired string
hvdcModuleMaterialrequired boolean
parametersrequired MaterialParameters

MaterialParameters

object

PropertyTypeDescription
DensityOverTemperaturerequired array of [number °C, number g/m³]
SpecificHeatOverTemperaturerequired array of [number °C, number kJ/kg/°C]
ThermalConductivityOverTemperaturerequired array of [number °C, number W/m/°C]
ActivationEnergyrequired number kJ/mol
ReactionSpeedFactorrequired number 1/s
DecompositionHeatrequired number kJ/kg
MeltPeakLowrequired number
MeltPeakHighrequired number
Transparencyrequired number
MaterialFunctionBitsrequired number

MaterialInsert

object

PropertyTypeDescription
namerequired string
typerequired one of "screen", "insulation"
hvdcModuleMaterialrequired boolean
parametersrequired MaterialParameters

MaterialUpdate

object

PropertyTypeDescription
name string
type one of "screen", "insulation"
hvdcModuleMaterial boolean
parameters object

Cable

object

PropertyTypeDescription
workspacerequired string The workspace the entity is stored in.
idrequired string Identifier of the entity within its workspace.
versionrequired string Identifier of the current version.
createdrequired string (date-time) When the entity was created.
modifiedrequired string (date-time) When the current version was created.
archived string (date-time) When the entity was archived. Only present on archived entities.
namerequired string
materialsrequired object
materials.innerLayerrequired reference to Material Inner layer material
materials.insulationLayerrequired reference to Material Insulation layer material
materials.outerLayerrequired reference to Material Outer layer material
voltage number kV
parametersrequired CableParameters

CableParameters

object

PropertyTypeDescription
ConductorDiameterrequired number mm Conductor diameter
ConductorArearequired number mm² Conductor area
ConductorMaterialrequired one of "aluminium", "copper" Conductor material
ConductorTapeThicknessrequired number mm Conductor tape thickness
InnerScLayerThicknessrequired number mm Inner layer cold thickness
InsulationLayerThicknessrequired number mm Insulation layer cold thickness
OuterScLayerThicknessrequired number mm Outer layer cold thickness

CableInsert

object

PropertyTypeDescription
namerequired string
materialsrequired object
materials.innerLayerrequired reference to Material Inner layer material
materials.insulationLayerrequired reference to Material Insulation layer material
materials.outerLayerrequired reference to Material Outer layer material
parametersrequired CableParameters
voltage number kV

CableUpdate

object

PropertyTypeDescription
name string
materials object
parameters object
voltage number or null kV

Extruder

object

PropertyTypeDescription
workspacerequired string The workspace the entity is stored in.
idrequired string Identifier of the entity within its workspace.
versionrequired string Identifier of the current version.
createdrequired string (date-time) When the entity was created.
modifiedrequired string (date-time) When the current version was created.
archived string (date-time) When the entity was archived. Only present on archived entities.
namerequired string Name of the extruder

ExtruderInsert

object

PropertyTypeDescription
namerequired string Name of the extruder

ExtruderUpdate

object

PropertyTypeDescription
name string Name of the extruder

ExtruderOutputData

object

PropertyTypeDescription
workspacerequired string The workspace the entity is stored in.
idrequired string Identifier of the entity within its workspace.
versionrequired string Identifier of the current version.
createdrequired string (date-time) When the entity was created.
modifiedrequired string (date-time) When the current version was created.
archived string (date-time) When the entity was archived. Only present on archived entities.
namerequired string
extruderrequired reference to Extruder The extruder that was tested.
screwrequired string Screw that was used for the test
filtersrequired integer Filters that were used for the test
materialrequired reference to Material Material that was used for the test
linerequired reference to Line or null Line on which the test was performed
datarequired ExtruderData

ExtruderData

object

PropertyTypeDescription
MinRpmrequired number
MaxRpmrequired number
Outputrequired object
Output.Rpmrequired array of number rpm
Output.Outputrequired array of number kg/h
Output.MeltTemperaturerequired array of number °C

ExtruderOutputDataInsert

object

PropertyTypeDescription
namerequired string
extruderrequired reference to Extruder The extruder that was tested.
linerequired reference to Line or null Line on which the test was performed
screwrequired string Screw that was used for the test
filtersrequired integer Filters that were used for the test
materialrequired reference to Material Material that was used for the test
datarequired ExtruderData

ExtruderOutputDataUpdate

object

PropertyTypeDescription
name string
extruder object The extruder that was tested.
line object or null Line on which the test was performed
screw string Screw that was used for the test
filters integer Filters that were used for the test
material object Material that was used for the test
data object

Simulation

object

PropertyTypeDescription
workspacerequired string The workspace the entity is stored in.
idrequired string Identifier of the entity within its workspace.
versionrequired string Identifier of the current version.
createdrequired string (date-time) When the entity was created.
modifiedrequired string (date-time) When the current version was created.
archived string (date-time) When the entity was archived. Only present on archived entities.
date string (date-time) Not set by the API.
name string
tags array of string
staterequired SimulationState
previousSimulation reference to Simulation The simulation that this simulation was copied from.
options object
options.automateConditionsAndLimitsrequired boolean
linerequired reference to Line (a specific version) or null The line whose construction was used for the input.
extruderOutputData object The extruder output data used for the input.
extruderOutputData.extruder1required reference to ExtruderOutputData (a specific version) or null
extruderOutputData.extruder2required reference to ExtruderOutputData (a specific version) or null
extruderOutputData.extruder3required reference to ExtruderOutputData (a specific version) or null
cablerequired reference to Cable (a specific version) or null The cable used for the input.
materials object The materials used for the input.
materials.innerLayerrequired reference to Material (a specific version) Inner layer material
materials.insulationLayerrequired reference to Material (a specific version) Insulation layer material
materials.outerLayerrequired reference to Material (a specific version) Outer layer material
inputrequired object The input for NCC-Core. May be incomplete while state is draft.
simulationInfo object Why the simulation failed.
simulationInfo.failureReason string
simulationInfo.nccStatus object
simulationInfo.nccStatus.ErrorNrrequired integer
simulationInfo.nccStatus.ErrorCoderequired string
result SimulationResult The result from NCC-Core. Only included when fetching a single finished simulation.
resultSummary object Summary of the result of a finished simulation.
resultSummary.lineSpeedrequired number m/min Production line speed
resultSummary.limitingFactorrequired integer What limits the line speed: 0 nothing, 1 curing length, 2 cooling length, 3 extruder 1, 4 extruder 2, 5 extruder 3, 6 capstan maximum speed.

Unless state is "draft", input must be SimulationInput.

SimulationState

one of "draft", "pending", "running", "finished", "failed"

SimulationResult

object

PropertyTypeDescription
Status object
Status.ErrorNrrequired integer
Status.ErrorCoderequired string
LineSpeed number m/min Production line speed
LimitingFactor integer
InnerSCLayer LayerResult
InsulationLayer LayerResult
OuterSCLayer LayerResult
Extruder1 ExtruderResult
Extruder2 ExtruderResult
Extruder3 ExtruderResult
StressEstimate number bar Estimated stress toward the conductor
LinePowers object
LinePowers.LineTotalCoolingPowerrequired number kW Net power from core to cooling
LinePowers.LineTotalHeatingPowerrequired number kW Net power from heating zones to core
LinePowers.PreheatingNetPowerrequired number kW Net power from preheating coil to core
LinePowers.PreheatingFeedPowerrequired number kW Preheating feed power
LinePowers.PostheatingNetPowerrequired number kW Net power from post-heating coil to core
LinePowers.PostheatingFeedPowerrequired number kW Post-heating feed power
RampValues object
RampValues.StartSpeedrequired number m/min Start-up speed
RampValues.StartProfilerequired number °C Flat start-up heating zone profile
RampValues.SlowSpeedrequired number m/min Slow phase line speed
RampValues.SlowProfilerequired number °C Slow heating profile
RampValues.SlowCoolingTimerequired number min Slow cooling time
RampValues.EndProfilerequired number °C Flat end-curing heating zone profile
RampValues.EndCuringTimerequired number min Duration of end-curing
RampValues.EndCoolingTimerequired number min Duration of core cooling after end-curing
ReelValues object
ReelValues.Diameterrequired number mm Diameter at reel
ReelValues.SurfaceTemperaturerequired number °C Core surface temperature at reel
ReelValues.ConductorTemperaturerequired number °C Conductor temperature at reel
MRCSection array of objects
MRCSection[].Temperature number °C
MRCSection[].StartTemperature number °C
MRCSection[].SlowTemperature number °C
MRCSection[].SurfaceTemperature number °C
MRCSection[].XLLayerThickness number mm
Points object
Points.NumberOfPointsrequired number
Points.NumberOfCylindersrequired number
Points.LengthSteprequired number
Curves array of objects
Curves[].ConductorTemperaturerequired number °C
Curves[].InsulationTemperaturerequired number °C
Curves[].SurfaceTemperaturerequired number °C
Curves[].CrosslinkingDegreerequired number %
ProfileList array of objects
ProfileList[].ProfileValueListrequired array of objects
ProfileList[].ProfileValueList[].Rrequired number mm
ProfileList[].ProfileValueList[].Trequired number temperature
ProfileList[].ProfileValueList[].Xrequired number %
GraphResults GraphResults
ConductorMeterWeight number kg/m Conductor meter weight
TotalMeterWeight number kg/m Total meter weight
Sections array of SectionResult

LayerResult

object

PropertyTypeDescription
Temperaturerequired number °C (0 decimals) Extrusion temperature
HotThicknessrequired number mm Hot thickness
ColdDiameterrequired number mm Cold diameter
HotDiameterrequired number mm Hot diameter
Shrinkagerequired number % (1 decimals) Shrinkage
MeterWeightrequired number kg/m Meter weight

ExtruderResult

object

PropertyTypeDescription
ProductionRPMrequired number Production phase screw speed
ProductionOutputrequired number kg/h Production phase output

GraphResults

object

PropertyTypeDescription
CrossSectionLayerDimensionsrequired array of one of "Radius", "Temperature", "CrosslinkingDegree", "Methane" Describes the values and their order for each layer of each cross section in the corresponding array.
CrossSectionPointDistancerequired number
CrossSectionCountrequired integer
LayerCountrequired integer Number of layers for each cross section.
Valuesrequired array of array of array of number An array of cross sections each of which is an array of layers. Array's length must be equal to CrossSectionCount.

SectionResult

object

PropertyTypeDescription
InletTemperature number °C (1 decimals) Zone temperature at entry
ExitTemperature number °C (1 decimals) Zone temperature at exit
ConductorTemperature number °C (1 decimals) Conductor temperature at zone exit
InsulationTemperature number °C (1 decimals) Insulation mid-temperature at zone exit
SurfaceTemperature number °C (1 decimals) Core surface temperature at zone exit
CrosslinkingDegree number % (1 decimals) Core cross-linking at zone exit
NetPower number kW (1 decimals) Net power from zone to core

SimulationInput

object

PropertyTypeDescription
simulationrequired SimulationParameters
extrudersrequired object
extruders.extruder1required ExtruderData
extruders.extruder2required ExtruderData
extruders.extruder3required ExtruderData
linerequired object
line.constructionrequired LineConstruction
cablerequired object
cable.parametersrequired CableParameters
cable.materialsrequired object
cable.materials.innerLayerrequired object
cable.materials.innerLayer.parametersrequired MaterialParameters
cable.materials.insulationLayerrequired object
cable.materials.insulationLayer.parametersrequired MaterialParameters
cable.materials.outerLayerrequired object
cable.materials.outerLayer.parametersrequired MaterialParameters

SimulationParameters

object

PropertyTypeDescription
SimulationModerequired SimulationMode
MRCOn boolean
ProductionSpeedrequired number m/min
PreheaterTemperaturerequired number °C Preheating temperature for conductor
PostheaterTemperaturerequired number °C Increase of conductor temperature
MaxConductorTemperaturerequired number °C Maximum conductor temperature at end seal
MaxConductorTemperatureAfterPostHeater number °C Maximum conductor temperature after post heater
MaxSurfaceTemperaturerequired number °C Maximum cable surface temperature
MaxZoneTemperaturerequired number °C Maximum heating zone temperature
MaxLineSpeedrequired number m/min Maximum line speed
MinCuringDegreerequired number % Minimum percentage of cross-linking
TubePressurerequired number bar Pressure on CV-tube
AmbientTemperaturerequired number °C Room temperature during production
LengthToReelrequired number
StartSpeedPercentagerequired number % Start speed compared to production speed
SlowSpeedPercentagerequired number % Slow phase speed compared to production speed
CoolingMediumInrequired number
CoolingMediumOutrequired number
CoolingMediumFlowrequired number
CoolingEHTInrequired number
CoolingEHTOutrequired number
CoolingEHTFlowrequired number
PrecoolingInrequired number
PrecoolingOutrequired number
PrecoolingFlowrequired number
AutocureExportrequired one of false
MRCProfilerequired array of number, 3 items
MeltTempCurveUsedrequired boolean
ExtruderMeltTemperaturerequired array of number
ExtraModulesrequired object
ExtraModules.Degassing object Parameters for optional degassing module
ExtraModules.Degassing.Enabledrequired one of false
ExtraModules.Degradation object Parameters for optional degradation module
ExtraModules.Degradation.Enabledrequired one of false
ExtraModules.TensionCcvCalculation object Parameters for optional tension/ccv calculation module
ExtraModules.TensionCcvCalculation.Enabledrequired one of false
ExtraModules.Hvdc object Parameters for optional hvdc module
ExtraModules.Hvdc.Enabledrequired boolean
ExtraModules.RoundnessEstimation object Parameters for optional roundness estimation module
ExtraModules.RoundnessEstimation.Enabledrequired one of false

SimulationMode

object

PropertyTypeDescription
Moderequired integer
Optimizerequired integer

SimulationInsert

object

PropertyTypeDescription
linerequired reference to Line (a specific version) or null The line whose construction was used for the input.
cablerequired reference to Cable (a specific version) or null The cable used for the input.
inputrequired object The input for NCC-Core. May be incomplete while state is draft.
name string
tags array of string
staterequired SimulationState
previousSimulation reference to Simulation The simulation that this simulation was copied from.
options object
options.automateConditionsAndLimitsrequired boolean
materials object The materials used for the input.
materials.innerLayerrequired reference to Material (a specific version) Inner layer material
materials.insulationLayerrequired reference to Material (a specific version) Insulation layer material
materials.outerLayerrequired reference to Material (a specific version) Outer layer material
extruderOutputData object The extruder output data used for the input.
extruderOutputData.extruder1required reference to ExtruderOutputData (a specific version) or null
extruderOutputData.extruder2required reference to ExtruderOutputData (a specific version) or null
extruderOutputData.extruder3required reference to ExtruderOutputData (a specific version) or null

Unless state is "draft", input must be SimulationInput.

SimulationUpdate

object

PropertyTypeDescription
line object or null The line whose construction was used for the input.
cable object or null The cable used for the input.
input object The input for NCC-Core.
name string or null
tags array of string or null
state SimulationState
previousSimulation object or null The simulation that this simulation was copied from.
options object or null
materials object or null The materials used for the input.
extruderOutputData object or null The extruder output data used for the input.