403 lines
6.6 KiB
GraphQL
403 lines
6.6 KiB
GraphQL
type Query {
|
|
getApps(name: String, onlyWithTriggers: Boolean): [App]
|
|
getApp(key: AvailableAppsEnumType!): App
|
|
getConnectedApps(name: String): [App]
|
|
getAppConnections(key: AvailableAppsEnumType!): [Connection]
|
|
testConnection(id: String!): Connection
|
|
getFlow(id: String!): Flow
|
|
getFlows: [Flow]
|
|
getStepWithTestExecutions(stepId: String!): [Step]
|
|
getExecutions(limit: Int!, offset: Int!): ExecutionConnection
|
|
getExecutionSteps(
|
|
executionId: String!
|
|
limit: Int!
|
|
offset: Int!
|
|
): ExecutionStepConnection
|
|
getData(stepId: String!, key: String!): JSONObject
|
|
}
|
|
|
|
type Mutation {
|
|
createConnection(input: CreateConnectionInput): Connection
|
|
createAuthData(input: CreateAuthDataInput): AuthLink
|
|
updateConnection(input: UpdateConnectionInput): Connection
|
|
resetConnection(input: ResetConnectionInput): Connection
|
|
verifyConnection(input: VerifyConnectionInput): Connection
|
|
deleteConnection(input: DeleteConnectionInput): Boolean
|
|
createFlow(input: CreateFlowInput): Flow
|
|
updateFlow(input: UpdateFlowInput): Flow
|
|
updateFlowStatus(input: UpdateFlowStatusInput): Flow
|
|
executeFlow(input: ExecuteFlowInput): executeFlowType
|
|
deleteFlow(input: DeleteFlowInput): Boolean
|
|
createStep(input: CreateStepInput): Step
|
|
updateStep(input: UpdateStepInput): Step
|
|
deleteStep(input: DeleteStepInput): Step
|
|
updateUser(input: UpdateUserInput): User
|
|
login(input: LoginInput): Auth
|
|
}
|
|
|
|
"""
|
|
Exposes a URL that specifies the behaviour of this scalar.
|
|
"""
|
|
directive @specifiedBy(
|
|
"""
|
|
The URL that specifies the behaviour of this scalar.
|
|
"""
|
|
url: String!
|
|
) on SCALAR
|
|
|
|
type Action {
|
|
name: String
|
|
key: String
|
|
description: String
|
|
substeps: [ActionSubstep]
|
|
}
|
|
|
|
type ActionSubstep {
|
|
key: String
|
|
name: String
|
|
arguments: [ActionSubstepArgument]
|
|
}
|
|
|
|
type ActionSubstepArgument {
|
|
label: String
|
|
key: String
|
|
type: String
|
|
description: String
|
|
required: Boolean
|
|
variables: Boolean
|
|
source: ActionSubstepArgumentSource
|
|
}
|
|
|
|
type ActionSubstepArgumentSource {
|
|
type: String
|
|
name: String
|
|
arguments: [ActionSubstepArgumentSourceArgument]
|
|
}
|
|
|
|
type ActionSubstepArgumentSourceArgument {
|
|
name: String
|
|
value: String
|
|
}
|
|
|
|
type App {
|
|
name: String
|
|
key: String
|
|
connectionCount: Int
|
|
iconUrl: String
|
|
docUrl: String
|
|
primaryColor: String
|
|
fields: [Field]
|
|
authenticationSteps: [AuthenticationStep]
|
|
reconnectionSteps: [ReconnectionStep]
|
|
triggers: [Trigger]
|
|
actions: [Action]
|
|
connections: [Connection]
|
|
}
|
|
|
|
enum ArgumentEnumType {
|
|
integer
|
|
string
|
|
}
|
|
|
|
type Auth {
|
|
user: User
|
|
token: String
|
|
}
|
|
|
|
type AuthenticationStep {
|
|
step: Int
|
|
type: String
|
|
name: String
|
|
arguments: [AuthenticationStepArgument]
|
|
}
|
|
|
|
type AuthenticationStepArgument {
|
|
name: String
|
|
value: String
|
|
type: ArgumentEnumType
|
|
properties: [AuthenticationStepProperty]
|
|
}
|
|
|
|
type AuthenticationStepProperty {
|
|
name: String
|
|
value: String
|
|
}
|
|
|
|
type AuthLink {
|
|
url: String
|
|
}
|
|
|
|
enum AvailableAppsEnumType {
|
|
discord
|
|
firebase
|
|
flickr
|
|
github
|
|
postgresql
|
|
smtp
|
|
twilio
|
|
twitch
|
|
twitter
|
|
typeform
|
|
slack
|
|
}
|
|
|
|
type Connection {
|
|
id: String
|
|
key: String
|
|
formattedData: ConnectionData
|
|
verified: Boolean
|
|
app: App
|
|
createdAt: String
|
|
}
|
|
|
|
type ConnectionData {
|
|
screenName: String
|
|
}
|
|
|
|
type executeFlowType {
|
|
data: JSONObject
|
|
step: Step
|
|
}
|
|
|
|
type ExecutionStep {
|
|
id: String
|
|
executionId: String
|
|
stepId: String
|
|
status: String
|
|
dataIn: JSONObject
|
|
dataOut: JSONObject
|
|
}
|
|
|
|
type Field {
|
|
key: String
|
|
label: String
|
|
type: String
|
|
required: Boolean
|
|
readOnly: Boolean
|
|
value: String
|
|
placeholder: String
|
|
description: String
|
|
docUrl: String
|
|
clickToCopy: Boolean
|
|
}
|
|
|
|
type Flow {
|
|
id: String
|
|
name: String
|
|
active: Boolean
|
|
steps: [Step]
|
|
}
|
|
|
|
type Execution {
|
|
id: String
|
|
testRun: Boolean
|
|
createdAt: String
|
|
updatedAt: String
|
|
flow: Flow
|
|
}
|
|
|
|
input CreateConnectionInput {
|
|
key: AvailableAppsEnumType!
|
|
formattedData: JSONObject!
|
|
}
|
|
|
|
input CreateAuthDataInput {
|
|
id: String!
|
|
}
|
|
|
|
input UpdateConnectionInput {
|
|
id: String!
|
|
formattedData: JSONObject!
|
|
}
|
|
|
|
input ResetConnectionInput {
|
|
id: String!
|
|
}
|
|
|
|
input VerifyConnectionInput {
|
|
id: String!
|
|
}
|
|
|
|
input DeleteConnectionInput {
|
|
id: String!
|
|
}
|
|
|
|
input CreateFlowInput {
|
|
triggerAppKey: String
|
|
}
|
|
|
|
input UpdateFlowInput {
|
|
id: String!
|
|
name: String!
|
|
}
|
|
|
|
input UpdateFlowStatusInput {
|
|
id: String!
|
|
active: Boolean!
|
|
}
|
|
|
|
input ExecuteFlowInput {
|
|
stepId: String!
|
|
}
|
|
|
|
input DeleteFlowInput {
|
|
id: String!
|
|
}
|
|
|
|
input CreateStepInput {
|
|
id: String
|
|
previousStepId: String
|
|
key: String
|
|
appKey: String
|
|
connection: StepConnectionInput
|
|
flow: StepFlowInput
|
|
parameters: JSONObject
|
|
previousStep: PreviousStepInput
|
|
}
|
|
|
|
input UpdateStepInput {
|
|
id: String
|
|
previousStepId: String
|
|
key: String
|
|
appKey: String
|
|
connection: StepConnectionInput
|
|
flow: StepFlowInput
|
|
parameters: JSONObject
|
|
previousStep: PreviousStepInput
|
|
}
|
|
|
|
input DeleteStepInput {
|
|
id: String!
|
|
}
|
|
|
|
input UpdateUserInput {
|
|
email: String
|
|
password: String
|
|
}
|
|
|
|
input LoginInput {
|
|
email: String!
|
|
password: String!
|
|
}
|
|
|
|
"""
|
|
The `JSONObject` scalar type represents JSON objects as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf).
|
|
"""
|
|
scalar JSONObject
|
|
|
|
input PreviousStepInput {
|
|
id: String
|
|
}
|
|
|
|
type ReconnectionStep {
|
|
step: Int
|
|
type: String
|
|
name: String
|
|
arguments: [ReconnectionStepArgument]
|
|
}
|
|
|
|
type ReconnectionStepArgument {
|
|
name: String
|
|
value: String
|
|
type: ArgumentEnumType
|
|
properties: [ReconnectionStepProperty]
|
|
}
|
|
|
|
type ReconnectionStepProperty {
|
|
name: String
|
|
value: String
|
|
}
|
|
|
|
type Step {
|
|
id: String
|
|
previousStepId: String
|
|
key: String
|
|
appKey: String
|
|
type: StepEnumType
|
|
parameters: JSONObject
|
|
connection: Connection
|
|
flow: Flow
|
|
position: Int
|
|
status: String
|
|
executionSteps: [ExecutionStep]
|
|
}
|
|
|
|
input StepConnectionInput {
|
|
id: String
|
|
}
|
|
|
|
enum StepEnumType {
|
|
trigger
|
|
action
|
|
}
|
|
|
|
input StepFlowInput {
|
|
id: String
|
|
}
|
|
|
|
input StepInput {
|
|
id: String
|
|
previousStepId: String
|
|
key: String
|
|
appKey: String
|
|
connection: StepConnectionInput
|
|
flow: StepFlowInput
|
|
parameters: JSONObject
|
|
previousStep: PreviousStepInput
|
|
}
|
|
|
|
type Trigger {
|
|
name: String
|
|
key: String
|
|
description: String
|
|
substeps: [TriggerSubstep]
|
|
}
|
|
|
|
type TriggerSubstep {
|
|
key: String
|
|
name: String
|
|
arguments: [TriggerSubstepArgument]
|
|
}
|
|
|
|
type TriggerSubstepArgument {
|
|
label: String
|
|
key: String
|
|
type: String
|
|
required: Boolean
|
|
}
|
|
|
|
type User {
|
|
id: String
|
|
email: String
|
|
createdAt: String
|
|
updatedAt: String
|
|
}
|
|
|
|
type PageInfo {
|
|
currentPage: Int!
|
|
totalPages: Int!
|
|
}
|
|
|
|
type ExecutionEdge {
|
|
node: Execution
|
|
}
|
|
|
|
type ExecutionStepEdge {
|
|
node: ExecutionStep
|
|
}
|
|
|
|
type ExecutionConnection {
|
|
edges: [ExecutionEdge]
|
|
pageInfo: PageInfo
|
|
}
|
|
|
|
type ExecutionStepConnection {
|
|
edges: [ExecutionStepEdge]
|
|
pageInfo: PageInfo
|
|
}
|
|
|
|
schema {
|
|
query: Query
|
|
mutation: Mutation
|
|
}
|