Move between social groups
Reassign a connected social account to another profile without reconnecting it.
Move an integration when an account changes clients, brands, or workspaces. The integration keeps its ID, OAuth credentials, and existing posts.
From the dashboard
Open Dashboard → Integrations, find the account, and select Move. Choose a destination social group, then confirm the move.
Choose Default to remove the account from its current social group.
Endpoint
PATCH https://api.postpeer.dev/v1/connect/integrations/{id}Parameters
| Location | Parameter | Type | Description |
|---|---|---|---|
| Path | id | string | Integration ID from the List endpoint |
| Body | profileId | string | null | Destination profile ID. Pass null to move the integration to Default. |
The destination profile must be active and belong to the same project as the integration.
Move to another social group
curl -X PATCH "https://api.postpeer.dev/v1/connect/integrations/abc123" \
-H "x-access-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "profileId": "profile_acme" }'const response = await fetch(
'https://api.postpeer.dev/v1/connect/integrations/abc123',
{
method: 'PATCH',
headers: {
'x-access-key': process.env.POSTPEER_API_KEY!,
'Content-Type': 'application/json',
},
body: JSON.stringify({ profileId: 'profile_acme' }),
},
);
const result = await response.json();import os
import requests
response = requests.patch(
"https://api.postpeer.dev/v1/connect/integrations/abc123",
headers={"x-access-key": os.environ["POSTPEER_API_KEY"]},
json={"profileId": "profile_acme"},
)
response.raise_for_status()
result = response.json()Move to Default
Set profileId to null:
curl -X PATCH "https://api.postpeer.dev/v1/connect/integrations/abc123" \
-H "x-access-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "profileId": null }'Response
The response returns the updated integration:
{
"success": true,
"integration": {
"id": "abc123",
"platform": "twitter",
"username": "@postpeer",
"profileId": "profile_acme",
"authStatus": "active",
"createdAt": "2026-03-28T10:00:00.000Z"
}
}Destination conflicts
A project can contain only one copy of the same social account in each profile. If the destination already contains that account, the API returns 409. Choose another profile or disconnect the duplicate integration before retrying.
Status codes
| Code | Meaning |
|---|---|
200 | Integration moved |
400 | Invalid profileId or request body |
404 | Integration or destination profile not found |
409 | The social account already exists in the destination profile |
See Create a profile to add a destination social group.