This is a catch-all provider — any valid URL under
https://api.durohub.com/graphql is supported. Duro PLM GraphQL API. Single endpoint: POST https://api.durohub.com/graphql. Auth is supplied automatically from the connected credential (x-api-key + x-organization + x-library; a key is scoped to one org/library). Each request POSTs a JSON body with a “query” string (the GraphQL document) and an optional “variables” object. Resources are namespaced: component.findOne(id), component.findAll(filter, pagination), component.create(inputs), component.update(inputs), component.delete(ids); changeOrders.get(filter, pagination), changeOrders.create(input), changeOrders.addItems(changeOrderId, input), changeOrders.submitForReview(id); plus libraries. Pagination is Relay cursor: pass pagination with first:N and after:cursor, then read the edges/node list alongside pageInfo (hasNextPage, endCursor) and totalCount (changeOrders nests these under a connection field). Filtering: component.findAll accepts a filter with categoryType (PART, ASSEMBLY, or DOCUMENT), name, cpns, statusId, and isArchived. Updates support optimistic concurrency via expectedVersion. Errors: GraphQL always returns HTTP 200 — failures appear in the top-level errors array with extensions.code (FORBIDDEN, or RATE_LIMITED with extensions.retryAfter seconds). Component delete is permanent; prefer update with isArchived:true to archive. See https://docs.durohub.com/ for the full reference. The endpoints below are curated examples.Endpoints
List the libraries available to the connected key. Use as an auth/connectivity check (the “hello world” query) and to confirm the library slug.
POSThttps://api.durohub.com/graphql — Free
- SDK
- cURL
List components with optional filtering and Relay cursor pagination. Filter by categoryType (PART, ASSEMBLY, DOCUMENT), name, cpns, status, or archived flag.
POSThttps://api.durohub.com/graphql — Free
- SDK
- cURL
Fetch a single component by its UUID, including revision, status, category, and timestamps.
POSThttps://api.durohub.com/graphql — Free
- SDK
- cURL
Create one or more components. name is required; categoryId, description, revisionValue, eid, and attributeValues are optional. Returns the created components with their assigned revisionValue and version.
POSThttps://api.durohub.com/graphql — Free
- SDK
- cURL
Update one or more components by ID. Pass expectedVersion for optimistic concurrency (the update fails with a conflict if the current version differs). Set isArchived: true to archive rather than delete.
POSThttps://api.durohub.com/graphql — Free
- SDK
- cURL
Permanently delete components by their IDs. This is irreversible — prefer archiving via update (isArchived: true) when you may need the component later.
POSThttps://api.durohub.com/graphql — Free
- SDK
- cURL
List change orders with optional filtering (by status, resolution, assignee, or stage) and cursor pagination. Results are wrapped in a connection { edges { node } } envelope.
POST https://api.durohub.com/graphql — Free
- SDK
- cURL
Create a change order in DRAFT status. Returns its sequentialId plus the configured approval stages and content fields. Add affected components next with addItems.
POSThttps://api.durohub.com/graphql — Free
- SDK
- cURL
Add components (the affected items) to a change order, each pinned to a component version. Use updateProposalsForItems afterward to set the proposed revision/status.
POSThttps://api.durohub.com/graphql — Free
- SDK
- cURL
Next Steps
All Providers
Browse all supported AI providers
Forward Proxy
Learn how to construct proxy URLs and authenticate requests