Project API
프로젝트 리스트 조회 & 상세 sequenceDiagram
프로젝트 생성
프로젝트에 생성 요청
Operation
mutation CreateEdaProject($input: CreateEdaProjectInput!) {
createEdaProject(input: $input) {
id
name
imageUrl
description
status
progress {
status
percent
runningSeconds
createdAt
updatedAt
}
team {
id
name
createdAt
}
creatorAuthor {
id
name
email
thumbnailUrl
createdAt
}
latestAuthor {
id
name
email
thumbnailUrl
createdAt
}
projectBlocks {
count
edaCategory {
id
name
greyImageUrl
colorImageUrl
color
depth
parentId
parentCategory {
id
name
greyImageUrl
colorImageUrl
color
depth
parentId
}
subCategories {
id
name
greyImageUrl
colorImageUrl
color
depth
parentId
}
parameters {
name
imageUrl
requiredType
optionType
unit
value
minValue
maxValue
optionValues {
key
activeKeys
value
imageUrl
}
}
}
priceBreaks {
currency
price
quantity
}
block {
id
name
certificationTypes
category
categoryId
blockType
schematic {
svgUrl
jsonUrl
}
footprint {
svgUrl
jsonUrl
}
thumbnailUrl
accessType
memo
materials {
prefix
name
footprint
option
integrationStatus
supplyItem {
supplier
category
availability
availabilityInStock
mouserPartNumber
manufacturer
manufacturerPartNumber
description
datasheetUrl
imageUrl
min
productDetailURL
unitWeight
createdAt
updatedAt
}
}
ioPorts {
key
name
ioType
pinType
minVoltage
maxVoltage
}
status
createdAt
updatedAt
}
}
createdAt
updatedAt
}
}Variables
{
"input": {
"name": "test"
}
}프로젝트 블록 연동 업데이트
프로젝트에 블록추가 업데이트
Operation
mutation UpdateEdaProjectBlocks($input: UpdateEdaProjectBlocksInput!) {
updateEdaProjectBlocks(input: $input) {
id
name
description
status
progress {
status
percent
runningSeconds
createdAt
updatedAt
}
team {
id
name
createdAt
}
creatorAuthor {
id
name
email
thumbnailUrl
createdAt
}
latestAuthor {
id
name
email
thumbnailUrl
createdAt
}
projectBlocks {
count
edaCategory {
name
color
colorImageUrl
subCategories {
name
color
colorImageUrl
}
}
priceBreaks {
price
currency
quantity
}
block {
id
name
category
categoryId
blockType
schematic {
svgUrl
jsonUrl
}
footprint {
svgUrl
jsonUrl
}
thumbnailUrl
accessType
memo
parameters {
name
imageUrl
requiredType
optionType
unit
value
minValue
maxValue
optionValues {
key
activeKeys
value
imageUrl
}
}
materials {
prefix
name
footprint
option
integrationStatus
supplyItem {
supplier
category
availability
availabilityInStock
mouserPartNumber
manufacturer
manufacturerPartNumber
description
datasheetUrl
imageUrl
min
productDetailURL
priceBreaks {
currency
price
quantity
}
unitWeight
createdAt
updatedAt
}
}
ioPorts {
key
name
ioType
pinType
minVoltage
maxVoltage
}
status
createdAt
updatedAt
}
}
createdAt
updatedAt
}
}Variables
{
"input": {
"id": "1",
"blocks": [{
"blockId": "1",
"count": 1
}]
}
}프로젝트 Layout요청
프로젝트 board Layout에 대한 정보 요청
Operation
query EdaProjectLayout($input: EdaProjectLayoutInput!) {
edaProjectLayout(input: $input) {
id
boardLayer {
layerType
unit
visibleGrid
gridSize
snapSize
}
parts {
name
}
designRules {
name
}
portNets {
name
}
voltages {
name
}
blockLayouts {
id
name
edaCategory {
id
name
greyImageUrl
colorImageUrl
color
depth
parentId
parentCategory {
id
name
greyImageUrl
colorImageUrl
color
depth
parentId
}
subCategories {
id
name
greyImageUrl
colorImageUrl
color
depth
parentId
}
}
parameters {
name
imageUrl
requiredType
optionType
unit
value
minValue
maxValue
optionValues {
key
activeKeys
value
imageUrl
}
}
layout {
isTop
outShapeT {
x
y
r
}
outShapeB {
x
y
r
}
}
}
}
}Variables
{
"input": {
"projectId": "프로젝트 ID"
}
}프로젝트 결과
프로젝트 결과물 상태값, billOfMaterials(BOM), pcbs(SVG이미지 리스트), threeDModels(미정), schematics(SVG 리스트)
Operation
query EdaProjectResult($input: EdaProjectResultInput!) {
edaProjectResult(input: $input) {
id
status
billOfMaterials {
id
partName
designNator
footPrint
manufacturerPart
manufacturer
supplier
supplierPart
quantity
Price
TotalPrice
}
pcbs
threeDModels
schematics
}
}Variables
{
"input": {
"projectId": "프로젝트 ID"
}
}