GetXAPI
Users

Update Profile

Update Twitter profile fields (name, bio, location, URL, color, birthdate) programmatically via API. $0.001 per call. GetXAPI update profile endpoint.

POST/twitter/user/update_profile

This endpoint costs $0.001 per API call.

Updates one or more profile fields for the user owning auth_token. Send only the fields you want to change.

Body Parameters

ParameterTypeRequiredDescription
auth_tokenstringYesUser's auth_token cookie
ct0stringNoOptional current CSRF token cookie. When provided with twid, skips server-side credential resolution.
twidstringNoOptional current user ID cookie, for example u=1234567890. Must be provided with ct0.
namestringNoDisplay name (1–50 chars). Cannot be empty — a blank name is ignored rather than applied.
descriptionstringNoBio text (max 160 chars). Send "" to clear it.
locationstringNoLocation text
urlstringNoWebsite URL shown on profile
profile_link_colorstringNoHex color (e.g. 1DA1F2)
birthdate_yearnumberNoBirthdate year
birthdate_monthnumberNoBirthdate month (1–12)
birthdate_daynumberNoBirthdate day
birthdate_visibilitystringNoself, mutualfollow, followers, following, or public
proxystringNoProxy URL (http://, https://, socks5://, or socks4://)

Notes

  • If you already have current ct0 and twid, send both to skip the extra server-side credential bootstrap from auth_token. If either one is omitted, the server resolves them from auth_token as before. Stale or invalid supplied values are not validated upfront and may fail on the actual Twitter action instead of returning an early 401.
  • At least one field other than auth_token must be provided.
  • Only included fields are updated; omitted fields are left unchanged.
  • name cannot be set to an empty string. If you send a blank name, it is skipped and the other fields still apply; if name was the only field, the request returns 400.

Response (200)

{
  "status": "success",
  "msg": "Profile updated successfully",
  "data": {
    "id": "1740174562631856128",
    "screen_name": "example_user",
    "name": "New Display Name",
    "description": "Updated bio",
    "location": "San Francisco",
    "url": "https://example.com",
    "profile_link_color": "1DA1F2"
  }
}

Error Responses

400 - No fields to update

{
  "error": "At least one profile field is required."
}

400 - Empty name

{
  "error": "Profile 'name' cannot be empty."
}

401 - Invalid auth_token

{
  "error": "Invalid auth_token - could not extract userId"
}

Example

curl --request POST \
  --header "Authorization: Bearer API_KEY" \
  --header "Content-Type: application/json" \
  --url "https://api.getxapi.com/twitter/user/update_profile" \
  --data '{
    "auth_token": "<auth_token>",
    "name": "New Display Name",
    "description": "Updated bio",
    "location": "San Francisco",
    "url": "https://example.com"
  }'

On this page