Is Reddit giving you a headache?

    You were probably searching for a fix for that obscure Reddit error.But maybe you found something better.

    Stop debugging. Start coordinating.

    Qordinate acts as your intelligent layer between apps like Reddit and your life. We handle the messy API connections and coordination so you can focus on what actually matters.

    Reddit Integration Terminal Errors

    Authentication Errors

    401 Unauthorized

    HTTP 401 Unauthorized
    {
      "error": "401",
      "message": "Unauthorized"
    }
    

    invalid_grant

    HTTP 400 Bad Request
    {
      "error": "invalid_grant",
      "error_description": "Invalid refresh token"
    }
    

    unsupported_grant_type

    HTTP 400 Bad Request
    {
      "error": "unsupported_grant_type",
      "error_description": "grant type not supported"
    }
    

    API Errors

    403 Forbidden

    HTTP 403 Forbidden
    {
      "error": 403,
      "message": "Forbidden",
      "reason": "private subreddit"
    }
    

    404 Not Found

    HTTP 404 Not Found
    {
      "error": 404,
      "message": "Not Found",
      "reason": "subreddit not found"
    }
    

    429 Too Many Requests

    HTTP 429 Too Many Requests
    {
      "error": 429,
      "message": "Too Many Requests",
      "reason": "rate limit exceeded"
    }
    X-Ratelimit-Used: 600
    X-Ratelimit-Remaining: 0
    X-Ratelimit-Reset: 1640995200
    

    SDK-Specific Errors

    Python SDK: prawcore.exceptions.OAuthException

    Traceback (most recent call last):
      File "reddit_script.py", line 10, in <module>
        reddit = praw.Reddit(client_id='invalid', client_secret='invalid', user_agent='test')
      File "/usr/local/lib/python3.9/site-packages/praw/reddit.py", line 201, in __init__
        reddit._prepare_prawcore()
      File "/usr/local/lib/python3.9/site-packages/praw/reddit.py", line 247, in _prepare_prawcore
        raise OAuthException('invalid_grant', 'Bad Request')
    prawcore.exceptions.OAuthException: invalid_grant: Bad Request
    

    Python SDK: prawcore.exceptions.ResponseException

    Traceback (most recent call last):
      File "reddit_script.py", line 15, in <module>
        subreddit = reddit.subreddit('nonexistent_subreddit_12345')
      File "/usr/local/lib/python3.9/site-packages/praw/models/subreddit.py", line 123, in __init__
        self._fetch()
      File "/usr/local/lib/python3.9/site-packages/praw/models/redditbase.py", line 645, in _fetch
        raise ResponseException(response)
    prawcore.exceptions.ResponseException: received 404 HTTP response
    

    Node.js SDK: SnoowrapError

    SnoowrapError: invalid_grant: Bad Request
        at Snoowrap._get (/node_modules/snoowrap/dist/snoowrap.js:234:19)
        at processTicksAndRejections (internal/process/task_queues.js:95:5)
        at async Snoowrap.getAccessToken (/node_modules/snoowrap/dist/snoowrap.js:345:12)
        at async main (/app/index.js:23:18)
    {
      name: 'StatusCodeError',
      statusCode: 400,
      error: {
        error: 'invalid_grant',
        error_description: 'Bad Request'
      }
    }
    

    Reddit-Specific Errors

    USER_DOESNT_EXIST

    HTTP 400 Bad Request
    {
      "error": 400,
      "message": "Bad Request",
      "reason": "USER_DOESNT_EXIST"
    }
    

    SUBREDDIT_DOESNT_EXIST

    HTTP 400 Bad Request
    {
      "error": 400,
      "message": "Bad Request",
      "reason": "SUBREDDIT_DOESNT_EXIST"
    }
    

    QUOTA_FILLED

    HTTP 400 Bad Request
    {
      "error": 400,
      "message": "Bad Request",
      "reason": "QUOTA_FILLED"
    }
    

    Validation Errors

    TOO_LONG

    HTTP 400 Bad Request
    {
      "error": 400,
      "message": "Bad Request",
      "reason": "TOO_LONG",
      "explanation": "we only support links up to 2048 characters long"
    }
    

    INVALID_OPTION

    HTTP 400 Bad Request
    {
      "error": 400,
      "message": "Bad Request",
      "reason": "INVALID_OPTION",
      "explanation": "that option is not valid"
    }
    

    Rate Limiting

    RATELIMIT

    HTTP 429 Too Many Requests
    {
      "error": 429,
      "message": "Too Many Requests",
      "reason": "RATELIMIT"
    }
    X-Ratelimit-Used: 600
    X-Ratelimit-Remaining: 0
    X-Ratelimit-Reset: 1640995200
    

    Connection Errors

    Connection timeout

    Error: connect ETIMEDOUT 151.101.193.140:443
        at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1146:16)
    

    SSL Error

    Error: certificate has expired
        at TLSSocket.onConnectSecure (_tls_wrap.js:1504:34)
        at TLSSocket.emit (events.js:314:20)
        at TLSSocket._finishInit (_tls_wrap.js:945:8)
        at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:719:12)