Create Instagram Account Bundles with TokPortal API
Create and configure Instagram bundles with TokPortal API: account profile, Reels, posts, carousels, publishing, and delivered account access.
Create Instagram Account Bundles with TokPortal API
Use platform: "instagram" when creating a TokPortal bundle. The API can create account-only bundles, account-and-video bundles, or videos-only bundles for an existing delivered account.
This guide covers the public contract. It does not promise reach, engagement, account immunity, or any specific platform outcome.
1. Create an Instagram bundle
curl -X POST https://app.tokportal.com/api/ext/bundles \
-H "X-API-Key: sk_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"bundle_type": "account_and_videos",
"platform": "instagram",
"country": "US",
"title": "US Instagram launch",
"videos_quantity": 3,
"external_ref": "ig-launch-us"
}'
The response includes data.bundle_id, credits_charged, credits_remaining, and cost_breakdown.
Reference: Create Bundle
2. Configure the account profile
Account configuration is required before publishing.
curl -X PUT https://app.tokportal.com/api/ext/bundles/bnd_abc123/account \
-H "X-API-Key: sk_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"username": "mybrand.us",
"visible_name": "My Brand",
"biography": "New drops every week.",
"profile_picture_url": "https://cdn.example.com/mybrand/profile.jpg",
"link_in_bio": "https://example.com"
}'
For Instagram, link_in_bio is supported. Keep biography under 80 characters and use unique usernames/display names across accounts.
Reference: Account Configuration
3. Configure an Instagram Reel
For a Reel video, use video_type: "video" and instagram_content_type: "reel".
curl -X PUT https://app.tokportal.com/api/ext/bundles/bnd_abc123/videos/1 \
-H "X-API-Key: sk_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"video_type": "video",
"instagram_content_type": "reel",
"description": "Morning routine with the new collection #style",
"target_publish_date": "2026-06-05",
"video_url": "https://cdn.example.com/reels/reel-01.mp4",
"instagram_audio_name": "Original audio",
"external_ref": "ig-reel-01"
}'
video_url can be any public/direct URL or a public_url returned by Media Upload.
4. Configure an Instagram carousel post
For a swipeable Instagram carousel, use video_type: "carousel" and instagram_content_type: "post".
Upload images first and use the returned storage_path values:
curl -X POST https://app.tokportal.com/api/ext/upload/image/from-url \
-H "X-API-Key: sk_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"url": "https://cdn.example.com/carousel/slide-1.jpg",
"bundle_id": "bnd_abc123",
"purpose": "carousel"
}'
Then configure the slot:
curl -X PUT https://app.tokportal.com/api/ext/bundles/bnd_abc123/videos/2 \
-H "X-API-Key: sk_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"video_type": "carousel",
"instagram_content_type": "post",
"description": "Which look is your favorite?",
"target_publish_date": "2026-06-07",
"carousel_images": [
"carousel-images/org_xxx/bnd_abc123/slide-1.jpg",
"carousel-images/org_xxx/bnd_abc123/slide-2.jpg"
],
"instagram_location": "Los Angeles, California"
}'
Reference: Configure Videos
Deep warming
Deep warming is an Instagram-only option. Enable it with wants_deep_warming: true.
curl -X POST https://app.tokportal.com/api/ext/bundles \
-H "X-API-Key: sk_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"bundle_type": "account_and_videos",
"platform": "instagram",
"country": "US",
"videos_quantity": 3,
"wants_deep_warming": true,
"external_ref": "ig-deep-warming-us"
}'
wants_deep_warming and wants_niche_warming are mutually exclusive. The API returns validation errors if incompatible options are sent.
Bulk Instagram creation
POST /bundles/bulk accepts one country and one or more platforms. To cover several countries, call it once per country.
curl -X POST https://app.tokportal.com/api/ext/bundles/bulk \
-H "X-API-Key: sk_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"platforms": ["instagram"],
"country": "US",
"accounts_count": 5,
"upload_accounts_count": 2,
"videos_per_account": 6,
"wants_deep_warming": true,
"external_ref": "ig-bulk-us"
}'
This creates 5 Instagram bundles in the selected country. Two include video slots; three are account-only.
Reference: Create Bulk
Delivered account access
After delivery, accounts are available through the Delivered Accounts API:
curl -X GET "https://app.tokportal.com/api/ext/accounts?platform=instagram" \
-H "X-API-Key: sk_your_key_here"
Credential reveal is a separate endpoint and triggers the support disclaimer described in Delivered Accounts:
curl -X POST https://app.tokportal.com/api/ext/accounts/acc_abc123/reveal-credentials \
-H "X-API-Key: sk_your_key_here"
Related docs: Media Upload, Publish & Unpublish, Analytics, MCP Server.