Skip to main content

Executing Custom Functions

Once a custom function is deployed, it can be executed. Each custom function type has different execution parameters.

Resolvers​

Resolvers are an extension of the GraphQL API. They can be invoked using GraphQL query or mutation constructs.

For example, if you have a resolver with a schema like this:

type StatResult {
name: String,
value: Int,
performance: Float
}

type StatResultEntry {
entryDate: Date,
issueCount: [StatResult]
issueComplexity: [StatResult]
}
type GetFilterStatsResult {
result: [StatResultEntry]
}

extend type Query {
getFilterStats(filterId: String!, size: Int!): GetFilterStatsResult
}

You can invoke it using this GraphQL command:

query MyQuery {
getFilterStats(filterId: "123", size: 10) {
result {
entryDate
issueComplexity {
name
performance
value
}
issueCount {
name
performance
value
}
}
}
}

Triggers​

Triggers execute when the defined event occurs. For example, you can set a trigger to execute every time a new user is created. To learn more, see Triggers.

Webhooks​

After deployment, webooks are available as HTTP endpoints in a path. For example: https://api.8base.com/<WORKSPACE_ID>/webhook/<WEBHOOK_NAME>. The request must be made with the HTTP verb declared as method on the 8base.yml.

Tasks​

If a task was declared as scheduled, it will execute during the intervals specified in the 8base.yml. Otherwise, they can be executed via code as explained in Non-scheduled function calls.