πŸš€ More Vendrato tools: FunnelDupe β€’ GHL Utils
πŸ“±

Reddit - Get Subreddit Info

n8n-nodes-base.httpRequest

Get detailed information about any subreddit including subscriber count, description, rules, and settings. No authentication required.

reddit social-media subreddit analytics json-api
App Reddit
Category data processing
Version 1.0.0
Author Community

πŸ’‘ Use Cases

πŸ“š API Documentation

Reference documentation for this API endpoint:

πŸ”— https://www.reddit.com/dev/api/ β†—

πŸ“‹ Node Configuration

{
  "nodes": [
    {
      "parameters": {
        "content": "## πŸ“± GET Subreddit Information\n\nFetches detailed information about any subreddit.\n\n**Required Parameters:**\n- `subreddit`: Name of the subreddit (without r/ prefix)\n\n**No Authentication Needed:**\nUses Reddit's public JSON API.\n\n**Output:**\nReturns subreddit details including:\n- Subscriber count and active users\n- Description and public description\n- Creation date\n- NSFW status\n- Subreddit type (public/private/restricted)",
        "height": 238,
        "width": 389,
        "color": 4
      },
      "id": "sticky-reddit-subinfo-001",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        96,
        332
      ]
    },
    {
      "parameters": {
        "method": "GET",
        "url": "=https://www.reddit.com/r/{{ $json.subreddit }}/about.json",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "User-Agent",
              "value": "n8n-workflow-automation/1.0"
            }
          ]
        },
        "options": {
          "response": {
            "response": {
              "responseFormat": "json",
              "fullResponse": false
            }
          }
        }
      },
      "id": "reddit-subinfo-001",
      "name": "Get Subreddit Info",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.1,
      "position": [
        368,
        400
      ]
    },
    {
      "parameters": {
        "mode": "runOnceForEachItem",
        "jsCode": "// Extract and format subreddit information\nconst data = $input.item.json.data;\n\nconst formatted = {\n  name: data.display_name,\n  title: data.title,\n  description: data.public_description || data.description || '',\n  subscribers: data.subscribers,\n  activeUsers: data.accounts_active || 0,\n  created: new Date(data.created_utc * 1000).toISOString(),\n  url: `https://reddit.com${data.url}`,\n  isNSFW: data.over18,\n  subredditType: data.subreddit_type,\n  language: data.lang || 'en',\n  icon: data.icon_img || data.community_icon || '',\n  banner: data.banner_background_image || '',\n  primaryColor: data.primary_color || '',\n  allowImages: data.allow_images,\n  allowVideos: data.allow_videos\n};\n\nreturn [{ json: formatted }];"
      },
      "id": "reddit-subinfo-transform-001",
      "name": "Transform Subreddit Data",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        550,
        400
      ]
    }
  ],
  "connections": {
    "Get Subreddit Info": {
      "main": [
        [
          {
            "node": "Transform Subreddit Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "pinData": {}
}
[
  {
    "id": "b8463c7d-900d-46cd-ae7b-e578f6d2ae0a",
    "meta": {
      "name": "API Call Node",
      "id": "api-call",
      "icon": {
        "svg": "",
        "type": "SVG"
      },
      "description": "## πŸ“± GET Subreddit Information  Fetches detailed information about any subreddit."
    },
    "label": "Get Subreddit Info",
    "dependencies": {
      "node-fetch": "3.3.2"
    },
    "script": "import fetch from \"node-fetch\";\nexport default async function apiCall({\n    url,\n    method,\n    contentType,\n    authorization,\n    body,\n    shouldAwait,\n    queryParams,\n    customHeaders\n}: NodeInputs, {\n    logging\n}: NodeScriptOptions) : NodeOutput  {\n    const headers = {\n        \"Content-Type\": contentType,\n        ...customHeaders\n    };\n    if (authorization) headers[\"Authorization\"] = authorization;\n\n    let queryParamsString = '';\n    if (queryParams) {\n        queryParamsString = '?' + new URLSearchParams(queryParams).toString();\n    }\n\n    const fetchOptions = {\n        method,\n        headers\n    };\n\n    if (method !== 'GET') {\n        fetchOptions.body = JSON.stringify(body);\n    }\n\n    const fetchPromise = fetch(url + queryParamsString, fetchOptions);\n\n    if (!shouldAwait) {\n        return {\n            data: null\n        };\n    }\n\n    const response = await fetchPromise;\n    const data = await response.json();\n    return {\n        status: response.status,\n        data\n    };\n}",
    "inputs": {
      "properties": {
        "method": {
          "type": "string",
          "description": "The HTTP method to use for the API call",
          "enum": [
            "GET",
            "POST",
            "PUT",
            "DELETE",
            "PATCH"
          ],
          "default": "GET",
          "title": "HTTP Method",
          "buildship": {
            "options": [
              {
                "label": "GET",
                "value": "GET"
              },
              {
                "value": "POST",
                "label": "POST"
              },
              {
                "value": "PUT",
                "label": "PUT"
              },
              {
                "label": "DELETE",
                "value": "DELETE"
              },
              {
                "label": "PATCH",
                "value": "PATCH"
              }
            ],
            "index": 0,
            "sensitive": false
          }
        },
        "url": {
          "description": "The URL of the API endpoint",
          "title": "URL",
          "type": "string",
          "buildship": {
            "index": 1
          }
        },
        "authorization": {
          "description": "The authorization header for the API call, if required (e.g., Bearer or Basic token)",
          "type": "string",
          "title": "Authorization",
          "buildship": {
            "sensitive": true,
            "index": 2
          }
        },
        "queryParams": {
          "default": {},
          "description": "The query parameters for the API call",
          "type": "object",
          "title": "Query Parameters",
          "buildship": {
            "index": 3,
            "sensitive": false
          }
        },
        "body": {
          "type": "object",
          "buildship": {
            "index": 4
          },
          "description": "The body to send with the API call",
          "title": "Body"
        },
        "contentType": {
          "enum": [
            "application/json",
            "application/x-www-form-urlencoded",
            "multipart/form-data",
            "text/plain"
          ],
          "description": "The content type of the API call",
          "title": "Content Type",
          "buildship": {
            "index": 5,
            "options": [
              {
                "label": "application/json",
                "value": "application/json"
              },
              {
                "value": "application/x-www-form-urlencoded",
                "label": "application/x-www-form-urlencoded"
              },
              {
                "label": "multipart/form-data",
                "value": "multipart/form-data"
              },
              {
                "label": "text/plain",
                "value": "text/plain"
              }
            ]
          },
          "type": "string"
        },
        "shouldAwait": {
          "description": "Whether to wait for the request to complete or not",
          "title": "Await?",
          "type": "boolean",
          "buildship": {
            "sensitive": false,
            "index": 6
          }
        },
        "customHeaders": {
          "type": "object",
          "description": "Additional custom headers for the API call",
          "title": "Custom Headers",
          "buildship": {
            "index": 7,
            "sensitive": false
          }
        }
      },
      "type": "object",
      "required": [
        "url",
        "shouldAwait",
        "method"
      ]
    },
    "integrations": [],
    "name": "API Call Node",
    "output": {
      "buildship": {},
      "properties": {
        "status": {
          "buildship": {
            "index": 0
          },
          "type": "number",
          "description": "The HTTP status of the API response",
          "title": "Status"
        },
        "data": {
          "buildship": {
            "index": 1
          },
          "title": "Data",
          "type": "object",
          "description": "The data object from the API response"
        }
      },
      "type": "object"
    },
    "isCollapsed": false,
    "type": "script",
    "values": {
      "method": "GET",
      "url": {
        "_$expression_": "`https://www.reddit.com/r/${ctx?.[\"root\"]?.[\"inputs\"]?.[\"body\"].subreddit}/about.json`",
        "type": "javascript",
        "hasErrors": false
      },
      "authorization": null,
      "queryParams": {},
      "body": {},
      "contentType": "application/json",
      "shouldAwait": true,
      "customHeaders": {
        "User-Agent": "n8n-workflow-automation/1.0"
      }
    }
  }
]
{
  "subflows": [
    {
      "flow": [
        {
          "id": 890,
          "module": "http:ActionSendDataBasicAuth",
          "version": 3,
          "parameters": {
            "key": "ANONYMIZED_CREDENTIALS",
            "handleErrors": false,
            "useNewZLibDeCompress": true
          },
          "mapper": {
            "ca": "",
            "qs": [],
            "url": "https://www.reddit.com/r/{{1.subreddit}}/about.json",
            "data": "",
            "gzip": true,
            "method": "get",
            "headers": [
              {
                "name": "User-Agent",
                "value": "n8n-workflow-automation/1.0"
              }
            ],
            "timeout": "",
            "useMtls": false,
            "bodyType": "raw",
            "contentType": "application/json",
            "serializeUrl": false,
            "shareCookies": false,
            "parseResponse": true,
            "followRedirect": true,
            "useQuerystring": false,
            "followAllRedirects": false,
            "rejectUnauthorized": true
          },
          "metadata": {
            "designer": {
              "x": 300,
              "y": 300,
              "name": "GET Subreddit Information"
            },
            "restore": {
              "expect": {
                "qs": {
                  "mode": "chose",
                  "items": []
                },
                "method": {
                  "mode": "chose",
                  "label": "GET"
                },
                "headers": {
                  "mode": "chose",
                  "items": [
                    null
                  ]
                },
                "bodyType": {
                  "label": "Raw"
                },
                "contentType": {
                  "label": "JSON (application/json)"
                }
              },
              "parameters": {
                "key": {
                  "label": "ANONYMIZED_CREDENTIALS"
                }
              }
            },
            "parameters": [
              {
                "name": "key",
                "type": "keychain:basicauth",
                "label": "Credentials",
                "required": true
              },
              {
                "name": "handleErrors",
                "type": "boolean",
                "label": "Evaluate all states as errors (except for 2xx and 3xx )",
                "required": true
              },
              {
                "name": "useNewZLibDeCompress",
                "type": "hidden"
              }
            ],
            "expect": [
              {
                "name": "url",
                "type": "url",
                "label": "URL",
                "required": true
              },
              {
                "name": "serializeUrl",
                "type": "boolean",
                "label": "Serialize URL",
                "required": true
              },
              {
                "name": "method",
                "type": "select",
                "label": "Method",
                "required": true,
                "validate": {
                  "enum": [
                    "get",
                    "head",
                    "post",
                    "put",
                    "patch",
                    "delete",
                    "options"
                  ]
                }
              },
              {
                "name": "headers",
                "spec": [
                  {
                    "name": "name",
                    "type": "text",
                    "label": "Name",
                    "required": true
                  },
                  {
                    "name": "value",
                    "type": "text",
                    "label": "Value"
                  }
                ],
                "type": "array",
                "label": "Headers"
              },
              {
                "name": "qs",
                "spec": [
                  {
                    "name": "name",
                    "type": "text",
                    "label": "Name",
                    "required": true
                  },
                  {
                    "name": "value",
                    "type": "text",
                    "label": "Value"
                  }
                ],
                "type": "array",
                "label": "Query String"
              },
              {
                "name": "bodyType",
                "type": "select",
                "label": "Body type",
                "validate": {
                  "enum": [
                    "raw",
                    "x_www_form_urlencoded",
                    "multipart_form_data"
                  ]
                }
              },
              {
                "name": "parseResponse",
                "type": "boolean",
                "label": "Parse response",
                "required": true
              },
              {
                "name": "contentType",
                "type": "select",
                "label": "Content type",
                "validate": {
                  "enum": [
                    "text/plain",
                    "application/json",
                    "application/xml",
                    "text/xml",
                    "text/html",
                    "custom"
                  ]
                }
              },
              {
                "name": "data",
                "type": "buffer",
                "label": "Request content"
              }
            ]
          }
        }
      ]
    }
  ],
  "metadata": {
    "version": 1
  }
}
← Browse all nodes