Duro PLM Component
Manage Products, Components, Change Orders, and more with Duro.
Component key: duro-plm
Description
Duro PLM is a platform designed to intuitively centralize part data, manage change orders, and connect to the rest of your tech stack. This allows your hardware team to focus on innovation rather than administrative tasks.
Use the Duro PLM component to manage users, projects, and teams in your Duro workspace.
API Documentation
The component was built using the Duro GraphQL API Reference
Connections
Duro API Key
How to retrieve an API key
To retrieve an API key in your Duro app, follow these steps:
- Log in to your Duro account.
- Click on your avatar and select Account settings.
- In the Settings menu, select the Integrations tab.
- Click on the Get API Key button below the Integrations table.
- Your API key will be displayed. Highlight and copy it to use as the "Duro API Key".
| Input | Notes | Example |
|---|---|---|
| Duro Environment | The environment to connect to. | https://mfg.duro.app/graphql |
| Duro API Key | The API key for your Duro account. | eyJhbGciOiJIUzI... |
Data Sources
Select Component
Select a component from a dropdown list | key: selectComponent | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Debug Request | Enabling this flag will log out the current request. | false |
| First N Items | The number of items to return | 5 |
| Library Type | The type of library to query | GENERAL |
Actions
Create Change Order
Create a Draft Change Order | key: createChangeOrder
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Debug Request | Enabling this flag will log out the current request. | false |
| Description | A description of the change order | This is a description of the change order |
| Name | The name of the change order to create | Change Order 1 |
| Type | The type of change order to create | ECO |
{
"data": {
"createChangeOrder": {
"id": "abcdef1234567890abcdef12",
"con": {
"displayValue": "ECO-12345"
},
"description": "Initial creation of the change order for testing purposes.",
"name": "Initial Change Order",
"status": "DRAFT",
"type": "ECO",
"created": "2024-06-24T22:31:27.808Z",
"creator": {
"email": "john.doe@example.com",
"id": "1234567890abcdef12345678",
"firstName": "John",
"lastName": "Doe"
}
}
}
}
Get Component by ID
Get a specific component by a unique identifier | key: getComponentById
| Input | Notes | Example |
|---|---|---|
| Component ID | The unique identifier for the component you want to retrieve | 666c5a9528e821000815990e |
| Connection | ||
| Debug Request | Enabling this flag will log out the current request. | false |
{
"data": {
"componentsByIds": [
{
"id": "abcdef1234567890abcdef12",
"cpn": {
"displayValue": "123-45678"
},
"created": "2024-06-14T14:58:29.791Z",
"category": "Integrated Circuit",
"archived": false,
"customSpecs": [],
"description": "A high-performance integrated circuit for advanced applications.",
"documentLinks": [],
"eid": "20-4567-B2",
"family": "IC",
"images": [
{
"mime": "JPEG",
"creator": {
"email": "john.doe@example.com"
},
"name": "ic_image.jpg",
"src": "https://example.com/ic_image.jpg"
}
],
"legacyCpn": "123-45678",
"lastModified": "2024-06-14T14:58:30.229Z",
"manufacturers": [],
"name": "High-Performance IC",
"primarySource": {
"dpn": "DP1234",
"distributor": "Distributor Inc.",
"manufacturer": "IC Manufacturer Ltd.",
"minQuantity": 10,
"mpn": "MP1234",
"unitPrice": 5.99
},
"specs": [],
"status": "PRODUCTION",
"revisionValue": "1",
"workflowState": "Approved",
"vendorId": "V1234",
"creator": {
"id": "1234567890abcdef12345678",
"email": "john.doe@example.com",
"firstName": "John",
"lastName": "Doe"
},
"revisionHistory": [
{
"id": "abcdef1234567890abcdef34",
"cpn": {
"displayValue": "123-45678"
},
"revisionValue": "1"
}
],
"children": [
{
"component": {
"id": "abcdef1234567890abcdef56"
}
},
{
"component": {
"id": "abcdef1234567890abcdef78"
}
}
],
"modified": false,
"imageIds": [
"abcdef1234567890abcdef90"
]
}
]
}
}
Get Current User
Get information about the currently authenticated user | key: getCurrentUser
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Debug Request | Enabling this flag will log out the current request. | false |
{
"data": {
"userById": {
"lastName": "Smith",
"email": "john.smith@example.com",
"firstName": "John",
"id": "1234567890abcdef12345678",
"primaryCompany": {
"id": "abcdef1234567890abcdef12",
"name": "ExampleCorp"
}
}
}
}
List Change Orders
Get a list of change orders | key: listChangeOrders
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Debug Request | Enabling this flag will log out the current request. | false |
| First N Items | The number of items to return | 5 |
| Order By | The field to order the change orders by | [{"con": "asc"}] |
{
"data": {
"changeOrders": {
"connection": {
"edges": [
{
"node": {
"con": {
"id": "abcdef1234567890abcdef12",
"displayValue": "ECO-12345"
},
"id": "abcdef1234567890abcdef34",
"name": "Test Order",
"type": "ECO",
"description": "Test description for change order.",
"documentLinks": [],
"status": "DRAFT",
"resolution": "NONE",
"erpOptions": null,
"created": "2024-06-24T22:31:27.808Z",
"creator": {
"email": "john.doe@example.com",
"id": "1234567890abcdef12345678",
"firstName": "John",
"lastName": "Doe"
},
"approvalType": "FIRST_IN",
"lastModified": "2024-06-24T22:31:27.808Z"
}
}
]
}
}
}
}
List Company Users
Get account information from each user in your company library | key: listCompanyUsers
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Debug Request | Enabling this flag will log out the current request. | false |
{
"data": {
"id": "abcdef1234567890abcdef12",
"name": "ExampleCorp",
"users": [
{
"email": "john.doe@example.com",
"id": "1234567890abcdef12345678",
"firstName": "John",
"lastName": "Doe",
"created": "2024-06-14T14:57:37.227Z",
"role": "ADMINISTRATOR",
"title": "CEO",
"lastLogin": "2024-06-24T16:11:02.889Z"
}
]
}
}
List Components
Get a list of components | key: listComponents
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Debug Request | Enabling this flag will log out the current request. | false |
| First N Items | The number of items to return | 5 |
| Library Type | The type of library to query | GENERAL |
{
"data": [
{
"id": "666c5a8828e82100081595b0",
"name": "CONN HEADER 10POS DUAL .05\", Keying Shroud, SMD",
"mass": null,
"created": "2024-06-14T14:58:16.638Z",
"lastModified": "2024-06-14T14:58:18.069Z"
}
]
}
Raw Request
Make a generic request to the Duro API | key: rawRequest
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Debug Request | Enabling this flag will log out the current request. | false |
| Query or Mutation | GraphQL query or mutation | |
| Variables | Variables to pass to the query or mutation | key1: value1, key2: value2 |
| Variables Object | Variables to pass to the query or mutation |