{
  "schemaVersion": 1,
  "key": "github",
  "name": "GitHub",
  "description": "Crie issues e reaja a eventos de repositórios do GitHub.",
  "category": "developer",
  "vendor": "GitHub",
  "version": "1.0.0",
  "status": "ACTIVE",
  "credentials": [
    {
      "type": "BEARER_TOKEN",
      "secretLabel": "Personal Access Token",
      "secretPlaceholder": "ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
      "helpText": "Gere um token em Settings → Developer settings → Personal access tokens, com escopo repo.",
      "helpUrl": "https://github.com/settings/tokens"
    }
  ],
  "actions": [
    {
      "key": "issue.create",
      "name": "Criar issue",
      "description": "Abre uma issue num repositório, com título e corpo vindos do processo.",
      "inputs": [
        {
          "key": "owner",
          "label": "Dono (organização ou usuário)",
          "type": "TEXT",
          "required": true,
          "description": "Ex.: minha-org"
        },
        {
          "key": "repo",
          "label": "Repositório",
          "type": "TEXT",
          "required": true,
          "description": "Ex.: meu-repo"
        },
        {
          "key": "title",
          "label": "Título",
          "type": "TEXT",
          "required": true,
          "description": "Aceita expressões, ex.: Falha em {{ process.protocol }}"
        },
        {
          "key": "body",
          "label": "Descrição",
          "type": "TEXT",
          "required": false
        }
      ],
      "outputs": [
        {
          "key": "number",
          "label": "Number",
          "type": "OUTPUT",
          "required": false
        },
        {
          "key": "url",
          "label": "Url",
          "type": "OUTPUT",
          "required": false
        }
      ]
    }
  ],
  "triggers": [
    {
      "key": "issue.opened",
      "name": "Issue criada",
      "description": "Dispara quando uma issue é aberta no repositório.",
      "mode": "PUSH",
      "exclusiveByConnection": false,
      "inputs": [
        {
          "key": "owner",
          "label": "Dono (organização ou usuário)",
          "type": "TEXT",
          "required": true,
          "description": "Ex.: minha-org"
        },
        {
          "key": "repo",
          "label": "Repositório",
          "type": "TEXT",
          "required": true,
          "description": "Ex.: meu-repo"
        }
      ],
      "events": [
        {
          "type": "GENERIC"
        }
      ]
    }
  ]
}
