user_profiles

Update user profile

Write the signed-in person's card: any of full_name, headline, role_title, company_name, location, experience_line, topics, languages, ln_member_id, ln_id, ln_nickname (a profile link is parsed to the slug; null clears a field); avatar_url is the account's picture while it has none; source stamps each field (default person); read_at: when the profile was read. The first write creates the card; a full_name replaces an email-derived name. 422 unknown_field, ln_nickname_invalid.

Contract:

  • MCP tool update_user_profile, registry package mcp.id/user_profiles, mount id.identity.
  • Operation update, response envelope update.
  • Flags: none.
patch/api/user-profile

Request

  • Base URL
    https://beta.getsales.io/id/v1
  • Auth
    HTTP bearer and API key in header Team-SID

Request body

full_namestring nullable

Replaces the account's name too while that name is still the one derived from the sign-up email.

headlinestring nullable

The LinkedIn headline.

role_titlestring nullable

The current role.

company_namestring nullable

The current company.

locationstring nullable

Where the person is.

avatar_urlstring nullable

The photo as read_linkedin_person gives it (an https address): the account takes it as its picture while it has none; a picture already set stays, and null changes nothing. Not a field of the card.

experience_linestring nullable

One line you write from the positions when they say more than the headline ("11 years in B2B sales, before that Oracle"); null when they carry no dates and no earlier company.

topicsstring[] nullable

Two or three topics the person writes about.

languagesstring[] nullable

The languages the profile lists.

ln_member_idinteger nullable

The decoded member id.

ln_idstring nullable

The profile URN.

ln_nicknamestring nullable

The profile slug or its linkedin.com/in/ link; parsed to the slug at the edge, a URL is never stored.

source'linkedin_company' | 'linkedin_profile' | 'website' | 'person' | 'creator' nullable

Stamps each field written: linkedin_profile for what the read said, person for the person's own words, creator for an inference; default person.

read_atstring nullable

ISO 8601; when the LinkedIn profile was read. A stamp itself, so it gets no source.

Response

update success envelope.

successtrue required
operation'update' required
updated_fieldsstring[] required
previous_valuesobject required
kept_fieldsstring[]

The fields this write did not change because the person's own value stands on them (stamped person); read the item for what landed.

Changes

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