Système de gestion complète des vidéos basé sur un agent IA et api.video

Avancé

Ceci est unContent Creation, AI RAGworkflow d'automatisation du domainecontenant 61 nœuds.Utilise principalement des nœuds comme HttpRequestTool, McpTrigger. Système de gestion de vidéo complet pour les agents AI basé sur api.video

Prérequis
  • Peut nécessiter les informations d'identification d'authentification de l'API cible
Aperçu du workflow
Visualisation des connexions entre les nœuds, avec support du zoom et du déplacement
Exporter le workflow
Copiez la configuration JSON suivante dans n8n pour importer et utiliser ce workflow
{
  "meta": {
    "instanceId": "cd59eaaeb7b34d06e24511380db94cdb7fbce6037cc4de22e539c5158ab9cdfc"
  },
  "nodes": [
    {
      "id": "c74e7752-3571-4428-8774-a14cab7449f6",
      "name": "Avertissement avancé",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        100,
        0
      ],
      "parameters": {
        "color": 3,
        "width": 1380,
        "height": 620,
        "content": "# ⚠️ ADVANCED USE ONLY\n\n### 🚨 This workflow is for advanced users only!\n\nThis MCP server contains **47 operations** which is significantly more than the recommended maximum of 40 tools for most AI clients.\n\n### 🔍 Recommended Alternative\n**Seek a simplified MCP server** that utilizes the official n8n tool implementation for api.video if available, as it will be more efficient and easier to manage.\n\n### 🛠️ Advanced Usage Instructions\n\n**BEFORE adding this MCP server to your client:**\n### Disable or delete unused nodes - Review sections and disable/delete those you don't need\n\n**AFTER adding the MCP server to your client:**\n1.**Selective tool enabling** - Instead of enabling all tools (default), manually select only the specific tools you need for *that* Workflow's MCP client.\n2. **Monitor performance** - Too many tools can slow down AI responses\n\n### 💡 Pro Tips\n**Keep maximum 40 enabled tools** - Most AI clients perform better with fewer tools\n- Group related operations and only enable one group at a time\n- Use the overview note to understand what each operation group does\n- Consider creating multiple smaller MCP servers for different use cases"
      },
      "typeVersion": 1
    },
    {
      "id": "4e7e25ef-5643-4bad-9829-221e0a6b240e",
      "name": "Instructions d'installation",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        100,
        660
      ],
      "parameters": {
        "color": 4,
        "height": 1060,
        "content": "### ⚙️ Setup Instructions\n\n1. **Import Workflow**: \nLoad this workflow into your n8n instance\n\n2. **Authentication**: \nNo authentication required\n\n3. **Activate Workflow**:\nEnable the workflow to start the MCP server\n\n4. **Get MCP URL**: \nCopy the webhook URL from the MCP trigger\n\n5. **Connect AI Agent**:\nUse the MCP URL in your AI agent configuration\n\n\n### 💡 Usage Notes\n• Parameters are auto-populated by AI using $fromAI() expressions\n• With 47 API endpoints available as tools\n• Responses maintain original API structure\n\n\n### 🛠️ Customization\n• Add data transformation nodes if needed\n• Implement custom error handling\n• Add logging or monitoring nodes\n\n• Modify parameter defaults in any HTTP request node as needed\n\n### 💬 Need Help?\nPing me on [discord](https://discord.me/cfomodz) for integration guidance and custom automations. Check the [n8n documentation](https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolmcp/) for more information."
      },
      "typeVersion": 1
    },
    {
      "id": "5d841a51-b48b-442f-bdb3-48ebf8844011",
      "name": "Vue d'ensemble du flux de travail",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        360,
        660
      ],
      "parameters": {
        "width": 420,
        "height": 920,
        "content": "## 🛠️ api.video MCP Server ✅ 47 operations\n\n### About\napi.video is an API that encodes on the go to facilitate immediate playback, enhancing viewer streaming experiences across multiple devices and platforms. You can stream live or on-demand online videos within minutes.\n\n### 🔧 How it Works\n\nThis workflow converts the api.video API into an MCP-compatible interface for AI agents.\n\n• **MCP Trigger**: Serves as your server endpoint for AI agent requests\n• **HTTP Request Nodes**: Handle API calls to https://ws.api.video\n• **AI Expressions**: Automatically populate parameters via `$fromAI()` placeholders\n• **Native Integration**: Returns responses directly to the AI agent\n\n\n### 📋 Available Operations (47 endpoints)\n\n**Account (1 operations)**\nshow\n\n**Analytics (3 operations)**\nlist\n\n**Authentication (2 operations)**\nauthenticate, refresh\n\n**Live (7 operations)**\nlist, create, delete, show, update, upload\n\n**Players (7 operations)**\nlist, create, delete, show, update, upload\n\n**Videos - Delegated Upload (5 operations)**\nupload, list, generate, delete, show\n\n**Videos (9 operations)**\nlist, create, delete, show, update, upload, pick\n\n**Captions (5 operations)**\nlist, delete, show, update, upload\n\n**Chapters (4 operations)**\nlist, delete, show, upload\n\n**Web Hooks (4 operations)**\nlist, create, delete, show\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
      "name": "Serveur MCP api.video",
      "type": "@n8n/n8n-nodes-langchain.mcpTrigger",
      "position": [
        1360,
        700
      ],
      "webhookId": "66add934-e97a-4e6d-afb5-5b6d8ae2d460",
      "parameters": {
        "path": "api.video-mcp"
      },
      "typeVersion": 1
    },
    {
      "id": "f9107bfd-7965-432a-8400-085f306c54a1",
      "name": "Note adhésive",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        840,
        680
      ],
      "parameters": {
        "color": 2,
        "width": 300,
        "height": 180,
        "content": "## Account"
      },
      "typeVersion": 1
    },
    {
      "id": "cd5cdc9c-8518-4fc5-ac7e-a7c913095839",
      "name": "Afficher le compte",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        980,
        700
      ],
      "parameters": {
        "url": "=https://ws.api.video/account",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Show account"
      },
      "typeVersion": 4.2
    },
    {
      "id": "ae2110b7-404b-48e5-b1ef-8d386f91c5b4",
      "name": "Note adhésive 2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        840,
        920
      ],
      "parameters": {
        "color": 3,
        "width": 700,
        "height": 180,
        "content": "## Analytics"
      },
      "typeVersion": 1
    },
    {
      "id": "5dd47e38-2488-4d62-8045-d51dfa338d4d",
      "name": "Lister les sessions de lecteur en direct",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        980,
        940
      ],
      "parameters": {
        "url": "=https://ws.api.video/analytics/live-streams/{{ $fromAI('liveStreamId', 'The unique identifier for the live stream you want to retrieve analytics for.', 'string') }}",
        "options": {},
        "sendQuery": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "period",
              "value": "={{ $fromAI('period', 'Period must have one of the following formats: - For a day : \"2018-01-01\", - For a week: \"2018-W01\", - For a month: \"2018-01\" - For a year: \"2018\" For a range period: - Date range: \"2018-01-01/2018-01-15\"', 'string') }}"
            }
          ]
        },
        "toolDescription": "List live stream player sessions\n\nParameters:\n- Path parameters:\n  • liveStreamId (required) - The unique identifier for the live stream you want to retrieve analytics for.\n- Query parameters:\n  • period (optional) - Period must have one of the following formats: - For a day : \"2018-01-01\", - For a week: \"2018-W01\", - For a month: \"2018-01\" - For a year: \"2018\" For a range period: - Date range: \"2018-01-01/2018-01-15\""
      },
      "typeVersion": 4.2
    },
    {
      "id": "6d8211b0-6269-4afc-978e-ee3786e744be",
      "name": "Lister les événements de session lecteur",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1180,
        940
      ],
      "parameters": {
        "url": "=https://ws.api.video/analytics/sessions/{{ $fromAI('sessionId', 'A unique identifier you can use to reference and track a session with.', 'string') }}/events",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "List player session events\n\nParameters:\n- Path parameters:\n  • sessionId (required) - A unique identifier you can use to reference and track a session with."
      },
      "typeVersion": 4.2
    },
    {
      "id": "7cc757be-861c-41fe-bbb3-14c9a7d8ee9b",
      "name": "Lister les sessions de lecteur vidéo",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1380,
        940
      ],
      "parameters": {
        "url": "=https://ws.api.video/analytics/videos/{{ $fromAI('videoId', 'The unique identifier for the video you want to retrieve session information for.', 'string') }}",
        "options": {},
        "sendQuery": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "period",
              "value": "={{ $fromAI('period', 'Period must have one of the following formats: - For a day : 2018-01-01, - For a week: 2018-W01, - For a month: 2018-01 - For a year: 2018 For a range period: - Date range: 2018-01-01/2018-01-15', 'string') }}"
            },
            {
              "name": "metadata",
              "value": "={{ $fromAI('metadata', 'Metadata and [Dynamic Metadata](https://api.video/blog/endpoints/dynamic-metadata) filter. Send an array of key value pairs you want to filter sessios with.', 'json') }}"
            }
          ]
        },
        "toolDescription": "List video player sessions\n\nParameters:\n- Path parameters:\n  • videoId (required) - The unique identifier for the video you want to retrieve session information for.\n- Query parameters:\n  • period (optional) - Period must have one of the following formats: - For a day : 2018-01-01, - For a week: 2018-W01, - For a month: 2018-01 - For a year: 2018 For a range period: - Date range: 2018-01-01/2018-01-15\n  • metadata (optional) - Metadata and [Dynamic Metadata](https://api.video/blog/endpoints/dynamic-metadata) filter. Send an array of key value pairs you want to filter sessios with."
      },
      "typeVersion": 4.2
    },
    {
      "id": "a4349204-2633-49ac-99f7-b9c4886a171d",
      "name": "Note adhésive 3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        840,
        1160
      ],
      "parameters": {
        "color": 4,
        "width": 500,
        "height": 180,
        "content": "## Authentication"
      },
      "typeVersion": 1
    },
    {
      "id": "fb02748d-bb89-48e3-b6d1-5e485a0ae1fd",
      "name": "Authentifier",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        980,
        1180
      ],
      "parameters": {
        "url": "=https://ws.api.video/auth/api-key",
        "method": "POST",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Authenticate"
      },
      "typeVersion": 4.2
    },
    {
      "id": "c66a1323-e700-4e76-b86c-79c3d6b756a7",
      "name": "Actualiser le jeton",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1180,
        1180
      ],
      "parameters": {
        "url": "=https://ws.api.video/auth/refresh",
        "method": "POST",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Refresh token"
      },
      "typeVersion": 4.2
    },
    {
      "id": "e2696a5b-3d51-47b6-a345-b55efd21be7a",
      "name": "Note adhésive 4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        840,
        1400
      ],
      "parameters": {
        "color": 5,
        "width": 1500,
        "height": 180,
        "content": "## Live"
      },
      "typeVersion": 1
    },
    {
      "id": "42759c89-4400-45a8-bd0c-4964358c2b8b",
      "name": "Lister tous les flux en direct",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        980,
        1420
      ],
      "parameters": {
        "url": "=https://ws.api.video/live-streams",
        "options": {},
        "sendQuery": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "streamKey",
              "value": "={{ $fromAI('streamKey', 'The unique stream key that allows you to stream videos.', 'string') }}"
            },
            {
              "name": "name",
              "value": "={{ $fromAI('name', 'You can filter live streams by their name or a part of their name.', 'string') }}"
            },
            {
              "name": "sortBy",
              "value": "={{ $fromAI('sortBy', 'Allowed: createdAt, publishedAt, name. createdAt - the time a livestream was created using the specified streamKey. publishedAt - the time a livestream was published using the specified streamKey. name - the name of the livestream. If you choose one of the time based options, the time is presented in ISO-8601 format.', 'string') }}"
            },
            {
              "name": "sortOrder",
              "value": "={{ $fromAI('sortOrder', 'Allowed: asc, desc. Ascending for date and time means that earlier values precede later ones. Descending means that later values preced earlier ones. For title, it is 0-9 and A-Z ascending and Z-A, 9-0 descending.', 'string') }}"
            }
          ]
        },
        "toolDescription": "List all live streams\n\nParameters:\n- Query parameters:\n  • streamKey (optional) - The unique stream key that allows you to stream videos.\n  • name (optional) - You can filter live streams by their name or a part of their name.\n  • sortBy (optional) - Allowed: createdAt, publishedAt, name. createdAt - the time a livestream was created using the specified streamKey. publishedAt - the time a livestream was published using the specified streamKey. name - the name of the livestream. If you choose one of the time based options, the time is presented in ISO-8601 format.\n  • sortOrder (optional) - Allowed: asc, desc. Ascending for date and time means that earlier values precede later ones. Descending means that later values preced earlier ones. For title, it is 0-9 and A-Z ascending and Z-A, 9-0 descending."
      },
      "typeVersion": 4.2
    },
    {
      "id": "3b586cc9-a99d-4bca-bd3f-b840e0622dd5",
      "name": "Créer un flux en direct",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1180,
        1420
      ],
      "parameters": {
        "url": "=https://ws.api.video/live-streams",
        "method": "POST",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Create live stream"
      },
      "typeVersion": 4.2
    },
    {
      "id": "e82b3741-2c2c-4b54-a20a-44f91931cc0a",
      "name": "Supprimer un flux en direct",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1380,
        1420
      ],
      "parameters": {
        "url": "=https://ws.api.video/live-streams/{{ $fromAI('liveStreamId', 'The unique ID for the live stream that you want to remove.', 'string') }}",
        "method": "DELETE",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Delete a live stream\n\nParameters:\n- Path parameters:\n  • liveStreamId (required) - The unique ID for the live stream that you want to remove."
      },
      "typeVersion": 4.2
    },
    {
      "id": "aaed63e8-df9f-4c66-9365-d4f8e7fc7a63",
      "name": "Afficher un flux en direct",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1580,
        1420
      ],
      "parameters": {
        "url": "=https://ws.api.video/live-streams/{{ $fromAI('liveStreamId', 'The unique ID for the live stream you want to watch.', 'string') }}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Show live stream\n\nParameters:\n- Path parameters:\n  • liveStreamId (required) - The unique ID for the live stream you want to watch."
      },
      "typeVersion": 4.2
    },
    {
      "id": "9eb9c4eb-6afc-4ded-8e83-0aeb9e1add12",
      "name": "Mettre à jour un flux en direct",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1780,
        1420
      ],
      "parameters": {
        "url": "=https://ws.api.video/live-streams/{{ $fromAI('liveStreamId', 'The unique ID for the live stream that you want to update information for such as player details, or whether you want the recording on or off.', 'string') }}",
        "method": "PATCH",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Update a live stream\n\nParameters:\n- Path parameters:\n  • liveStreamId (required) - The unique ID for the live stream that you want to update information for such as player details, or whether you want the recording on or off."
      },
      "typeVersion": 4.2
    },
    {
      "id": "ac6f50da-22fe-45e9-bd04-376dc0a28a0e",
      "name": "Supprimer une miniature",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1980,
        1420
      ],
      "parameters": {
        "url": "=https://ws.api.video/live-streams/{{ $fromAI('liveStreamId', 'The unique identifier for the live stream you want to delete.', 'string') }}/thumbnail",
        "method": "DELETE",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Delete a thumbnail\n\nParameters:\n- Path parameters:\n  • liveStreamId (required) - The unique identifier for the live stream you want to delete."
      },
      "typeVersion": 4.2
    },
    {
      "id": "654c01fd-c27a-470c-9247-cdb66326b98b",
      "name": "Téléverser une miniature",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        2180,
        1420
      ],
      "parameters": {
        "url": "=https://ws.api.video/live-streams/{{ $fromAI('liveStreamId', 'The unique ID for the live stream you want to upload.', 'string') }}/thumbnail",
        "method": "POST",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Upload a thumbnail\n\nParameters:\n- Path parameters:\n  • liveStreamId (required) - The unique ID for the live stream you want to upload."
      },
      "typeVersion": 4.2
    },
    {
      "id": "c59ead12-66f7-4567-b4e8-6b54c509af99",
      "name": "Note adhésive 5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        840,
        1640
      ],
      "parameters": {
        "color": 6,
        "width": 1500,
        "height": 180,
        "content": "## Players"
      },
      "typeVersion": 1
    },
    {
      "id": "14a005a6-90f0-4faa-871c-7e2e0ed606be",
      "name": "Lister tous les lecteurs",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        980,
        1660
      ],
      "parameters": {
        "url": "=https://ws.api.video/players",
        "options": {},
        "sendQuery": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "sortBy",
              "value": "={{ $fromAI('sortBy', 'createdAt is the time the player was created. updatedAt is the time the player was last updated. The time is presented in ISO-8601 format.', 'string') }}"
            },
            {
              "name": "sortOrder",
              "value": "={{ $fromAI('sortOrder', 'Allowed: asc, desc. Ascending for date and time means that earlier values precede later ones. Descending means that later values preced earlier ones.', 'string') }}"
            }
          ]
        },
        "toolDescription": "List all players\n\nParameters:\n- Query parameters:\n  • sortBy (optional) - createdAt is the time the player was created. updatedAt is the time the player was last updated. The time is presented in ISO-8601 format.\n  • sortOrder (optional) - Allowed: asc, desc. Ascending for date and time means that earlier values precede later ones. Descending means that later values preced earlier ones."
      },
      "typeVersion": 4.2
    },
    {
      "id": "9de8c1d7-5d64-40f0-bef4-7d1478634ec9",
      "name": "Créer un lecteur",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1180,
        1660
      ],
      "parameters": {
        "url": "=https://ws.api.video/players",
        "method": "POST",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Create a player"
      },
      "typeVersion": 4.2
    },
    {
      "id": "a2c59d47-c507-4779-a6f1-f414edeaf953",
      "name": "Supprimer un lecteur",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1380,
        1660
      ],
      "parameters": {
        "url": "=https://ws.api.video/players/{{ $fromAI('playerId', 'The unique identifier for the player you want to delete.', 'string') }}",
        "method": "DELETE",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Delete a player\n\nParameters:\n- Path parameters:\n  • playerId (required) - The unique identifier for the player you want to delete."
      },
      "typeVersion": 4.2
    },
    {
      "id": "2496af35-abaa-4953-938d-926d0f7c64c2",
      "name": "Afficher un lecteur",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1580,
        1660
      ],
      "parameters": {
        "url": "=https://ws.api.video/players/{{ $fromAI('playerId', 'The unique identifier for the player you want to retrieve.', 'string') }}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Show a player\n\nParameters:\n- Path parameters:\n  • playerId (required) - The unique identifier for the player you want to retrieve."
      },
      "typeVersion": 4.2
    },
    {
      "id": "fca38027-5c03-4c95-89e7-56fa5b009d05",
      "name": "Mettre à jour un lecteur",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1780,
        1660
      ],
      "parameters": {
        "url": "=https://ws.api.video/players/{{ $fromAI('playerId', 'The unique identifier for the player.', 'string') }}",
        "method": "PATCH",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Update a player\n\nParameters:\n- Path parameters:\n  • playerId (required) - The unique identifier for the player."
      },
      "typeVersion": 4.2
    },
    {
      "id": "d57b6fc8-a4f2-42b9-b200-e211caaaca05",
      "name": "Supprimer un logo",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1980,
        1660
      ],
      "parameters": {
        "url": "=https://ws.api.video/players/{{ $fromAI('playerId', 'The unique identifier for the player.', 'string') }}/logo",
        "method": "DELETE",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Delete logo\n\nParameters:\n- Path parameters:\n  • playerId (required) - The unique identifier for the player."
      },
      "typeVersion": 4.2
    },
    {
      "id": "9f327d15-f31d-4137-998c-77611f05b20f",
      "name": "Téléverser un logo",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        2180,
        1660
      ],
      "parameters": {
        "url": "=https://ws.api.video/players/{{ $fromAI('playerId', 'The unique identifier for the player.', 'string') }}/logo",
        "method": "POST",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Upload a logo\n\nParameters:\n- Path parameters:\n  • playerId (required) - The unique identifier for the player."
      },
      "typeVersion": 4.2
    },
    {
      "id": "2ac5d803-2444-4ab8-b46e-70130d3e077a",
      "name": "Note adhésive 6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        840,
        1880
      ],
      "parameters": {
        "color": 7,
        "width": 1100,
        "height": 180,
        "content": "## Videos - Delegated Upload"
      },
      "typeVersion": 1
    },
    {
      "id": "f2aa1fcb-c8f1-4176-9fa3-4e931dd72d5c",
      "name": "Téléverser avec un jeton",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        980,
        1900
      ],
      "parameters": {
        "url": "=https://ws.api.video/upload",
        "method": "POST",
        "options": {},
        "sendQuery": true,
        "sendHeaders": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "token",
              "value": "={{ $fromAI('token', 'The unique identifier for the token you want to use to upload a video.', 'string') }}"
            }
          ]
        },
        "toolDescription": "Upload with an upload token\n\nParameters:\n- Query parameters:\n  • token (required) - The unique identifier for the token you want to use to upload a video.\n- Header parameters:\n  • Content-Range (optional) - Content-Range represents the range of bytes that will be returned as a result of the request. Byte ranges are inclusive, meaning that bytes 0-999 represents the first 1000 bytes in a file or object.",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Range",
              "value": "={{ $fromAI('Content-Range', 'Content-Range represents the range of bytes that will be returned as a result of the request. Byte ranges are inclusive, meaning that bytes 0-999 represents the first 1000 bytes in a file or object.', 'string') }}"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "f7dd5bd4-7e5a-4d3a-8d64-7267c6730b19",
      "name": "Lister tous les jetons de téléversement actifs",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1180,
        1900
      ],
      "parameters": {
        "url": "=https://ws.api.video/upload-tokens",
        "options": {},
        "sendQuery": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "sortBy",
              "value": "={{ $fromAI('sortBy', 'Allowed: createdAt, ttl. You can use these to sort by when a token was created, or how much longer the token will be active (ttl - time to live). Date and time is presented in ISO-8601 format.', 'string') }}"
            },
            {
              "name": "sortOrder",
              "value": "={{ $fromAI('sortOrder', 'Allowed: asc, desc. Ascending is 0-9 or A-Z. Descending is 9-0 or Z-A.', 'string') }}"
            }
          ]
        },
        "toolDescription": "List all active upload tokens.\n\nParameters:\n- Query parameters:\n  • sortBy (optional) - Allowed: createdAt, ttl. You can use these to sort by when a token was created, or how much longer the token will be active (ttl - time to live). Date and time is presented in ISO-8601 format.\n  • sortOrder (optional) - Allowed: asc, desc. Ascending is 0-9 or A-Z. Descending is 9-0 or Z-A."
      },
      "typeVersion": 4.2
    },
    {
      "id": "3aa68432-b51f-4fad-96a8-fc8fd90a20c7",
      "name": "Générer un jeton de téléversement",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1380,
        1900
      ],
      "parameters": {
        "url": "=https://ws.api.video/upload-tokens",
        "method": "POST",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Generate an upload token"
      },
      "typeVersion": 4.2
    },
    {
      "id": "4331fce0-3c5e-4e3e-a3c2-799b7f307ade",
      "name": "Supprimer un jeton de téléversement",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1580,
        1900
      ],
      "parameters": {
        "url": "=https://ws.api.video/upload-tokens/{{ $fromAI('uploadToken', 'The unique identifier for the upload token you want to delete. Deleting a token will make it so the token can no longer be used for authentication.', 'string') }}",
        "method": "DELETE",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Delete an upload token\n\nParameters:\n- Path parameters:\n  • uploadToken (required) - The unique identifier for the upload token you want to delete. Deleting a token will make it so the token can no longer be used for authentication."
      },
      "typeVersion": 4.2
    },
    {
      "id": "eb80960b-593d-4fc3-805f-db4223fe258b",
      "name": "Afficher un jeton de téléversement",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1780,
        1900
      ],
      "parameters": {
        "url": "=https://ws.api.video/upload-tokens/{{ $fromAI('uploadToken', 'The unique identifier for the token you want information about.', 'string') }}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Show upload token\n\nParameters:\n- Path parameters:\n  • uploadToken (required) - The unique identifier for the token you want information about."
      },
      "typeVersion": 4.2
    },
    {
      "id": "c40e8f76-7895-42fd-858c-13b30fbd37bd",
      "name": "Note adhésive 7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        840,
        2120
      ],
      "parameters": {
        "color": 2,
        "width": 1900,
        "height": 180,
        "content": "## Videos"
      },
      "typeVersion": 1
    },
    {
      "id": "cff622a4-63c0-4cb5-a9d7-c231d56c6c94",
      "name": "Lister toutes les vidéos",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        980,
        2140
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos",
        "options": {},
        "sendQuery": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "title",
              "value": "={{ $fromAI('title', 'The title of a specific video you want to find. The search will match exactly to what term you provide and return any videos that contain the same term as part of their titles.', 'string') }}"
            },
            {
              "name": "tags",
              "value": "={{ $fromAI('tags', 'A tag is a category you create and apply to videos. You can search for videos with particular tags by listing one or more here. Only videos that have all the tags you list will be returned.', 'json') }}"
            },
            {
              "name": "metadata",
              "value": "={{ $fromAI('metadata', 'Videos can be tagged with metadata tags in key:value pairs. You can search for videos with specific key value pairs using this parameter. [Dynamic Metadata](https://api.video/blog/endpoints/dynamic-metadata) allows you to define a key that allows any value pair.', 'json') }}"
            },
            {
              "name": "description",
              "value": "={{ $fromAI('description', 'If you described a video with a term or sentence, you can add it here to return videos containing this string.', 'string') }}"
            },
            {
              "name": "liveStreamId",
              "value": "={{ $fromAI('liveStreamId', 'If you know the ID for a live stream, you can retrieve the stream by adding the ID for it here.', 'string') }}"
            },
            {
              "name": "sortBy",
              "value": "={{ $fromAI('sortBy', 'Allowed: publishedAt, title. You can search by the time videos were published at, or by title.', 'string') }}"
            },
            {
              "name": "sortOrder",
              "value": "={{ $fromAI('sortOrder', 'Allowed: asc, desc. asc is ascending and sorts from A to Z. desc is descending and sorts from Z to A.', 'string') }}"
            }
          ]
        },
        "toolDescription": "List all videos\n\nParameters:\n- Query parameters:\n  • title (optional) - The title of a specific video you want to find. The search will match exactly to what term you provide and return any videos that contain the same term as part of their titles.\n  • tags (optional) - A tag is a category you create and apply to videos. You can search for videos with particular tags by listing one or more here. Only videos that have all the tags you list will be returned.\n  • metadata (optional) - Videos can be tagged with metadata tags in key:value pairs. You can search for videos with specific key value pairs using this parameter. [Dynamic Metadata](https://api.video/blog/endpoints/dynamic-metadata) allows you to define a key that allows any value pair.\n  • description (optional) - If you described a video with a term or sentence, you can add it here to return videos containing this string.\n  • liveStreamId (optional) - If you know the ID for a live stream, you can retrieve the stream by adding the ID for it here.\n  • sortBy (optional) - Allowed: publishedAt, title. You can search by the time videos were published at, or by title.\n  • sortOrder (optional) - Allowed: asc, desc. asc is ascending and sorts from A to Z. desc is descending and sorts from Z to A."
      },
      "typeVersion": 4.2
    },
    {
      "id": "8e131410-a5b1-498a-89ba-31f8e0097f49",
      "name": "Créer une vidéo",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1180,
        2140
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos",
        "method": "POST",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Create a video"
      },
      "typeVersion": 4.2
    },
    {
      "id": "f33422f5-5cbb-4b8a-b257-ff714957f46b",
      "name": "Supprimer une vidéo",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1380,
        2140
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'The video ID for the video you want to delete.', 'string') }}",
        "method": "DELETE",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Delete a video\n\nParameters:\n- Path parameters:\n  • videoId (required) - The video ID for the video you want to delete."
      },
      "typeVersion": 4.2
    },
    {
      "id": "22a47a18-c09e-480c-86d0-d3d07901c9d5",
      "name": "Afficher une vidéo",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1580,
        2140
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'The unique identifier for the video you want details about.', 'string') }}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Show a video\n\nParameters:\n- Path parameters:\n  • videoId (required) - The unique identifier for the video you want details about."
      },
      "typeVersion": 4.2
    },
    {
      "id": "36e82a82-9f05-4376-b8ae-4d39d222fac9",
      "name": "Mettre à jour une vidéo",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1780,
        2140
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'The video ID for the video you want to delete.', 'string') }}",
        "method": "PATCH",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Update a video\n\nParameters:\n- Path parameters:\n  • videoId (required) - The video ID for the video you want to delete."
      },
      "typeVersion": 4.2
    },
    {
      "id": "98ca9dee-fc46-4819-a582-c115989bd763",
      "name": "Téléverser une vidéo",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1980,
        2140
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'Enter the videoId you want to use to upload your video.', 'string') }}/source",
        "method": "POST",
        "options": {},
        "sendHeaders": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Upload a video\n\nParameters:\n- Path parameters:\n  • videoId (required) - Enter the videoId you want to use to upload your video.\n- Header parameters:\n  • Content-Range (optional) - Content-Range represents the range of bytes that will be returned as a result of the request. Byte ranges are inclusive, meaning that bytes 0-999 represents the first 1000 bytes in a file or object.",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Range",
              "value": "={{ $fromAI('Content-Range', 'Content-Range represents the range of bytes that will be returned as a result of the request. Byte ranges are inclusive, meaning that bytes 0-999 represents the first 1000 bytes in a file or object.', 'string') }}"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "a588ecb4-4b4a-47e7-ba62-a8c31e8c0ebb",
      "name": "Afficher l'état d'une vidéo",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        2180,
        2140
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'The unique identifier for the video you want the status for.', 'string') }}/status",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Show video status\n\nParameters:\n- Path parameters:\n  • videoId (required) - The unique identifier for the video you want the status for."
      },
      "typeVersion": 4.2
    },
    {
      "id": "9e8aaf41-938e-4770-b4d0-cc3d1fe61876",
      "name": "Choisir une miniature",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        2380,
        2140
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'Unique identifier of the video you want to add a thumbnail to, where you use a section of your video as the thumbnail.', 'string') }}/thumbnail",
        "method": "PATCH",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Pick a thumbnail\n\nParameters:\n- Path parameters:\n  • videoId (required) - Unique identifier of the video you want to add a thumbnail to, where you use a section of your video as the thumbnail."
      },
      "typeVersion": 4.2
    },
    {
      "id": "3f8bec29-9098-4d76-bf5a-45c42b820fdf",
      "name": "Téléverser une miniature 1",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        2580,
        2140
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'Unique identifier of the chosen video', 'string') }}/thumbnail",
        "method": "POST",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Upload a thumbnail\n\nParameters:\n- Path parameters:\n  • videoId (required) - Unique identifier of the chosen video"
      },
      "typeVersion": 4.2
    },
    {
      "id": "c04f2dd9-e7f8-4392-9369-912c807c6d92",
      "name": "Note adhésive 8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        840,
        2360
      ],
      "parameters": {
        "color": 3,
        "width": 1100,
        "height": 180,
        "content": "## Captions"
      },
      "typeVersion": 1
    },
    {
      "id": "00a0979f-dfcb-4c99-b4e0-e8ba94f6e01d",
      "name": "Lister les sous-titres vidéo",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        980,
        2380
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'The unique identifier for the video you want to retrieve a list of captions for.', 'string') }}/captions",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "List video captions\n\nParameters:\n- Path parameters:\n  • videoId (required) - The unique identifier for the video you want to retrieve a list of captions for."
      },
      "typeVersion": 4.2
    },
    {
      "id": "5a43c690-a7be-4f53-a7ee-aa5c19f8aab0",
      "name": "Supprimer un sous-titre",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1180,
        2380
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'The unique identifier for the video you want to delete a caption from.', 'string') }}/captions/{{ $fromAI('language', 'A valid [BCP 47](https://github.com/libyal/libfwnt/wiki/Language-Code-identifiers) language representation.', 'string') }}",
        "method": "DELETE",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Delete a caption\n\nParameters:\n- Path parameters:\n  • videoId (required) - The unique identifier for the video you want to delete a caption from.\n  • language (required) - A valid [BCP 47](https://github.com/libyal/libfwnt/wiki/Language-Code-identifiers) language representation."
      },
      "typeVersion": 4.2
    },
    {
      "id": "f9acf10b-7a9d-460e-8f16-5bf4f58630f3",
      "name": "Afficher un sous-titre",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1380,
        2380
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'The unique identifier for the video you want captions for.', 'string') }}/captions/{{ $fromAI('language', 'A valid [BCP 47](https://github.com/libyal/libfwnt/wiki/Language-Code-identifiers) language representation', 'string') }}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Show a caption\n\nParameters:\n- Path parameters:\n  • videoId (required) - The unique identifier for the video you want captions for.\n  • language (required) - A valid [BCP 47](https://github.com/libyal/libfwnt/wiki/Language-Code-identifiers) language representation"
      },
      "typeVersion": 4.2
    },
    {
      "id": "2c588fb7-f841-4565-a278-56a29cfa12da",
      "name": "Mettre à jour un sous-titre",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1580,
        2380
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'The unique identifier for the video you want to have automatic captions for.', 'string') }}/captions/{{ $fromAI('language', 'A valid [BCP 47](https://github.com/libyal/libfwnt/wiki/Language-Code-identifiers) language representation.', 'string') }}",
        "method": "PATCH",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Update caption\n\nParameters:\n- Path parameters:\n  • videoId (required) - The unique identifier for the video you want to have automatic captions for.\n  • language (required) - A valid [BCP 47](https://github.com/libyal/libfwnt/wiki/Language-Code-identifiers) language representation."
      },
      "typeVersion": 4.2
    },
    {
      "id": "10850591-0918-4db4-94e1-cb536bba7fa5",
      "name": "Téléverser un sous-titre",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1780,
        2380
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'The unique identifier for the video you want to add a caption to.', 'string') }}/captions/{{ $fromAI('language', 'A valid BCP 47 language representation.', 'string') }}",
        "method": "POST",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Upload a caption\n\nParameters:\n- Path parameters:\n  • videoId (required) - The unique identifier for the video you want to add a caption to.\n  • language (required) - A valid BCP 47 language representation."
      },
      "typeVersion": 4.2
    },
    {
      "id": "a5e5c96e-429b-4f87-b8c0-32623b1a9a63",
      "name": "Note adhésive 9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        840,
        2600
      ],
      "parameters": {
        "color": 4,
        "width": 900,
        "height": 180,
        "content": "## Chapters"
      },
      "typeVersion": 1
    },
    {
      "id": "66a29157-52e6-4209-bfc9-b0edde44e9a4",
      "name": "Lister les chapitres vidéo",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        980,
        2620
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'The unique identifier for the video you want to retrieve a list of chapters for.', 'string') }}/chapters",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "List video chapters\n\nParameters:\n- Path parameters:\n  • videoId (required) - The unique identifier for the video you want to retrieve a list of chapters for."
      },
      "typeVersion": 4.2
    },
    {
      "id": "6f3a66a0-cdff-4d1d-87fd-119c957037cb",
      "name": "Supprimer un chapitre",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1180,
        2620
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'The unique identifier for the video you want to delete a chapter from.', 'string') }}/chapters/{{ $fromAI('language', 'A valid [BCP 47](https://github.com/libyal/libfwnt/wiki/Language-Code-identifiers) language representation.', 'string') }}",
        "method": "DELETE",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Delete a chapter\n\nParameters:\n- Path parameters:\n  • videoId (required) - The unique identifier for the video you want to delete a chapter from.\n  • language (required) - A valid [BCP 47](https://github.com/libyal/libfwnt/wiki/Language-Code-identifiers) language representation."
      },
      "typeVersion": 4.2
    },
    {
      "id": "2ac4a8e2-ccee-49e8-9fc3-d35c29791a3d",
      "name": "Afficher un chapitre",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1380,
        2620
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'The unique identifier for the video you want to show a chapter for.', 'string') }}/chapters/{{ $fromAI('language', 'A valid [BCP 47](https://github.com/libyal/libfwnt/wiki/Language-Code-identifiers) language representation.', 'string') }}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Show a chapter\n\nParameters:\n- Path parameters:\n  • videoId (required) - The unique identifier for the video you want to show a chapter for.\n  • language (required) - A valid [BCP 47](https://github.com/libyal/libfwnt/wiki/Language-Code-identifiers) language representation."
      },
      "typeVersion": 4.2
    },
    {
      "id": "663272f3-3a1d-4fb5-a13f-daf21cf750a6",
      "name": "Téléverser un chapitre",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1580,
        2620
      ],
      "parameters": {
        "url": "=https://ws.api.video/videos/{{ $fromAI('videoId', 'The unique identifier for the video you want to upload a chapter for.', 'string') }}/chapters/{{ $fromAI('language', 'A valid [BCP 47](https://github.com/libyal/libfwnt/wiki/Language-Code-identifiers) language representation.', 'string') }}",
        "method": "POST",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Upload a chapter\n\nParameters:\n- Path parameters:\n  • videoId (required) - The unique identifier for the video you want to upload a chapter for.\n  • language (required) - A valid [BCP 47](https://github.com/libyal/libfwnt/wiki/Language-Code-identifiers) language representation."
      },
      "typeVersion": 4.2
    },
    {
      "id": "9e0ba763-22dd-408e-bcf6-04a1ae98d4c9",
      "name": "Note adhésive 10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        840,
        2840
      ],
      "parameters": {
        "color": 5,
        "width": 900,
        "height": 180,
        "content": "## Web Hooks"
      },
      "typeVersion": 1
    },
    {
      "id": "83f15bf4-17d8-4427-964c-04f7a593054c",
      "name": "Lister tous les webhooks",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        980,
        2860
      ],
      "parameters": {
        "url": "=https://ws.api.video/webhooks",
        "options": {},
        "sendQuery": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "events",
              "value": "={{ $fromAI('events', 'The webhook event that you wish to filter on.', 'string') }}"
            }
          ]
        },
        "toolDescription": "List all webhooks\n\nParameters:\n- Query parameters:\n  • events (optional) - The webhook event that you wish to filter on."
      },
      "typeVersion": 4.2
    },
    {
      "id": "9192248a-f94e-481b-a499-f73c89ebe47d",
      "name": "Créer Webhook",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1180,
        2860
      ],
      "parameters": {
        "url": "=https://ws.api.video/webhooks",
        "method": "POST",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Create Webhook"
      },
      "typeVersion": 4.2
    },
    {
      "id": "2d69ae10-82a5-48a2-a622-220a58c9ca22",
      "name": "Supprimer un Webhook",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1380,
        2860
      ],
      "parameters": {
        "url": "=https://ws.api.video/webhooks/{{ $fromAI('webhookId', 'The webhook you wish to delete.', 'string') }}",
        "method": "DELETE",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Delete a Webhook\n\nParameters:\n- Path parameters:\n  • webhookId (required) - The webhook you wish to delete."
      },
      "typeVersion": 4.2
    },
    {
      "id": "bc32ab85-f0f0-492a-b1d3-e12b3c441cad",
      "name": "Afficher les détails de Webhook",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1580,
        2860
      ],
      "parameters": {
        "url": "=https://ws.api.video/webhooks/{{ $fromAI('webhookId', 'The unique webhook you wish to retreive details on.', 'string') }}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Show Webhook details\n\nParameters:\n- Path parameters:\n  • webhookId (required) - The unique webhook you wish to retreive details on."
      },
      "typeVersion": 4.2
    }
  ],
  "pinData": {},
  "connections": {
    "d57b6fc8-a4f2-42b9-b200-e211caaaca05": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "fb02748d-bb89-48e3-b6d1-5e485a0ae1fd": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "22a47a18-c09e-480c-86d0-d3d07901c9d5": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "cd5cdc9c-8518-4fc5-ac7e-a7c913095839": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "c66a1323-e700-4e76-b86c-79c3d6b756a7": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "2496af35-abaa-4953-938d-926d0f7c64c2": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "9f327d15-f31d-4137-998c-77611f05b20f": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "9192248a-f94e-481b-a499-f73c89ebe47d": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "8e131410-a5b1-498a-89ba-31f8e0097f49": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "f33422f5-5cbb-4b8a-b257-ff714957f46b": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "f9acf10b-7a9d-460e-8f16-5bf4f58630f3": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "2ac4a8e2-ccee-49e8-9fc3-d35c29791a3d": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "36e82a82-9f05-4376-b8ae-4d39d222fac9": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "2c588fb7-f841-4565-a278-56a29cfa12da": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "98ca9dee-fc46-4819-a582-c115989bd763": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "9de8c1d7-5d64-40f0-bef4-7d1478634ec9": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "a2c59d47-c507-4779-a6f1-f414edeaf953": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "cff622a4-63c0-4cb5-a9d7-c231d56c6c94": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "fca38027-5c03-4c95-89e7-56fa5b009d05": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "2d69ae10-82a5-48a2-a622-220a58c9ca22": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "5a43c690-a7be-4f53-a7ee-aa5c19f8aab0": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "6f3a66a0-cdff-4d1d-87fd-119c957037cb": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "14a005a6-90f0-4faa-871c-7e2e0ed606be": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "9e8aaf41-938e-4770-b4d0-cc3d1fe61876": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "aaed63e8-df9f-4c66-9365-d4f8e7fc7a63": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "10850591-0918-4db4-94e1-cb536bba7fa5": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "663272f3-3a1d-4fb5-a13f-daf21cf750a6": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "83f15bf4-17d8-4427-964c-04f7a593054c": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "eb80960b-593d-4fc3-805f-db4223fe258b": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "a588ecb4-4b4a-47e7-ba62-a8c31e8c0ebb": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "3b586cc9-a99d-4bca-bd3f-b840e0622dd5": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "ac6f50da-22fe-45e9-bd04-376dc0a28a0e": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "654c01fd-c27a-470c-9247-cdb66326b98b": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "00a0979f-dfcb-4c99-b4e0-e8ba94f6e01d": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "66a29157-52e6-4209-bfc9-b0edde44e9a4": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "e82b3741-2c2c-4b54-a20a-44f91931cc0a": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "bc32ab85-f0f0-492a-b1d3-e12b3c441cad": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "9eb9c4eb-6afc-4ded-8e83-0aeb9e1add12": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "3f8bec29-9098-4d76-bf5a-45c42b820fdf": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "42759c89-4400-45a8-bd0c-4964358c2b8b": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "4331fce0-3c5e-4e3e-a3c2-799b7f307ade": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "3aa68432-b51f-4fad-96a8-fc8fd90a20c7": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "6d8211b0-6269-4afc-978e-ee3786e744be": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "7cc757be-861c-41fe-bbb3-14c9a7d8ee9b": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "f2aa1fcb-c8f1-4176-9fa3-4e931dd72d5c": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "f7dd5bd4-7e5a-4d3a-8d64-7267c6730b19": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "5dd47e38-2488-4d62-8045-d51dfa338d4d": {
      "ai_tool": [
        [
          {
            "node": "3ffca702-4a98-4b9c-822c-bdfe6c7ce662",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    }
  }
}
Foire aux questions

Comment utiliser ce workflow ?

Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.

Dans quelles scénarios ce workflow est-il adapté ?

Avancé - Création de contenu, RAG IA

Est-ce payant ?

Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.

Informations sur le workflow
Niveau de difficulté
Avancé
Nombre de nœuds61
Catégorie2
Types de nœuds3
Description de la difficulté

Adapté aux utilisateurs avancés, avec des workflows complexes contenant 16+ nœuds

Auteur
David Ashby

David Ashby

@cfomodz

A hacker by nature, programmer by trade ⚒️ I'm looking to collaborate on things that save human labor 📫 How to reach me Github👇 -> Discord

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34