Recycling Posts

Automatically re-share a post on a regular cadence. Recycling is ideal for evergreen content, reminders, and promotional campaigns.

Endpoint

POST /api/v1/posts/schedule

Request Headers

Header
Required
Description

Authorization

Yes

Bearer-API YOUR_API_KEY

Publer-Workspace-Id

Yes

Your workspace identifier

Content-Type

Yes

application/json

Accept

No

application/json (default)

Request Body

Include a recycling object in your payload:

{
  "bulk": {
    "state": "scheduled",
    "posts": [
      {
        "networks": {
          "facebook": {
            "type": "status",
            "text": "This content will be recycled multiple times."
          }
        },
        "accounts": [
          { "id": "66f509f7db2797026a37ba76" }
        ],
        "recycling": {
          "solo": true,
          "gap": 2,
          "gap_freq": "Week",
          "start_date": "2025-06-01",
          "expire_count": 3
        }
      }
    ]
  }
}

Recycling Parameters

Field
Type
Description

solo

boolean

true to recycle this post individually (not grouped)

gap

number

Interval between reposts (e.g., 2 for every 2 units)

gap_freq

string

Unit of interval: Day, Week, or Month

start_date

string

ISO date when recycling begins (e.g., YYYY-MM-DD)

expire_count

number

Maximum number of reposts

expire_date

string

ISO date to stop recycling (alternative to expire_count)

Examples

Basic Recycling

Recycle every 2 weeks, up to 3 times:

{
  "bulk": {
    "state": "scheduled",
    "posts": [{
      "networks": {
        "facebook": { "type": "status", "text": "Evergreen reminder!" }
      },
      "accounts": [{ "id": "66f509f7db2797026a37ba76" }],
      "recycling": {
        "gap": 2,
        "gap_freq": "Week",
        "expire_count": 3
      }
    }]
  }
}

Recycling with Expiration Date

Recycle monthly until end of year:

{
  "bulk": {
    "state": "scheduled",
    "posts": [{
      "networks": {
        "default": { "type": "status", "text": "Monthly promotion reminder!" }
      },
      "accounts": [{ "id": "66f509f7db2797026a37ba76" }],
      "recycling": {
        "gap": 1,
        "gap_freq": "Month",
        "start_date": "2025-06-01",
        "expire_date": "2025-12-31"
      }
    }]
  }
}

How It Works

  1. Create a post with recycling settings.

  2. Publer queues the post for reuse.

  3. After each gap interval, the post is republished.

  4. Recycling stops when expire_count or expire_date is reached.

Platform Limitations

Due to API limitations and anti-spam policies, recycling has some platform-specific constraints:

Platform

Recycling Support

Notes

Facebook

Full support

No special requirements

Instagram

Full support

No special requirements

LinkedIn

Full support

No special requirements

Twitter

Limited

Requires 10+ variations using Spintax Generator

Pinterest

Limited

Requires 10+ variations using Spintax Generator

Google Business Profile

Limited

Requires 10+ variations using Spintax Generator

YouTube

Not supported

API limitations

TikTok

Not supported

API limitations

WordPress

Not supported

API limitations

Use Cases

  • Promote evergreen blog posts or resources.

  • Remind followers of ongoing events or offers.

  • Keep your feed active with minimal manual effort.

Best Practices

  • Vary content slightly using Spintax to avoid spam filters.

  • Choose sensible intervals—don’t recycle too frequently.

  • Always set an expiration (expire_count or expire_date).

  • Monitor engagement metrics to adjust recycling strategy.

Recycling vs. Recurring

  • Recycling fills open slots based on gap and gap_freq—ideal for evergreen content.

  • Recurring publishes at exact times on a fixed repeat schedule (e.g., every Monday at 9 AM).

Last updated

Was this helpful?