Mutation / devices
upsertEdgeApp
Create or update a DRAFT edge app row. With input.id: edits the existing draft (rejects PUBLISHED/DEPRECATED rows — those are frozen). Without input.id: creates a new draft for the handle (rejects if a draft already exists). Drafts aren't pushed to controllers; use publishEdgeAppDraft to ship. Requires edge_app:write permission.
Arguments
inputUpsertEdgeAppInput!EdgeApp definition
Returns UpsertEdgeAppPayload!
Explore in a view
View exact SDL
"""
Create or update a DRAFT edge app row. With `input.id`: edits the existing draft (rejects PUBLISHED/DEPRECATED rows — those are frozen). Without `input.id`: creates a new draft for the handle (rejects if a draft already exists). Drafts aren't pushed to controllers; use publishEdgeAppDraft to ship. Requires edge_app:write permission.
"""
upsertEdgeApp(
"""EdgeApp definition"""
input: UpsertEdgeAppInput!
): UpsertEdgeAppPayload! @topic(names: ["devices"])Schema reference describes the API contract. Actual access is checked by the platform for every operation.