Web-NCC API 1.0.0
The OpenAPI document (YAML) describes the API in machine-readable form.
| Server | URL |
|---|---|
| Production | https://api.web-ncc.maillefer.net |
| Development | https://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:
POST /login-keyswith the user's email address as the username. A one-time login key is sent to that address. It is valid for 10 minutes.POST /sessionswith 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:
full: everything is allowed.no-edit-lines: asfull, except that lines cannot be created, changed or archived.read-only: only reading is allowed.
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}:
- Changes.
PATCHtakes a JSON merge patch (RFC 7386): include only the properties to change. Objects are merged recursively, arrays are replaced as a whole andnullremoves a property. The properties touched by the patch must be valid after merging. - Versions. Every change creates a new version. Except for simulations, the versions of an entity can be listed and each version fetched.
- Archiving. Archived entities are left out of listings but can still
be fetched and changed.
?archivedlists only the archived ones. - References. An entity refers to another with
{workspace, id}, and to a specific version of it with{workspace, id, version}.
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
| Property | Type | Description |
|---|---|---|
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.
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
| Property | Type | Description |
|---|---|---|
usernamerequired |
string | The user's email address. |
loginKeyrequired |
string | The login key sent by POST /login-keys. |
Responses
201 A session was created.
object
| Property | Type | Description |
|---|---|---|
sessionTokenrequired |
string | Session token for the Authorization header. |
400 The request body does not match its schema.
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
| Property | Type | Description |
|---|---|---|
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
| Name | In | Type | Description |
|---|---|---|---|
tokenrequired |
path | string |
Responses
200 The information given when the token was created.
object
| Property | Type | Description |
|---|---|---|
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
| Name | In | Type | Description |
|---|---|---|---|
tokenrequired |
path | string |
Request body
object
| Property | Type | Description |
|---|---|---|
emailrequired |
string | The new user's email address. |
Responses
200 The user was created.
400 The request body does not match its schema.
403 The token is invalid, expired or already used, or the email address needs to be verified first.
409 The email address is already in use.
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
A user account.
| Property | Type | Description |
|---|---|---|
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.
| Header | Description |
|---|---|
Location |
Location of the new user. |
400 The request body does not match its schema.
409 The email address is already in use.
422 The customer does not exist.
Gets user details
GET
/users/{id}
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired |
path | string |
Responses
200 The user details.
404 The entity does not exist.
Partially updates user
PATCH
/users/{id}
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired |
path | string |
Request body
Changes to User as a JSON merge patch (RFC 7386). The merged properties must match UserInsert. Setting an optional property to null removes it.
| Property | Type | Description |
|---|---|---|
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.
400 The request body does not match its schema.
404 The entity does not exist.
Deletes user
DELETE
/users/{id}
Succeeds also when the user does not exist.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
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
| Name | In | Type | Description |
|---|---|---|---|
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
Request body
A customer. The users of a customer have access to a workspace identified by the customer's id.
| Property | Type | Description |
|---|---|---|
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.
| Header | Description |
|---|---|
Location |
Location of the new customer. |
400 The request body does not match its schema.
Gets customer details
GET
/ws/{workspace}/customers/{id}
Parameters
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Responses
200 The current version of the 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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
Changes to Customer as a JSON merge patch (RFC 7386). The merged properties must match CustomerInsert. Setting an optional property to null removes it.
| Property | Type | Description |
|---|---|---|
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.
400 The request body does not match its schema.
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
| Property | Type | Description |
|---|---|---|
archivedrequired |
boolean |
Responses
200 The archival status was set.
400 The request body does not match its schema.
404 The entity does not exist.
Lists versions of a customer
GET
/ws/{workspace}/customers/{id}/versions
Parameters
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Responses
200 All versions, oldest first, including the current one.
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
| Name | In | Type | Description |
|---|---|---|---|
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.
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
object
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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.
404 The customer does not exist.
409 The customer already has a sign-up token, or has completed the sign-up.
Revokes customer's sign-up token
DELETE
/ws/{workspace}/customers/{id}/sign-up-token
Parameters
| Name | In | Type | Description |
|---|---|---|---|
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
| Name | In | Type | Description |
|---|---|---|---|
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
Request body
A production line.
| Property | Type | Description |
|---|---|---|
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.
| Header | Description |
|---|---|
Location |
Location of the new line. |
400 The request body does not match its schema.
Gets line details
GET
/ws/{workspace}/lines/{id}
Parameters
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Responses
200 The current version of the 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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
Changes to Line as a JSON merge patch (RFC 7386). The merged properties must match LineInsert. Setting an optional property to null removes it.
| Property | Type | Description |
|---|---|---|
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.
400 The request body does not match its schema.
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
| Property | Type | Description |
|---|---|---|
archivedrequired |
boolean |
Responses
200 The archival status was set.
400 The request body does not match its schema.
404 The entity does not exist.
Lists versions of a line
GET
/ws/{workspace}/lines/{id}/versions
Parameters
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Responses
200 All versions, oldest first, including the current one.
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
| Name | In | Type | Description |
|---|---|---|---|
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.
404 The entity does not exist.
Extruders
Extruders that can be placed on a line.
Lists extruders
GET
/ws/{workspace}/extruders
Parameters
| Name | In | Type | Description |
|---|---|---|---|
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
Request body
An extruder.
| Property | Type | Description |
|---|---|---|
namerequired |
string | Name of the extruder |
Responses
201 The created extruder.
| Header | Description |
|---|---|
Location |
Location of the new extruder. |
400 The request body does not match its schema.
Gets extruder details
GET
/ws/{workspace}/extruders/{id}
Parameters
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Responses
200 The current version of the 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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
Changes to Extruder as a JSON merge patch (RFC 7386). The merged properties must match ExtruderInsert. Setting an optional property to null removes it.
| Property | Type | Description |
|---|---|---|
name |
string | Name of the extruder |
Responses
200 The updated extruder.
400 The request body does not match its schema.
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
| Property | Type | Description |
|---|---|---|
archivedrequired |
boolean |
Responses
200 The archival status was set.
400 The request body does not match its schema.
404 The entity does not exist.
Lists versions of an extruder
GET
/ws/{workspace}/extruders/{id}/versions
Parameters
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Responses
200 All versions, oldest first, including the current one.
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
| Name | In | Type | Description |
|---|---|---|---|
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.
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
| Name | In | Type | Description |
|---|---|---|---|
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
Request body
Output of an extruder with a given screw, filters and material, measured in a test run.
| Property | Type | Description |
|---|---|---|
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.
| Header | Description |
|---|---|
Location |
Location of the new extruder output data. |
400 The request body does not match its schema.
Gets extruder output data details
GET
/ws/{workspace}/extruder-output-data/{id}
Parameters
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Responses
200 The current version of the extruder output data.
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
Changes to ExtruderOutputData as a JSON merge patch (RFC 7386). The merged properties must match ExtruderOutputDataInsert. Setting an optional property to null removes it.
| Property | Type | Description |
|---|---|---|
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.
400 The request body does not match its schema.
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
| Property | Type | Description |
|---|---|---|
archivedrequired |
boolean |
Responses
200 The archival status was set.
400 The request body does not match its schema.
404 The entity does not exist.
Lists versions of extruder output data
GET
/ws/{workspace}/extruder-output-data/{id}/versions
Parameters
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Responses
200 All versions, oldest first, including the current one.
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
| Name | In | Type | Description |
|---|---|---|---|
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.
404 The entity does not exist.
Cables
Cables, their layer materials and parameters.
Lists cables
GET
/ws/{workspace}/cables
Parameters
| Name | In | Type | Description |
|---|---|---|---|
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
Request body
A cable design.
| Property | Type | Description |
|---|---|---|
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.
| Header | Description |
|---|---|
Location |
Location of the new cable. |
400 The request body does not match its schema.
Gets cable details
GET
/ws/{workspace}/cables/{id}
Parameters
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Responses
200 The current version of the 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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
Changes to Cable as a JSON merge patch (RFC 7386). The merged properties must match CableInsert. Setting an optional property to null removes it.
| Property | Type | Description |
|---|---|---|
name |
string | |
materials |
object | |
parameters |
object | |
voltage |
number or null kV |
Responses
200 The updated cable.
400 The request body does not match its schema.
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
| Property | Type | Description |
|---|---|---|
archivedrequired |
boolean |
Responses
200 The archival status was set.
400 The request body does not match its schema.
404 The entity does not exist.
Lists versions of a cable
GET
/ws/{workspace}/cables/{id}/versions
Parameters
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Responses
200 All versions, oldest first, including the current one.
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
| Name | In | Type | Description |
|---|---|---|---|
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.
404 The entity does not exist.
Materials
Materials and their parameters.
Lists materials
GET
/ws/{workspace}/materials
Parameters
| Name | In | Type | Description |
|---|---|---|---|
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
Request body
A screen or insulation material.
| Property | Type | Description |
|---|---|---|
namerequired |
string | |
typerequired |
one of "screen", "insulation" |
|
hvdcModuleMaterialrequired |
boolean | |
parametersrequired |
MaterialParameters |
Responses
201 The created material.
| Header | Description |
|---|---|
Location |
Location of the new material. |
400 The request body does not match its schema.
Gets material details
GET
/ws/{workspace}/materials/{id}
Parameters
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Responses
200 The current version of the 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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
Changes to Material as a JSON merge patch (RFC 7386). The merged properties must match MaterialInsert. Setting an optional property to null removes it.
| Property | Type | Description |
|---|---|---|
name |
string | |
type |
one of "screen", "insulation" |
|
hvdcModuleMaterial |
boolean | |
parameters |
object |
Responses
200 The updated material.
400 The request body does not match its schema.
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
| Property | Type | Description |
|---|---|---|
archivedrequired |
boolean |
Responses
200 The archival status was set.
400 The request body does not match its schema.
404 The entity does not exist.
Lists versions of a material
GET
/ws/{workspace}/materials/{id}/versions
Parameters
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Responses
200 All versions, oldest first, including the current one.
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
| Name | In | Type | Description |
|---|---|---|---|
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.
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
| Name | In | Type | Description |
|---|---|---|---|
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
Request body
A simulation of producing a cable on a line. See the overview for the states of a simulation.
| Property | Type | Description |
|---|---|---|
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.
| Header | Description |
|---|---|
Location |
Location of the new simulation. |
400 The request body does not match its schema.
Gets simulation details
GET
/ws/{workspace}/simulations/{id}
Parameters
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Responses
200 The current version of the 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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
Changes to Simulation as a JSON merge patch (RFC 7386). The merged properties must match SimulationInsert. Setting an optional property to null removes it.
| Property | Type | Description |
|---|---|---|
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.
400 The request body does not match its schema.
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
| Name | In | Type | Description |
|---|---|---|---|
workspacerequired |
path | string | The workspace the entities are kept in. |
idrequired |
path | string |
Request body
| Property | Type | Description |
|---|---|---|
archivedrequired |
boolean |
Responses
200 The archival status was set.
400 The request body does not match its schema.
404 The entity does not exist.
Schemas
Versions
array of objects
| Property | Type | Description |
|---|---|---|
[].versionrequired |
string | Version identifier. |
[].createdrequired |
string (date-time) | When the version was created. |
ArchivedStatus
object
| Property | Type | Description |
|---|---|---|
archivedrequired |
boolean | |
archivedOn |
string (date-time) | When the entity was archived. Only when archived. |
ArchivedStatusUpdate
object
| Property | Type | Description |
|---|---|---|
archivedrequired |
boolean |
ValidationError
object
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
errorrequired |
object | |
error.messagerequired |
string |
Reason
object
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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 m³ |
LineInsert
object
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
namerequired |
string | |
typerequired |
one of "screen", "insulation" |
|
hvdcModuleMaterialrequired |
boolean | |
parametersrequired |
MaterialParameters |
MaterialUpdate
object
| Property | Type | Description |
|---|---|---|
name |
string | |
type |
one of "screen", "insulation" |
|
hvdcModuleMaterial |
boolean | |
parameters |
object |
Cable
object
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
name |
string | |
materials |
object | |
parameters |
object | |
voltage |
number or null kV |
Extruder
object
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
namerequired |
string | Name of the extruder |
ExtruderUpdate
object
| Property | Type | Description |
|---|---|---|
name |
string | Name of the extruder |
ExtruderOutputData
object
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
ProductionRPMrequired |
number | Production phase screw speed |
ProductionOutputrequired |
number kg/h | Production phase output |
GraphResults
object
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
Moderequired |
integer | |
Optimizerequired |
integer |
SimulationInsert
object
| Property | Type | Description |
|---|---|---|
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
| Property | Type | Description |
|---|---|---|
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. |