Learn how to read, create, update, and delete app features using the platform API
All apps built on the monday.com apps framework are comprised of features. These features determine where the app appears in the UI, the methods required to build it, and its functionality. They are created and managed through the Developer Center, but you can also retrieve certain data by querying the features
object.
Queries
To retrieve app data, you can query the features
endpoint as follows:
- Must be nested within an
app
query - Returns an object containing metadata about an app's features
query {
app (id:123456) {
features (limit: 2) {
created_at
data
id
name
}
}
}
Arguments
You can use the following argument(s) to reduce the number of results returned in your features
query.
Argument | Description |
---|---|
limit Int | The number of features to return. The default is 25. |
page Int | The page number to return. Starts at 1. |
Fields
You can use the following field(s) to specify what information your features
query will return.
Field | Description |
---|---|
app_id ID | The unique identifier of the app the feature belongs to. |
created_at Date | The app feature's creation date. |
data JSON | The app feature's data. |
id ID! | The app feature's unique identifier. |
name String | The app's feature's name. |
type String | The app feature's type. |
updated_at Date | The app feature's last updated date. |
Mutations
The API allows you to create, update, and delete app features using the following mutations.
Create app feature
The create_app_feature
mutation creates an app feature via the API. You can specify which fields to return from the new app feature in the mutation response.
mutation {
create_app_feature(
slug: "test-item-view",
app_id: 9876543210,
type: ITEM_VIEW
) {
id
name
}
}
Arguments
You can use the following arguments to define the new app feature's characteristics.
Argument | Description | Supported Fields |
---|---|---|
app_id ID! | The unique identifier of the app to create the new feature for. | |
app_version_id ID | The unique identifier of the app version to create the new feature for. | |
data JSON | The app feature's data. | |
deployment AppFeatureReleaseInput | The new app feature's deployment data. | data AppFeatureReleaseDataInput kind AppFeatureReleaseKind |
name String | The new app feature's name. | |
slug String! | The new app feature's unique slug. | |
type AppFeatureTypeE! | The new app feature's type. |
Update app feature
The update_app_feature
mutation updates an app feature via the API. You can specify which fields to return from the updated app feature in the mutation response.
mutation {
update_app_feature(
id: 12345,
input: {
data: {
name: "Updated App Feature",
description: "This is an updated app feature description."
}
deployment: {
kind: CLIENT_SIDE_CODE,
data: {
url: "/sub-route"
}
}
}
) {
id
name
data
}
}
Arguments
You can use the following arguments to define the updated app feature's characteristics.
Argument | Description | Supported Fields |
---|---|---|
id ID! | The app feature's unique identifier. | |
input UpdateAppFeatureInput! | The input for the updated app feature. | data JSON deployment AppFeatureReleaseInput |