Pinterest scheduling, self-hosted

Write the pins today.
Let them publish themselves.

Build a queue of pins with images, titles, descriptions and links, pick the board and the hour, and close the laptop. A cron job on your own hosting sends each one to Pinterest at the time you chose.

Official Pinterest API v5. Connected with OAuth, so your Pinterest password never touches this app.

What you get

Everything the queue needs, nothing it doesn't

One dashboard for your accounts, your pins and your schedule. No browser extension, no automation that pretends to be you, no monthly seat fee.

Connect with OAuth

Approve the app on Pinterest and it stores the token that comes back, encrypted. Add as many Pinterest accounts as you manage.

Compose real pins

Image, title, description, alt text, destination link and board. Save it as a draft, or set the date and let it wait its turn.

Cron scheduler

A single cron entry in hPanel drives everything. Each run publishes what is due, retries what failed, and logs the result.

AI writing help

Generate titles, descriptions, hashtags, keywords and image prompts from a topic. Bring your own OpenAI key; you stay in control.

Status you can trust

Draft, scheduled, published or failed, with the exact Pinterest error on anything that did not go through. No silent failures.

Runs on your hosting

PHP 8 and MySQL on shared hosting. No Composer, no Node, no SSH, no Docker. Upload, extract, import, done.

How it works

Four steps, then it runs on its own

01

Register your Pinterest app

Create an app at developers.pinterest.com and paste the App ID and secret into Settings.

02

Connect an account

Press Connect, approve on Pinterest, and your boards are pulled in automatically.

03

Fill the queue

Upload an image, write the pin, choose a board and a time. Repeat for as many as you like.

04

Add the cron job

One line in hPanel, running every five minutes. From then on the queue empties itself.

Security

Your credentials stay yours

This app was built for people who do not want to hand their Pinterest login to a third party. It cannot ask for your password, because it has nowhere to put one.

You host it. You hold the database. The only thing leaving your server is an API call to Pinterest carrying a token you approved.

  • No Pinterest passwords, ever Authentication happens on pinterest.com. The app only receives an OAuth token.
  • Tokens encrypted at rest AES-256-GCM with a key in your config file, not in the database.
  • Prepared statements everywhere Every query is parameterised through PDO with emulation turned off.
  • CSRF tokens on every form Plus escaped output, hardened sessions, and security response headers.
  • Uploads checked, then renamed Real image type read from the bytes, random filename, PHP execution blocked in uploads.

Questions

Before you install

Do I need my own Pinterest developer app?

Yes. Pinterest issues API access per app, so you register one at developers.pinterest.com under your own business account and paste the credentials into Settings. The README walks through the form field by field.

Why are my pins invisible after publishing?

New Pinterest apps start on Trial access, and pins created under Trial access are not shown publicly. Your pin was created correctly. Apply for Standard access to make them visible, which requires a demo video showing the OAuth consent screen and a working API call.

Will this work on Hostinger shared hosting?

That is exactly what it was built for. It needs PHP 8.1 or newer with the cURL, OpenSSL, PDO MySQL and fileinfo extensions, which Hostinger enables by default. There is no build step and nothing to install over SSH.

Is the AI part required?

No. Leave the OpenAI key blank and the AI Tools page simply tells you it is switched off. Everything else keeps working. When you do add a key, you are billed by OpenAI directly for what you use.

What happens if a pin fails to publish?

The scheduler records the exact message Pinterest returned and tries again on the next run, up to three attempts. After that the pin is marked failed and stays in your list with the reason attached, so you can fix it and reschedule.

Can other people sign up on my installation?

Only if you let them. The first account registered becomes the admin, and public registration can be switched off from Settings straight afterwards.

Your queue is empty. That is the only problem left.

Install it on your own hosting, connect a Pinterest account, and schedule your first pin in the next ten minutes.