PATCH /v1/influencers/:influencerId
Update identity fields on an influencer in place.
PATCH
/v1/influencers/:influencerIdPhase 1stable
- Auth
- Bearer
- Scope
- influencers:write
Patch identity fields you want to change. Everything omitted is left alone. The body is strict — unknown fields are rejected. Returns the full updated record.
Path parameters
influencerIdstring (uuid)requiredThe influencer id.
Body
Body (all optional, at least one)
namestringoptionalDisplay name (1-128).genderstring | nulloptionalPass null to clear.One of:male,female,nonbinary,unspecifiedageRangestring | nulloptionalPass null to clear.ethnicitystring | nulloptionalbodyTypestring | nulloptionalhairColorstring | nulloptionalhairStylestring | nulloptionalstylestring | nulloptionalvibestring | nulloptionalvoiceDescriptionstring | nulloptionalpersonalityobjectoptionalNested partial. Merges with existing traits — pass only the keys you want to change.
Reference images aren't patched here; use POST /v1/influencers/:influencerId/reference-images.
Request
curl -X PATCH https://api.layers.com/v1/influencers/{influencerId} \
-H "X-Api-Key: $LAYERS_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "vibe": "precise and energetic", "personality": { "humor": "observational" } }'const res = await fetch(
`https://api.layers.com/v1/influencers/${influencerId}`,
{
method: 'PATCH',
headers: {
'X-Api-Key': process.env.LAYERS_API_KEY!,
'Content-Type': 'application/json',
},
body: JSON.stringify({ vibe: 'precise and energetic' }),
},
);
const influencer = await res.json();import os, httpx
r = httpx.patch(
f"https://api.layers.com/v1/influencers/{influencer_id}",
headers={
"X-Api-Key": os.environ["LAYERS_API_KEY"],
"Content-Type": "application/json",
},
json={"vibe": "precise and energetic"},
)
influencer = r.json()Responses
200Full updated influencer row (same shape as GET).
{
"influencerId": "inf_01HXZ9...",
"projectId": "proj_01HX...",
"name": "Ava Chen",
"gender": "female",
"ageRange": "25-34",
"vibe": "precise and energetic",
"personality": {
"traits": ["curious", "warm", "direct"],
"humor": "observational"
},
"referenceImages": [],
"status": "ready",
"createdAt": "2026-04-01T14:22:10Z",
"updatedAt": "2026-04-18T09:18:44Z"
}422Validation failed — bad enum, unknown field, or wrong type.
{
"error": {
"code": "VALIDATION",
"message": "Invalid body.",
"requestId": "req_...",
"details": { "fieldErrors": { "gender": ["Invalid enum value"] } }
}
}404Influencer not in this org, or deleted.
{
"error": {
"code": "NOT_FOUND",
"message": "Influencer not found.",
"requestId": "req_..."
}
}Notes
- Personality is merged, not replaced. The server reads existing
personalityJSON and shallow-merges your patch. To clear a key, set it tonullexplicitly. - Attributes outside the schema are dropped. Unknown fields produce a
VALIDATIONresponse.
Errors
| Code | When |
|---|---|
VALIDATION | Bad type, unknown field, enum out of range. |
NOT_FOUND | Influencer not in this org. |
FORBIDDEN_SCOPE | Key lacks influencers:write. |