---
name: hootsuite-common-errors-9ea6295ca5c5
description: 'Diagnose and fix Hootsuite common errors and exceptions.

  Use when encountering Hootsuite errors, debugging failed requests,

  or troubleshooting integration issues.

  Trigger with phrases like "hootsuite error", "fix hootsuite",

  "hootsuite not working", "debug hootsuite".

  '
allowed-tools: Read, Grep, Bash(curl:*)
version: 1.6.0
license: MIT
author: Jeremy Longshore <jeremy@intentsolutions.io>
tags:
- saas
- hootsuite
- social-media
compatibility: Designed for Claude Code
---
# Hootsuite Common Errors

## Error Reference

### 401 Unauthorized

**Cause:** Access token expired (tokens last ~1 hour).
**Fix:** Refresh token via OAuth:

```bash
curl -X POST https://platform.hootsuite.com/oauth2/token \
  -u "$HOOTSUITE_CLIENT_ID:$HOOTSUITE_CLIENT_SECRET" \
  -d "grant_type=refresh_token&refresh_token=$HOOTSUITE_REFRESH_TOKEN"
```

### 403 Forbidden

**Cause:** App lacks required permissions or user doesn't own the resource.
**Fix:** Check app scopes in developer portal. Ensure user has access to the social profile.

### 422 Unprocessable Entity — scheduledSendTime

**Cause:** Scheduled time is in the past or invalid ISO 8601 format.
**Fix:** Always use future dates in ISO 8601: `new Date(Date.now() + 3600000).toISOString()`

### 422 — socialProfileIds

**Cause:** Profile ID invalid or disconnected.
**Fix:** List profiles first: `GET /v1/socialProfiles` and verify IDs.

### 429 Too Many Requests

**Cause:** Rate limit exceeded.
**Fix:** Implement exponential backoff. See `hootsuite-rate-limits`.

### Media Upload — State REJECTED

**Cause:** File too large, wrong format, or exceeds platform limits.
**Fix:** Check per-platform limits: Twitter images 5MB, Facebook 10MB, video varies.

### invalid_grant — Token Exchange

**Cause:** Authorization code expired (30 second lifetime) or already used.
**Fix:** Re-initiate OAuth flow — codes are single-use and expire in 30s.

### redirect_uri_mismatch

**Cause:** Redirect URI doesn't exactly match app registration.
**Fix:** Must match character-for-character, including trailing slash.

## Quick Diagnostics

```bash
# Test token validity
curl -s -o /dev/null -w "%{http_code}" \
  -H "Authorization: Bearer $HOOTSUITE_ACCESS_TOKEN" \
  https://platform.hootsuite.com/v1/me

# List profiles (verifies full API access)
curl -s -H "Authorization: Bearer $HOOTSUITE_ACCESS_TOKEN" \
  https://platform.hootsuite.com/v1/socialProfiles | python3 -m json.tool
```

## Overview

This reference triages profile, schedule, approval, audience, and quota failures through redacted status and opaque IDs. It does not authorize copying post content, media, handles, or account metadata into a ticket.

## Prerequisites

- A draft-only sandbox probe, redacted correlation ID, endpoint class, and HTTP or terminal schedule status.
- A scoped read-only diagnostic credential and named owner for account, audience, or approval changes.

## Instructions

1. Classify authentication, authorization, profile lookup, approval, audience, validation, quota, and schedule errors before changes.
2. Reproduce once with the draft-only fixture, capturing only status, latency, quota, and opaque IDs.
3. Check scope, approval, audience, schedule state, and quota in that order.
4. Apply one reversible change at a time and escalate a redacted bundle when the failure persists.

## Output

Return error class, correlation ID, profile scope, probe outcome, remediation attempted, and next owner. Do not include copy, media, handles, tokens, or identities.

## Error Handling

Treat unknown profile/audience, missing approval, failed redaction, public-post path, or repeated non-idempotent schedule as a stop condition. Cancel/revert rather than retrying with broader scope.

## Examples

`status=429; profile=sandbox-brand; correlation=schedule-opaque-11; action=bounded-backoff; public_posts=0; safe_probe=recovered` supports a safe handoff.

## Resources

- [Hootsuite API FAQ](https://developer.hootsuite.com/docs/rest-api-faq)
- [REST API Reference](https://apidocs.hootsuite.com/docs/api/index.html)

## Next Steps

For debugging tools, see `hootsuite-debug-bundle`.


---
Source attribution: jeremylongshore
Original project: https://github.com/jeremylongshore/claude-code-plugins-plus-skills/blob/ab85a061f7bcc039dac13ee193de7a4cd4388571/plugins/saas-packs/hootsuite-pack/skills/hootsuite-common-errors/SKILL.md
License: MIT
License information: https://opensource.org/license/mit
Original upstream instructions; downloaded from Dave AI.

## Upstream license notice

MIT License

Copyright (c) 2025 Jeremy Longshore

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.



# Dave AI resource metadata

Creator / publisher: jeremylongshore
Original project: https://github.com/jeremylongshore/claude-code-plugins-plus-skills/blob/ab85a061f7bcc039dac13ee193de7a4cd4388571/plugins/saas-packs/hootsuite-pack/skills/hootsuite-common-errors/SKILL.md
Attribution basis: Source repository record

Fields of work: Marketing, Sales
Roles: Customer Success Manager, Marketing Analyst, Social Media Manager
Specialties: API, Backend, Design, Frontend, Remotion, Testing
Tools: Hootsuite
Country applicability: Country not specified
Classification basis: Source catalog labels
Instruction SHA-256: bb62b4be23a18bc2ad7ecea31a7ae320f2adf55f2ccf8f79aaa5c91ad6474e87
