Profiles

Assign profile to group

Moves a profile (the connection itself) into a different profile group without disconnecting it. The connection keeps its ID, tokens, and post history. Placements in its current home group move with it; placements already assigned to another group stay where they are. Requires an account-wide API key for cross-group moves.

patch/api/profiles/{id}/assign_to_group

Request

  • Base URL
    https://api.postproxy.dev
  • URL
    https://api.postproxy.dev/api/profiles/{id}/assign_to_group
  • Auth
    HTTP bearer

Path parameters

idstring required

Profile ID

Headers

Idempotency-Keystring

Optional idempotency key (up to 255 characters; a UUID is ideal). Retrying a successful write with the same key replays the original response (with an Idempotent-Replay: true header) instead of executing again. Stored responses are kept for 24 hours; only 2xx responses are stored.

Request body

target_profile_group_idstring required

ID of the profile group to move the profile into. Must be in the same environment (live/sandbox) as your API key.

Response

The moved profile, with profile_group_id set to the new group. Moving a profile into the group it is already in is a no-op and returns 200.

idstring

Unique profile identifier (id).

namestring

Display name of the connected account.

usernamestring nullable

Handle on the platform (without @). null when the platform does not expose one.

platform_idstring

The account's ID on the platform.

status'active' | 'expired' | 'inactive'

Platform connection status. inactive might mean disconnected or suspended on a platform, or waiting for a group that can take it - see inactive_reason.

inactive_reason'network_taken' | 'null' nullable

Why an inactive profile is inactive. network_taken: the account arrived with a Facebook login that granted several Instagram accounts, but its group already holds an active Instagram profile - move it to a group without one to activate it. null otherwise, including when the connection was lost and needs reconnecting.

platform'facebook' | 'instagram' | 'tiktok' | 'linkedin' | 'youtube' | 'twitter' | 'threads' | 'pinterest' | 'bluesky' | 'telegram' | 'google_business'

Platform identifier.

profile_group_idstring

ID of the profile group this belongs to.

expires_atstring nullable

ISO 8601 timestamp when the connection expires (if applicable). null when the token does not expire or has a refresh token.

post_countinteger

Number of posts made through this profile.

avatar_urlstring nullable

Stable Postproxy storage URL of the account's profile picture, resized to 256x256. null until it has been mirrored. For facebook this is the connecting user's picture; each Page's picture is avatar_url on its placement.

platform_urlstring nullable

Public URL of the account on the platform. null when the platform has no stable public profile URL (e.g. linkedin, google_business).

placements_sync_status'syncing' | 'synced' | 'failed' | 'null' nullable

State of the latest pull of this profile's placements. The pull runs in the background right after connecting and can take several minutes on profiles with many pages/locations. null for platforms without placements and for telegram, whose channels arrive via webhook.

Changes

No recorded changes to this operation across all 1 revision of this API.