QC
15 real calls against a live Core. Open a call for its headers, request and response.
attachQcReport
194JobCardDetails · attach-report-to-existing-checksupervisorPOST /graphql200 OKAs expected14 ms
Headers
{
"authorization": "[REDACTED]",
"idempotency-key": "key-194",
"content-type": "application/json"
}Query
mutation AuditAttach($id: ID!, $f: AppFileReferenceInput!) { attachQcReport(id: $id, report: $f) { id report { id } } }Variables
{
"id": "01a14baa-083b-7ad5-8910-33e5272a432b",
"f": {
"id": "01a14ba9-f98e-734c-8188-537a12fc73f8",
"name": "flow.pdf",
"kind": "QC report",
"sizeBytes": 9
}
}Response · HTTP 200
{
"data": {
"attachQcReport": {
"id": "01a14baa-083b-7ad5-8910-33e5272a432b",
"report": {
"id": "01a14ba9-f98e-734c-8188-537a12fc73f8"
}
}
}
}qcQueue
115QcList · load-rm-tabqcPOST /graphql200 OKAs expected18 ms
Headers
{
"authorization": "[REDACTED]",
"content-type": "application/json"
}Query
query AuditQcList($kind: QcKind!) { queue: qcQueue(first: 5, filter: { kind: $kind }) { totalCount edges { node { jobCardId code qrValue kind status stage subject jobOperationId operationName partName quantity waitingSince } } } total: qcQueue(first: 1, filter: { kind: $kind }) { totalCount } pending: qcQueue(first: 1, filter: { kind: $kind, status: [PENDING] }) { totalCount } }Variables
{
"kind": "RM"
}Response · HTTP 200
{
"data": {
"queue": {
"totalCount": 7,
"edges": [
{
"node": {
"jobCardId": "01a14ba6-e695-7571-8b02-2a50cf0c7c89",
"code": "JOB6",
"qrValue": "JC-00006",
"kind": "RM",
"status": "PENDING",
"stage": "Incoming inspection",
"subject": "EN8 steel",
"jobOperationId": null,
"operationName": null,
"partName": "Drive bush",
"quantity": 300,
"waitingSince": "2026-10-17T20:56:31.634Z"
}
},
{
"node": {
"jobCardId": "01a14ba6-e60b-76c9-90a1-2e48ac0af20c",
"code": "JOB1",
"qrValue": "JC-00001",
"kind": "RM",
"status": "PASSED",
"stage": "Incoming inspection",
"subject": "EN8 steel",
"jobOperationId": null,
"operationName": null,
"partName": "Pump shaft",
"quantity": 120,
"waitingSince": "2026-10-17T20:56:31.720Z"
}
},
{
"node": {
"jobCardId": "01a14ba6-e649-75ad-bbc9-16d7ecd00878",
"code": "JOB2",
"qrValue": "JC-00002",
"kind": "RM",
"status": "PASSED",
"stage": "Incoming inspection",
"subject": "EN8 steel",
"jobOperationId": null,
"operationName": null,
"partName": "Valve spindle",
"quantity": 80,
"waitingSince": "2026-10-17T20:56:31.910Z"
}
},
{
"node": {
"jobCardId": "01a14ba6-e65b-777f-9975-ca8ed40d8792",
"code": "JOB3",
"qrValue": "JC-00003",
"kind": "RM",
"status": "PASSED",
"stage": "Incoming inspection",
"subject": "EN8 steel",
"jobOperationId": null,
"operationName": null,
"partName": "Gear blank",
"quantity": 200,
"waitingSince": "2026-10-17T20:56:32.044Z"
}
},
{
"node": {
"jobCardId": "01a14ba6-e66c-79e7-b2cf-2c2dcc9126a1",
"code": "JOB4",
"qrValue": "JC-00004",
"kind": "RM",
"status": "PASSED",
"stage": "Incoming inspection",
"subject": "EN8 steel",
"jobOperationId": null,
"operationName": null,
"partName": "Bearing housing",
"quantity": 40,
"waitingSince": "2026-10-17T20:56:32.134Z"
}
}
]
},
"total": {
"totalCount": 7
},
"pending": {
"totalCount": 2
}
}
}116QcList · load-machine-tabqcPOST /graphql200 OKAs expected15 ms
Headers
{
"authorization": "[REDACTED]",
"content-type": "application/json"
}Query
query AuditQcList($kind: QcKind!) { queue: qcQueue(first: 5, filter: { kind: $kind }) { totalCount edges { node { jobCardId code qrValue kind status stage subject jobOperationId operationName partName quantity waitingSince } } } total: qcQueue(first: 1, filter: { kind: $kind }) { totalCount } pending: qcQueue(first: 1, filter: { kind: $kind, status: [PENDING] }) { totalCount } }Variables
{
"kind": "MACHINE"
}Response · HTTP 200
{
"data": {
"queue": {
"totalCount": 7,
"edges": [
{
"node": {
"jobCardId": "01a14ba6-e66c-79e7-b2cf-2c2dcc9126a1",
"code": "JOB4",
"qrValue": "JC-00004",
"kind": "MACHINE",
"status": "WAITING",
"stage": "No operation finished yet",
"subject": "Turning",
"jobOperationId": null,
"operationName": null,
"partName": "Bearing housing",
"quantity": 40,
"waitingSince": "2026-10-17T20:56:31.594Z"
}
},
{
"node": {
"jobCardId": "01a14ba6-e67d-7757-8629-269f740c10ba",
"code": "JOB5",
"qrValue": "JC-00005",
"kind": "MACHINE",
"status": "WAITING",
"stage": "No operation finished yet",
"subject": "Turning",
"jobOperationId": null,
"operationName": null,
"partName": "Flange coupling",
"quantity": 60,
"waitingSince": "2026-10-17T20:56:31.611Z"
}
},
{
"node": {
"jobCardId": "01a14ba6-e695-7571-8b02-2a50cf0c7c89",
"code": "JOB6",
"qrValue": "JC-00006",
"kind": "MACHINE",
"status": "WAITING",
"stage": "No operation finished yet",
"subject": "Turning",
"jobOperationId": null,
"operationName": null,
"partName": "Drive bush",
"quantity": 300,
"waitingSince": "2026-10-17T20:56:31.634Z"
}
},
{
"node": {
"jobCardId": "01a14ba6-e60b-76c9-90a1-2e48ac0af20c",
"code": "JOB1",
"qrValue": "JC-00001",
"kind": "MACHINE",
"status": "PASSED",
"stage": "Final QC",
"subject": "CNC Lathe 1",
"jobOperationId": "01a14ba6-e627-7e03-9a71-6f42bd07e4d2",
"operationName": "Finishing",
"partName": "Pump shaft",
"quantity": 120,
"waitingSince": "2026-10-17T20:56:31.871Z"
}
},
{
"node": {
"jobCardId": "01a14ba6-e649-75ad-bbc9-16d7ecd00878",
"code": "JOB2",
"qrValue": "JC-00002",
"kind": "MACHINE",
"status": "PASSED",
"stage": "Final QC",
"subject": "CNC Lathe 1",
"jobOperationId": "01a14ba6-e64d-7558-9888-cbe24e46077f",
"operationName": "Finishing",
"partName": "Valve spindle",
"quantity": 80,
"waitingSince": "2026-10-17T20:56:32.017Z"
}
}
]
},
"total": {
"totalCount": 7
},
"pending": {
"totalCount": 0
}
}
}117QcList · row-card-fieldsqcPOST /graphql200 OKAs expected18 ms
The QC card row shows customer, job name, priority, due date and route progress.
Headers
{
"authorization": "[REDACTED]",
"content-type": "application/json"
}Query
query AuditQcRow { qcQueue(first: 2) { edges { node { jobCardId customerName jobName priority dueDate } } } }Variables
{}Response · HTTP 200
{
"data": {
"qcQueue": {
"edges": [
{
"node": {
"jobCardId": "01a14ba6-e66c-79e7-b2cf-2c2dcc9126a1",
"customerName": "Demo Agro Implements",
"jobName": null,
"priority": "HIGH",
"dueDate": "2026-10-23"
}
},
{
"node": {
"jobCardId": "01a14ba6-e67d-7757-8629-269f740c10ba",
"customerName": "Demo Hydraulics",
"jobName": null,
"priority": "MEDIUM",
"dueDate": "2026-11-08"
}
}
]
}
}
}119QcList · my-importedqcPOST /graphql200 OKAs expected10 ms
Headers
{
"authorization": "[REDACTED]",
"content-type": "application/json"
}Query
query AuditQcWatched { qcQueue(first: 5, filter: { watched: true }) { totalCount } }Variables
{}Response · HTTP 200
{
"data": {
"qcQueue": {
"totalCount": 2
}
}
}120QcList · searchqcPOST /graphql200 OKAs expected14 ms
Headers
{
"authorization": "[REDACTED]",
"content-type": "application/json"
}Query
query AuditQcSearch { qcQueue(first: 2, search: "Flange") { totalCount } }Variables
{}Response · HTTP 200
{
"data": {
"qcQueue": {
"totalCount": 4
}
}
}qcRecords
129QcList · recordsqcPOST /graphql200 OKAs expected8 ms
Headers
{
"authorization": "[REDACTED]",
"content-type": "application/json"
}Query
query AuditQcRecords { qcRecords(first: 5) { totalCount edges { node { ...QR jobCardId recordedByName } } } }
fragment QR on QcRecord { id kind stage result remark recordedAt jobOperationId inspector rejectedMaterial { grade heatNumber size } report { ...F } }
fragment F on AppFileReference { id name kind sizeBytes }Variables
{}Response · HTTP 200
{
"data": {
"qcRecords": {
"totalCount": 13,
"edges": [
{
"node": {
"id": "01a14ba9-ca56-7fd7-a631-8b24823e194f",
"kind": "RM",
"stage": "Material QC",
"result": "REJECTED",
"remark": "Synthetic: stock diameter below specification.",
"recordedAt": "2026-10-17T20:59:41.007Z",
"jobOperationId": null,
"inspector": "Demo Inspector",
"rejectedMaterial": {
"grade": "EN8",
"heatNumber": "HEAT-SYN-9",
"size": "24.6 mm x 200 mm"
},
"report": null,
"jobCardId": "01a14ba6-e65b-777f-9975-ca8ed40d8792",
"recordedByName": "Demo Inspector"
}
},
{
"node": {
"id": "01a14ba9-c56b-742d-af87-2759a0cfab47",
"kind": "RM",
"stage": "Material QC",
"result": "ACCEPTED",
"remark": null,
"recordedAt": "2026-10-17T20:59:39.742Z",
"jobOperationId": null,
"inspector": "Demo Inspector",
"rejectedMaterial": null,
"report": null,
"jobCardId": "01a14ba6-e66c-79e7-b2cf-2c2dcc9126a1",
"recordedByName": "Demo Inspector"
}
},
{
"node": {
"id": "01a14ba6-e8b3-7422-a7a0-ce26ce4c4fe1",
"kind": "RM",
"stage": "Incoming inspection",
"result": "REJECTED",
"remark": "Heat number does not match the mill certificate",
"recordedAt": "2026-10-17T20:56:32.174Z",
"jobOperationId": null,
"inspector": "Demo Inspector",
"rejectedMaterial": {
"grade": "EN8",
"heatNumber": "DEMO-H-001",
"size": "Ø40 x 3000 mm"
},
"report": null,
"jobCardId": "01a14ba6-e67d-7757-8629-269f740c10ba",
"recordedByName": "Demo Inspector"
}
},
{
"node": {
"id": "01a14ba6-e897-79fd-bb0c-5fdfbe1ae7ed",
"kind": "RM",
"stage": "Incoming inspection",
"result": "ACCEPTED",
"remark": "Material and size as per drawing",
"recordedAt": "2026-10-17T20:56:32.134Z",
"jobOperationId": null,
"inspector": "Demo Inspector",
"rejectedMaterial": null,
"report": null,
"jobCardId": "01a14ba6-e66c-79e7-b2cf-2c2dcc9126a1",
"recordedByName": "Demo Inspector"
}
},
{
"node": {
"id": "01a14ba6-e82f-78e9-b50d-88a90f1fb703",
"kind": "RM",
"stage": "Incoming inspection",
"result": "ACCEPTED",
"remark": null,
"recordedAt": "2026-10-17T20:56:32.044Z",
"jobOperationId": null,
"inspector": "Demo Inspector",
"rejectedMaterial": null,
"report": null,
"jobCardId": "01a14ba6-e65b-777f-9975-ca8ed40d8792",
"recordedByName": "Demo Inspector"
}
}
]
}
}
}recordQc
123QcCheck · pass-rmqcPOST /graphql200 OKAs expected48 ms
Headers
{
"authorization": "[REDACTED]",
"idempotency-key": "key-123",
"content-type": "application/json"
}Query
mutation AuditQcPassRm($input: QcRecordInput!) { recordQc(input: $input) { ...QR } }
fragment QR on QcRecord { id kind stage result remark recordedAt jobOperationId inspector rejectedMaterial { grade heatNumber size } report { ...F } }
fragment F on AppFileReference { id name kind sizeBytes }Variables
{
"input": {
"jobCardId": "01a14ba6-e66c-79e7-b2cf-2c2dcc9126a1",
"kind": "RM",
"result": "ACCEPTED",
"stage": "Material QC"
}
}Response · HTTP 200
{
"data": {
"recordQc": {
"id": "01a14ba9-c56b-742d-af87-2759a0cfab47",
"kind": "RM",
"stage": "Material QC",
"result": "ACCEPTED",
"remark": null,
"recordedAt": "2026-10-17T20:59:39.742Z",
"jobOperationId": null,
"inspector": "Demo Inspector",
"rejectedMaterial": null,
"report": null
}
}
}127QcFail · fail-rmqcPOST /graphql200 OKAs expected22 ms
Headers
{
"authorization": "[REDACTED]",
"idempotency-key": "key-127",
"content-type": "application/json"
}Query
mutation AuditQcFailRm($input: QcRecordInput!) { recordQc(input: $input) { ...QR } }
fragment QR on QcRecord { id kind stage result remark recordedAt jobOperationId inspector rejectedMaterial { grade heatNumber size } report { ...F } }
fragment F on AppFileReference { id name kind sizeBytes }Variables
{
"input": {
"jobCardId": "01a14ba6-e65b-777f-9975-ca8ed40d8792",
"kind": "RM",
"result": "REJECTED",
"stage": "Material QC",
"remark": "Synthetic: stock diameter below specification.",
"rejectedMaterial": {
"grade": "EN8",
"heatNumber": "HEAT-SYN-9",
"size": "24.6 mm x 200 mm"
}
}
}Response · HTTP 200
{
"data": {
"recordQc": {
"id": "01a14ba9-ca56-7fd7-a631-8b24823e194f",
"kind": "RM",
"stage": "Material QC",
"result": "REJECTED",
"remark": "Synthetic: stock diameter below specification.",
"recordedAt": "2026-10-17T20:59:41.007Z",
"jobOperationId": null,
"inspector": "Demo Inspector",
"rejectedMaterial": {
"grade": "EN8",
"heatNumber": "HEAT-SYN-9",
"size": "24.6 mm x 200 mm"
},
"report": null
}
}
}128QcFail · voice-noteqcPOST /graphql400 GRAPHQL_INVALIDAs decided8 ms
D13: no voice notes in phase 1.
Headers
{
"authorization": "[REDACTED]",
"idempotency-key": "key-128",
"content-type": "application/json"
}Query
mutation AuditQcVoice($input: QcRecordInput!) { recordQc(input: $input) { id } }Variables
{
"input": {
"jobCardId": "01a14ba6-e65b-777f-9975-ca8ed40d8792",
"kind": "RM",
"result": "REJECTED",
"remark": "x",
"voiceNote": {
"id": "0353c871-9c91-42c3-b672-4a0ccb7ae010",
"name": "note.m4a",
"kind": "Voice note",
"sizeBytes": 9
}
}
}Response · HTTP 400
{
"data": null,
"errors": [
{
"message": "Field \"voiceNote\" is not defined by type \"QcRecordInput\".",
"extensions": {
"code": "GRAPHQL_INVALID",
"message": "The GraphQL document is invalid.",
"requestId": "01a14ba9-cb2f-74cb-9ede-047941714f7a"
}
}
]
}171Flow · rm-acceptqcPOST /graphql200 OKAs expected16 ms
Headers
{
"authorization": "[REDACTED]",
"idempotency-key": "key-171",
"content-type": "application/json"
}Query
mutation AuditFlowRm($input: QcRecordInput!) { recordQc(input: $input) { id } }Variables
{
"input": {
"jobCardId": "01a14ba9-fab1-7d0b-863a-b3c7a7857bdf",
"kind": "RM",
"result": "ACCEPTED",
"stage": "Material QC"
}
}Response · HTTP 200
{
"data": {
"recordQc": {
"id": "01a14ba9-fcf1-7703-a2b3-434133a072d4"
}
}
}181QcFail · fail-machineqcPOST /graphql200 OKAs expected22 ms
Headers
{
"authorization": "[REDACTED]",
"idempotency-key": "key-181",
"content-type": "application/json"
}Query
mutation AuditQcMachine($input: QcRecordInput!) { recordQc(input: $input) { id result } }Variables
{
"input": {
"jobCardId": "01a14ba9-fab1-7d0b-863a-b3c7a7857bdf",
"kind": "MACHINE",
"jobOperationId": "01a14ba9-faba-7ba9-86ab-6e508d0314b6",
"result": "FAILED",
"stage": "Turning - QC",
"remark": "Synthetic: bore out of tolerance."
}
}Response · HTTP 200
{
"data": {
"recordQc": {
"id": "01a14baa-083b-7ad5-8910-33e5272a432b",
"result": "FAILED"
}
}
}184QcCheck · pass-machineqcPOST /graphql200 OKAs expected21 ms
Headers
{
"authorization": "[REDACTED]",
"idempotency-key": "key-184",
"content-type": "application/json"
}Query
mutation AuditQcMachine($input: QcRecordInput!) { recordQc(input: $input) { id result } }Variables
{
"input": {
"jobCardId": "01a14ba9-fab1-7d0b-863a-b3c7a7857bdf",
"kind": "MACHINE",
"jobOperationId": "01a14ba9-faba-7ba9-86ab-6e508d0314b6",
"result": "PASSED",
"stage": "Turning - QC"
}
}Response · HTTP 200
{
"data": {
"recordQc": {
"id": "01a14baa-0b7f-7679-a446-a6554f7377fc",
"result": "PASSED"
}
}
}190QcCheck · pass-machine-2qcPOST /graphql200 OKAs expected19 ms
Headers
{
"authorization": "[REDACTED]",
"idempotency-key": "key-190",
"content-type": "application/json"
}Query
mutation AuditQcMachine($input: QcRecordInput!) { recordQc(input: $input) { id result } }Variables
{
"input": {
"jobCardId": "01a14ba9-fab1-7d0b-863a-b3c7a7857bdf",
"kind": "MACHINE",
"jobOperationId": "01a14ba9-faba-72e6-b26a-13300ff83a09",
"result": "PASSED",
"stage": "Milling - QC"
}
}Response · HTTP 200
{
"data": {
"recordQc": {
"id": "01a14baa-1331-7c4e-80bc-2c840340d24a",
"result": "PASSED"
}
}
}193QcCheck · pass-machine-3qcPOST /graphql200 OKAs expected14 ms
Headers
{
"authorization": "[REDACTED]",
"idempotency-key": "key-193",
"content-type": "application/json"
}Query
mutation AuditQcMachine($input: QcRecordInput!) { recordQc(input: $input) { id result } }Variables
{
"input": {
"jobCardId": "01a14ba9-fab1-7d0b-863a-b3c7a7857bdf",
"kind": "MACHINE",
"jobOperationId": "01a14ba9-faba-7cb7-8976-85cddaaee4ed",
"result": "PASSED",
"stage": "Finishing - QC"
}
}Response · HTTP 200
{
"data": {
"recordQc": {
"id": "01a14baa-1692-7ee9-bfcd-0c4e7ea2dccd",
"result": "PASSED"
}
}
}