Add profiles to a list
Each profile’s email address goes on the list (its phone number when it has no email address): the membership stays with that address, also when profiles merge. Up to 1,000 profiles per call; profiles that aren’t found or have neither are in `skipped`. Each one added gets *List Joined* on their timeline.
Each profile’s email address goes on the list (its phone number when it has no email address): the membership stays with that address, also when profiles merge. Up to 1,000 profiles per call; profiles that aren’t found or have neither are in skipped. Each one added gets List Joined on their timeline.
apiKey writeAuthorizationBearer <token>A workspace API key (pf_…), created under Developers → API keys.
Scope: write
id*string^(list)_[0-9A-Za-z]{8}$idempotency-key?stringRun this write once: a retry with the same key gets the first answer (24 hours).
1 <= length <= 255application/json- body
profileIds*array<>1 <= items <= 1000OK
application/json- response
changed*integerunchanged*integerskipped*array<>curl -X POST 'https://api.postforge.dev/v1/lists/string/profiles' \ -H 'Content-Type: application/json' \ -d '{ "profileIds": [ "60ed874c-4430-41fc-8a75-5dd2c43e9615" ]}'{ "changed": 0, "unchanged": 0, "skipped": [ { "profileId": "faebe71b-2bf8-4bdb-9b67-258e4d6aa00a", "reason": "not_found" } ]}List the profiles on a list GET
Who is on it, the latest added first, with the address on the list and how it was added; search by name, email or phone.
Remove profiles from a list POST
Every address of each profile comes off the list; each one removed gets *List Left* on their timeline. Up to 1,000 profiles per call.