{
  "service": "make",
  "displayName": "Make",
  "categories": [
    "Productivity",
    "Developer Tools"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Token",
      "placeholder": "12345678-12ef-abcd-1234-1234567890ab",
      "description": "Make API token used with the Authorization: Token header. Create or manage API tokens in your Make profile: https://developers.make.com/api-documentation/authentication/create-authentication-token.",
      "extraFields": [
        {
          "key": "zoneUrl",
          "label": "Zone URL",
          "inputType": "text",
          "required": false,
          "secret": false,
          "placeholder": "https://eu1.make.com",
          "description": "The official Make zone URL for your organization, such as https://eu1.make.com or https://us1.make.com. Copy it from your Make organization dashboard URL."
        }
      ]
    }
  ],
  "homepageUrl": "https://www.make.com",
  "actions": [
    {
      "id": "make.activate_scenario",
      "service": "make",
      "name": "activate_scenario",
      "description": "Activate a Make scenario.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "scenarioId": {
            "type": "integer",
            "minimum": 1,
            "description": "Make scenario ID."
          }
        },
        "additionalProperties": false,
        "description": "Input containing one Make scenario ID."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether Make accepted the operation."
          },
          "raw": {
            "type": "object",
            "additionalProperties": true,
            "description": "Object returned by the Make API."
          }
        },
        "additionalProperties": false,
        "description": "Normalized Make operation response."
      }
    },
    {
      "id": "make.deactivate_scenario",
      "service": "make",
      "name": "deactivate_scenario",
      "description": "Deactivate a Make scenario.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "scenarioId": {
            "type": "integer",
            "minimum": 1,
            "description": "Make scenario ID."
          }
        },
        "additionalProperties": false,
        "description": "Input containing one Make scenario ID."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether Make accepted the operation."
          },
          "raw": {
            "type": "object",
            "additionalProperties": true,
            "description": "Object returned by the Make API."
          }
        },
        "additionalProperties": false,
        "description": "Normalized Make operation response."
      }
    },
    {
      "id": "make.get_current_authorization",
      "service": "make",
      "name": "get_current_authorization",
      "description": "Get the current Make credential authorization details and scopes.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "Input for retrieving Make authorization details."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "authorization": {
            "type": "object",
            "properties": {
              "scope": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "Make API scope."
                },
                "description": "Scopes granted to the Make credential."
              },
              "authUsed": {
                "type": "string",
                "description": "Authentication method used by Make."
              }
            },
            "additionalProperties": true,
            "description": "Make authorization information."
          },
          "raw": {
            "type": "object",
            "additionalProperties": true,
            "description": "Object returned by the Make API."
          }
        },
        "additionalProperties": false,
        "description": "Normalized Make current authorization response."
      }
    },
    {
      "id": "make.get_current_user",
      "service": "make",
      "name": "get_current_user",
      "description": "Get the authenticated Make user profile.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "includeInvitedOrg": {
            "type": "boolean",
            "description": "Whether pending organization invitations are included."
          },
          "cols": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "Make response column name."
            },
            "description": "Make user columns to include in the response."
          }
        },
        "additionalProperties": false,
        "description": "Input for retrieving the current Make user."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "user": {
            "type": "object",
            "properties": {
              "id": {
                "type": "integer",
                "minimum": 1,
                "description": "Make resource ID."
              },
              "name": {
                "type": "string",
                "description": "Make user name."
              },
              "email": {
                "type": "string",
                "description": "Make user email address.",
                "format": "email"
              },
              "language": {
                "type": "string",
                "description": "Make user language."
              },
              "avatar": {
                "type": "string",
                "description": "Make user avatar URL.",
                "format": "uri"
              }
            },
            "additionalProperties": true,
            "description": "Make user profile."
          },
          "raw": {
            "type": "object",
            "additionalProperties": true,
            "description": "Object returned by the Make API."
          }
        },
        "additionalProperties": false,
        "description": "Normalized Make current user response."
      }
    },
    {
      "id": "make.get_scenario",
      "service": "make",
      "name": "get_scenario",
      "description": "Get details for one Make scenario.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "scenarioId": {
            "type": "integer",
            "minimum": 1,
            "description": "Make scenario ID."
          },
          "cols": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "Make response column name."
            },
            "description": "Make scenario columns to include in the response."
          }
        },
        "additionalProperties": false,
        "required": [
          "scenarioId"
        ],
        "description": "Input for retrieving one Make scenario."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "scenario": {
            "type": "object",
            "properties": {
              "id": {
                "type": "integer",
                "minimum": 1,
                "description": "Make scenario ID."
              },
              "name": {
                "type": "string",
                "description": "Make scenario name."
              },
              "teamId": {
                "type": "integer",
                "minimum": 1,
                "description": "Make team ID."
              },
              "organizationId": {
                "type": "integer",
                "minimum": 1,
                "description": "Make organization ID."
              },
              "description": {
                "type": "string",
                "description": "Make scenario description."
              },
              "folderId": {
                "type": "integer",
                "minimum": 1,
                "description": "Make resource ID."
              },
              "isActive": {
                "type": "boolean",
                "description": "Whether the Make scenario is active."
              },
              "isPaused": {
                "type": "boolean",
                "description": "Whether the Make scenario is paused."
              },
              "islocked": {
                "type": "boolean",
                "description": "Whether the Make scenario is locked."
              },
              "isinvalid": {
                "type": "boolean",
                "description": "Whether the Make scenario is invalid."
              },
              "lastEdit": {
                "type": "string",
                "description": "Last edit timestamp returned by Make."
              },
              "created": {
                "type": "string",
                "description": "Creation timestamp returned by Make."
              },
              "nextExec": {
                "type": "string",
                "description": "Next execution timestamp returned by Make."
              },
              "type": {
                "type": "string",
                "enum": [
                  "scenario",
                  "tool"
                ],
                "description": "Make scenario type."
              }
            },
            "additionalProperties": true,
            "description": "Make scenario."
          },
          "raw": {
            "type": "object",
            "additionalProperties": true,
            "description": "Object returned by the Make API."
          }
        },
        "additionalProperties": false,
        "description": "Normalized Make scenario response."
      }
    },
    {
      "id": "make.get_scenario_usage",
      "service": "make",
      "name": "get_scenario_usage",
      "description": "Get daily usage for a Make scenario over the previous 30 days.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "scenarioId": {
            "type": "integer",
            "minimum": 1,
            "description": "Make scenario ID."
          },
          "organizationTimezone": {
            "type": "boolean",
            "description": "Whether usage days are calculated in the organization timezone."
          }
        },
        "additionalProperties": false,
        "required": [
          "scenarioId"
        ],
        "description": "Input for retrieving Make scenario usage."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "usage": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "description": "Object returned by the Make API."
            },
            "description": "Daily Make scenario usage records."
          },
          "raw": {
            "type": "object",
            "additionalProperties": true,
            "description": "Object returned by the Make API."
          }
        },
        "additionalProperties": false,
        "description": "Normalized Make scenario usage response."
      }
    },
    {
      "id": "make.list_scenarios",
      "service": "make",
      "name": "list_scenarios",
      "description": "List Make scenarios for one team or organization.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "teamId": {
            "type": "integer",
            "minimum": 1,
            "description": "Make team ID."
          },
          "organizationId": {
            "type": "integer",
            "minimum": 1,
            "description": "Make organization ID."
          },
          "ids": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": 1,
              "description": "Make scenario ID."
            },
            "description": "Specific Make scenario IDs to retrieve.",
            "minItems": 1
          },
          "folderId": {
            "type": "integer",
            "minimum": 1,
            "description": "Make resource ID."
          },
          "isActive": {
            "type": "boolean",
            "description": "Whether to return only active or inactive scenarios."
          },
          "concept": {
            "type": "boolean",
            "description": "Whether to return only scenario concepts."
          },
          "type": {
            "type": "string",
            "enum": [
              "scenario",
              "tool"
            ],
            "description": "Make scenario type."
          },
          "cols": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "Make response column name."
            },
            "description": "Make scenario columns to include in the response."
          },
          "offset": {
            "type": "integer",
            "minimum": 0,
            "description": "Number of records to skip."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "description": "Maximum number of records to return."
          },
          "sortBy": {
            "type": "string",
            "minLength": 1,
            "description": "Make scenario field to sort by."
          },
          "sortDir": {
            "type": "string",
            "enum": [
              "asc",
              "desc"
            ],
            "description": "Make sorting direction."
          }
        },
        "additionalProperties": false,
        "description": "Input for listing Make scenarios.",
        "oneOf": [
          {
            "required": [
              "teamId"
            ],
            "not": {
              "required": [
                "organizationId"
              ]
            }
          },
          {
            "required": [
              "organizationId"
            ],
            "not": {
              "required": [
                "teamId"
              ]
            }
          }
        ]
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "scenarios": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "integer",
                  "minimum": 1,
                  "description": "Make scenario ID."
                },
                "name": {
                  "type": "string",
                  "description": "Make scenario name."
                },
                "teamId": {
                  "type": "integer",
                  "minimum": 1,
                  "description": "Make team ID."
                },
                "organizationId": {
                  "type": "integer",
                  "minimum": 1,
                  "description": "Make organization ID."
                },
                "description": {
                  "type": "string",
                  "description": "Make scenario description."
                },
                "folderId": {
                  "type": "integer",
                  "minimum": 1,
                  "description": "Make resource ID."
                },
                "isActive": {
                  "type": "boolean",
                  "description": "Whether the Make scenario is active."
                },
                "isPaused": {
                  "type": "boolean",
                  "description": "Whether the Make scenario is paused."
                },
                "islocked": {
                  "type": "boolean",
                  "description": "Whether the Make scenario is locked."
                },
                "isinvalid": {
                  "type": "boolean",
                  "description": "Whether the Make scenario is invalid."
                },
                "lastEdit": {
                  "type": "string",
                  "description": "Last edit timestamp returned by Make."
                },
                "created": {
                  "type": "string",
                  "description": "Creation timestamp returned by Make."
                },
                "nextExec": {
                  "type": "string",
                  "description": "Next execution timestamp returned by Make."
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "scenario",
                    "tool"
                  ],
                  "description": "Make scenario type."
                }
              },
              "additionalProperties": true,
              "description": "Make scenario."
            },
            "description": "Make scenarios returned by the API."
          },
          "pg": {
            "type": "object",
            "properties": {
              "last": {
                "type": "string",
                "description": "Cursor for the last page when returned by Make."
              },
              "showLast": {
                "type": "boolean",
                "description": "Whether Make reports a last-page cursor."
              },
              "sortBy": {
                "type": "string",
                "description": "Active sort field returned by Make."
              },
              "sortDir": {
                "type": "string",
                "description": "Active sort direction returned by Make."
              },
              "limit": {
                "type": "integer",
                "description": "Result limit returned by Make."
              },
              "offset": {
                "type": "integer",
                "description": "Result offset returned by Make."
              }
            },
            "additionalProperties": true,
            "description": "Make pagination metadata."
          },
          "raw": {
            "type": "object",
            "additionalProperties": true,
            "description": "Object returned by the Make API."
          }
        },
        "additionalProperties": false,
        "required": [
          "scenarios",
          "raw"
        ],
        "description": "Normalized Make scenario list response."
      }
    },
    {
      "id": "make.list_teams",
      "service": "make",
      "name": "list_teams",
      "description": "List Make teams visible to the authenticated credential.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "organizationId": {
            "type": "integer",
            "minimum": 1,
            "description": "Make organization ID."
          },
          "offset": {
            "type": "integer",
            "minimum": 0,
            "description": "Number of records to skip."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "description": "Maximum number of records to return."
          },
          "sortBy": {
            "type": "string",
            "minLength": 1,
            "description": "Make team field to sort by."
          },
          "sortDir": {
            "type": "string",
            "enum": [
              "asc",
              "desc"
            ],
            "description": "Make sorting direction."
          }
        },
        "additionalProperties": false,
        "description": "Input for listing Make teams."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "teams": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "integer",
                  "minimum": 1,
                  "description": "Make resource ID."
                },
                "name": {
                  "type": "string",
                  "description": "Make team name."
                },
                "organizationId": {
                  "type": "integer",
                  "minimum": 1,
                  "description": "Make organization ID."
                }
              },
              "additionalProperties": true,
              "description": "Make team."
            },
            "description": "Make teams returned by the API."
          },
          "pg": {
            "type": "object",
            "properties": {
              "last": {
                "type": "string",
                "description": "Cursor for the last page when returned by Make."
              },
              "showLast": {
                "type": "boolean",
                "description": "Whether Make reports a last-page cursor."
              },
              "sortBy": {
                "type": "string",
                "description": "Active sort field returned by Make."
              },
              "sortDir": {
                "type": "string",
                "description": "Active sort direction returned by Make."
              },
              "limit": {
                "type": "integer",
                "description": "Result limit returned by Make."
              },
              "offset": {
                "type": "integer",
                "description": "Result offset returned by Make."
              }
            },
            "additionalProperties": true,
            "description": "Make pagination metadata."
          },
          "raw": {
            "type": "object",
            "additionalProperties": true,
            "description": "Object returned by the Make API."
          }
        },
        "additionalProperties": false,
        "required": [
          "teams",
          "raw"
        ],
        "description": "Normalized Make team list response."
      }
    },
    {
      "id": "make.run_scenario_once",
      "service": "make",
      "name": "run_scenario_once",
      "description": "Run a Make scenario once on demand.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "scenarioId": {
            "type": "integer",
            "minimum": 1,
            "description": "Make scenario ID."
          },
          "data": {
            "type": "object",
            "additionalProperties": true,
            "description": "Scenario input values keyed by the Make scenario input name."
          },
          "responsive": {
            "type": "boolean",
            "description": "Whether Make should wait for the scenario execution to finish."
          },
          "callbackUrl": {
            "type": "string",
            "description": "Callback URL Make should call when the scenario execution finishes.",
            "format": "uri"
          }
        },
        "additionalProperties": false,
        "required": [
          "scenarioId"
        ],
        "description": "Input for running one Make scenario."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "executionId": {
            "type": "string",
            "description": "Make scenario execution ID."
          },
          "status": {
            "type": "string",
            "description": "Make scenario execution status when returned by Make."
          },
          "raw": {
            "type": "object",
            "additionalProperties": true,
            "description": "Object returned by the Make API."
          }
        },
        "additionalProperties": false,
        "required": [
          "raw"
        ],
        "description": "Normalized Make scenario run response."
      }
    }
  ]
}
