I am building a workflow to automate hyperlink updates in a GitLab repository.
Google Sheets Trigger → Fetch content from GitLab → Replace string → Create Merge Request
My HTTP Request node (Fetch File from GitLab) stays “Executing” infinitely. It never returns an error, but it never completes.
Setup
-
Predefined Credential (GitLab API) using a Personal Access Token.
-
URL:
https://gitlab.example-company.com/api/v4/projects/\[PROJECT_ID\]/repository/files/{{ encodeURIComponent($('Trigger Node').item.json.PathColumn.replace('root-folder/', '')) }}/raw?ref=master. -
Method: GET
-
Response Format: JSON
Here’s what I’ve tried:
-
Manually visiting the resolved URL in a browser (or curling) with the same token, returns a clean JSON array immediately: [“https://link1.com”, “https://link2.com”].
-
The URI logged in the n8n console is correct and matches my manual test: …/repository/files/jx008%2Fcs-official%2Furl.json/raw?ref=master.
-
200 OK and 304 statuses for background tasks like limits and executions, but the proxy call for the actual GitLab request doesn’t seem to resolve in the UI.
-
I have let the node run for several minutes without a timeout error.
-
Applied
encodeURIComponentto the file path to handle slashes. -
Toggled between
FileandJSONresponse formats. -
Unpinned the trigger node to ensure fresh execution data.
-
Removed manual
PRIVATE-TOKENheaders to avoid conflicts with Predefined Credentials


