Assign Custom Domain is an example object payload from Neynar, with 9 top-level fields. It illustrates the shape of data this provider's APIs accept or return.
{
"operationId": "assign-custom-domain",
"method": "PUT",
"path": "/v2/studio/vercel/domain",
"summary": "Assign a custom subdomain to a deployed miniapp",
"description": "Assigns a custom *.neynar.app subdomain to the user's deployed miniapp. The new domain is added to the Vercel project alongside the existing auto-assigned domain. The productionDomain in the database is updated to the custom domain. Requires API key authentication. Note: Studio CU is tracked based on LLM token usage, not per API call.",
"tags": [
"studio"
],
"parameters": [
{
"name": "fid",
"in": "query",
"required": true,
"description": "Farcaster ID of the requesting user",
"schema": {
"example": 3,
"format": "int32",
"minimum": 0,
"type": "integer"
}
}
],
"requestBody": {
"required": true,
"schema": {
"properties": {
"deployment_id": {
"description": "Deployment ID (UUID) of the miniapp",
"format": "uuid",
"type": "string"
},
"subdomain": {
"description": "The desired subdomain (without .neynar.app suffix). Must be 3-63 characters, lowercase alphanumeric and hyphens only.",
"maxLength": 63,
"minLength": 3,
"pattern": "^[a-z0-9]([a-z0-9-]*[a-z0-9])?$",
"type": "string"
}
},
"required": [
"deployment_id",
"subdomain"
],
"type": "object"
},
"example": null
},
"responses": {
"200": {
"description": "Success",
"schema": {
"properties": {
"domain": {
"description": "The full assigned domain (e.g., myapp.neynar.app)",
"type": "string"
},
"previous_domain": {
"description": "The previous production domain, if any",
"type": "string"
},
"success": {
"enum": [
true
],
"type": "boolean"
}
},
"required": [
"success",
"domain"
],
"type": "object"
},
"example": null
},
"400": {
"description": "Bad Request",
"schema": {
"properties": {
"error": {
"type": "string"
},
"success": {
"enum": [
false
],
"type": "boolean"
}
},
"required": [
"success",
"error"
],
"type": "object"
},
"example": null
},
"403": {
"description": "Forbidden",
"schema": {
"properties": {
"error": {
"type": "string"
},
"success": {
"enum": [
false
],
"type": "boolean"
}
},
"required": [
"success",
"error"
],
"type": "object"
},
"example": null
},
"404": {
"description": "Resource not found",
"schema": {
"properties": {
"error": {
"type": "string"
},
"success": {
"enum": [
false
],
"type": "boolean"
}
},
"required": [
"success",
"error"
],
"type": "object"
},
"example": null
},
"409": {
"description": "Conflict",
"schema": {
"properties": {
"error": {
"type": "string"
},
"success": {
"enum": [
false
],
"type": "boolean"
}
},
"required": [
"success",
"error"
],
"type": "object"
},
"example": null
},
"500": {
"description": "Server Error",
"schema": {
"properties": {
"error": {
"type": "string"
},
"success": {
"enum": [
false
],
"type": "boolean"
}
},
"required": [
"success",
"error"
],
"type": "object"
},
"example": null
}
}
}