Posts allow businesses to share announcements, offers, events, and updates directly on connected platforms. Once published, your content appears on Google, Facebook, Instagram, and your Store Locator, helping you engage with customers and improve your online presence.For Google: When a business is connected to a Google location (action performed in Partoo app on Partner Connection page), existing Google Posts are automatically imported and kept in sync as Partoo Posts. If the business is later disconnected, the Google Posts published on Google will be deleted from Partoo database.
Prerequisites
Before using the Posts API, ensure you have:- Active subscription to Posts plan
- API key with appropriate role (Business Manager, Group Manager, Organization Manager, or Organization Admin)
-
Platform Integrations: Businesses must be connected to target platforms
- Google My Business
- Facebook
- Instagram
- Store Locator
- Businesses have a
google_location_idconnected DIFFUSIONfeature enabled
Understanding Post Types
Different post types serve different purposes and have specific requirements:- News Posts
- Event Posts
- Offer Posts
News posts are announcements and updates about your business.Required fields:
summary: Main content (max 1500 chars for Google, 10000 for Facebook, 2200 for Instagram)
- ✅ Instagram (requires at least 1 image)
- ✅ Store Locator
In API requests, use
"post_type": "news" to create news posts.Creating Posts
All roles can create posts for the businesses they have access to. Each business gets its own individual post.Who can create posts for multiple businesses:
- Organization Admin & Organization Manager: All businesses in the organization
- Group Manager: All businesses in their assigned groups
- Business Manager: Their assigned businesses (can be one or multiple)
bulk_id to group them together. However, only Organization Admin and Organization Manager can use the bulk management endpoints to update/delete all posts in a bulk at once.Single Business Post
Single Business Post
Creating a post for one business
All roles (Business Manager, Group Manager, Organization Manager, Organization Admin) can create posts for individual businesses they have access to.Multiple Businesses Post (Bulk Post)
Multiple Businesses Post (Bulk Post)
Creating posts for multiple businesses
Each business gets its own individual post. When targeting more than one business, all posts share abulk_id for grouping purposes.- By Group
- By Organization
Group Managers, Organization Managers, and Organization Admins can create posts for businesses in specific groups:
What happens:
- Each business gets its own separate Post record
- All posts share the same
bulk_id(assigned internally) - To get the
bulk_id, query one of the created posts using itspost_id - Only ORG_ADMIN/ORG_MANAGER can use bulk management endpoints to update/delete all posts at once
Create an Event Post
Create an Event Post
Publishing event posts with time constraints
Event posts are perfect for promoting time-specific events at your business locations.1
Define event details
Prepare all required event information:
- Event title (max 58 characters)
- Start and end dates/times
- Event description (optional)
- Media files (optional)
2
Create the event post
The post will be created with state
pending and will transition to live once published. This process is asynchronous and may take a few minutes.Create an Offer Post
Create an Offer Post
Publishing promotional offers with validity periods
Offer posts help you promote special deals, discounts, and limited-time promotions.1
Prepare offer details
Gather all offer information:
- Offer title (max 58 characters)
- Validity period (start and end dates/times)
- Offer description (optional)
- Coupon code (optional, max 58 characters)
- Terms and conditions (optional, max 5000 characters)
2
Create the offer post
Schedule Posts for Future Publishing
Schedule Posts for Future Publishing
Publishing posts at a specific future time
Scheduled posts allow you to prepare content in advance and have it automatically published at a specific time.1
Understand scheduling vs validity
It’s important to distinguish between two different time concepts:
schedule_time: When the post should be published to the platformsstart_at/end_at: The validity period of the post content (for events and offers)
The
schedule_time must be at least 2 hours in the future from the current time.
You can schedule a news post, event post, or offer post. The schedule_time controls publication, while start_at/end_at control content validity.2
Create a scheduled post
The post will be created with state
scheduled and will automatically transition to pending at the scheduled time, then to live once published.Create Draft Posts for Validation
Create Draft Posts for Validation
Creating drafts requiring approval before publishing
Draft posts allow organization admins to create posts that require validation from Business Managers or Group Managers before being published.Draft Post Requirements:
- User must have
ORG_ADMINrole - Organization must have
DRAFT_POSTfeature enabled - Organization must have more than 1 business
- Local users (Business Managers or Group Managers) must exist to validate drafts
1
Check if you can create drafts
Verify you have permission to create draft posts:
2
Create a draft post
Create a post that requires validation before publishing:
When
send_notifications: true, all Business Managers and Group Managers with access to the businesses will receive an email notification about the draft post requiring validation.3
Validate and publish draft
Business Managers or Group Managers can validate drafts by updating them:
Once a Business Manager or Group Manager updates the draft, it transitions from
to_validate to pending and will be published to the selected platforms.Add Images to Posts
Add Images to Posts
Including images in your posts
Images make your posts more engaging and increase visibility on platforms.1
Understand image requirements
Different platforms have different image requirements:
- Google My Business
- Facebook
- Instagram
- Store Locator
- Limit: 1 image
- Min size: 250 × 250px
- Max size: 10000 × 10000px
- Max weight: 5MB
- Formats: JPEG, JPG, PNG
2
Create post with images
Add images to your posts using the
image_url field:3
Add multiple images
For platforms that support multiple images (Facebook, Instagram), provide an array of URL strings:
Managing Existing Bulks
Once you’ve created posts for multiple businesses (which automatically generates abulk_id internally), Organization Admins and Organization Managers can use bulk management endpoints to search, update, or delete all posts in a bulk at once.
Search Bulk Posts
Search Bulk Posts
Finding and tracking posts in a bulk
Use the bulk search endpoint to retrieve all posts in a specific bulk. You can use thebulk_id if you know it, or search by business/group to find your posts.Count Posts in a Bulk
Count Posts in a Bulk
Update Bulk Posts
Update Bulk Posts
Modifying content across multiple posts
You can update all posts in a bulk simultaneously, which is useful for correcting errors or updating information.Platform Behavior:
- Google & Facebook: Updates propagate asynchronously (a few minutes delay)
- Store Locator: Updates apply instantly
- Instagram: Cannot be edited once live (API limitation)
Delete Bulk Posts
Delete Bulk Posts
Removing multiple posts at once
Delete all posts in a bulk when content is no longer relevant or needs to be removed.Deletion Behavior:
- Published posts transition through
pending_deleted(asynchronous, a few minutes) - Unpublished posts are deleted immediately
- Instagram: Only removes Partoo records, not the actual Instagram post (manual deletion required)
Platform-Specific Guidelines
Quick reference for key differences between platforms:- Google My Business
- Facebook
- Instagram
- Store Locator
Supported Post Types: News, Event, OfferKey Limits:
- Summary: 1500 characters
- Title: 58 characters (events/offers)
- Offer terms: 5000 characters
- Images: 1 per post
Only platform supporting all three post types (News, Event, Offer).
Post Lifecycle and States
Understanding post states helps you track the publishing process and troubleshoot issues:Post States
Post States
-
to_validate: draft post awaiting validation from a Business Manager or Group Manager -
scheduled: scheduled for future publishing at the specifiedschedule_time -
pending: queued for publishing -
live: successfully published -
to_configure: configuration error -
error: publisher error -
pending_deleted: queued for deletion -
deleted: successfully deleted from platforms and Partoo -
expired: draft post expired before validation, or post passed itsend_atdate
State Transitions
State Transitions
- Draft posts:
to_validate→pending(after validation) →live - Scheduled posts:
scheduled→pending(at schedule time) →live - Immediate posts:
pending→live(orerror/to_configureon failure) - Deletions: →
pending_deleted→deleted
Monitoring Post Progress
State transitions are asynchronous. To monitor post status:Use the search endpointGET /api/v2/posts with filters like state__in=live or state__in=pending to check if posts are published successfully.Troubleshooting Failed Posts
If your post entersto_configure state, use the state diagnostics endpoint to understand what configuration is missing.The
/state endpoint only returns publishers in to_configure state. An empty response {} means no configuration errors were detected (posts may be pending, scheduled, live, or in other error states).