MCP 서버

follow-up-boss

io.usefulapi/follow-up-boss
부동산 영업 및 CRM 공개 · 연결 가능 MCP 2026-07-28

이 MCP로 할 수 있는 일

Searches and manages Follow Up Boss real-estate leads, contacts, calls, tasks, appointments, pipelines and deals.

fub_add_note
Add a note
Add a note to a contact's timeline. FUB: POST /v1/notes.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['personId', 'body'], 'properties': {'body': {'type': 'string', 'description': 'Note content.'}, 'isHtml': {'type': 'boolean', 'description': 'Render HTML tags in the body.'}, 'subject': {'type': 'string', 'description': 'Note title.'}, 'personId': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The person id.', 'exclusiveMinimum': 0}}}
fub_check_duplicate_person
Check whether a person exists
Check if a contact with this email or phone already exists anywhere in the account (even ones this user cannot see) and who it is assigned to. Use before adding a lead. FUB: GET /v1/people/checkDuplicate.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'email': {'type': 'string', 'description': 'Email address to look for.'}, 'phone': {'type': 'string', 'description': 'Phone number to look for.'}}}
fub_create_deal
Create a deal
Create a deal in a pipeline stage (stage ids from fub_list_pipelines). Include userIds — a deal with no users is invisible to agents. FUB: POST /v1/deals.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name', 'stageId'], 'properties': {'name': {'type': 'string', 'description': 'Deal name.'}, 'price': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'stageId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Pipeline stage id.'}, 'userIds': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'description': 'User (agent) ids on the deal.'}, 'peopleIds': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'description': 'Contact ids on the deal.'}, 'description': {'type': 'string'}, 'possessionDate': {'type': 'string'}, 'teamCommission': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Team commission split.'}, 'agentCommission': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Agent commission split.'}, 'commissionValue': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'dueDiligenceDate': {'type': 'string'}, 'projectedCloseDate': {'type': 'string', 'description': 'Projected close date.'}, 'earnestMoneyDueDate': {'type': 'string'}, 'finalWalkThroughDate': {'type': 'string'}, 'mutualAcceptanceDate': {'type': 'string'}}}
fub_create_task
Create a task
Create a task on a contact, assigned to a user (assignedUserId or assignedTo is required). FUB: POST /v1/tasks.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['personId'], 'properties': {'name': {'type': 'string', 'description': 'Task name.'}, 'type': {'enum': ['Follow Up', 'Call', 'Text', 'Email', 'Appointment', 'Showing', 'Closing', 'Open House', 'Thank You'], 'type': 'string'}, 'dueDate': {'type': 'string', 'description': 'YYYY-MM-DD.'}, 'personId': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The person id.', 'exclusiveMinimum': 0}, 'assignedTo': {'type': 'string', 'description': 'Full name of the user to assign (or give assignedUserId).'}, 'dueDateTime': {'type': 'string', 'description': 'With time, e.g. 2026-11-16T15:00:00-05:00.'}, 'isCompleted': {'type': 'boolean'}, 'assignedUserId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'User id to assign (or give assignedTo).'}, 'remindSecondsBefore': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Reminder lead time; only for tasks with a due time.'}}}
fub_get_identity
Get identity
Who the credential belongs to: the account (id, domain, owner) and the authenticated user. A cheap way to confirm the API key works. FUB: GET /v1/identity.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
fub_get_person
Get one person
Fetch one contact by id. Pass fields="allFields" to include custom fields and everything else. FUB: GET /v1/people/{id}.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id'], 'properties': {'id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The person id.', 'exclusiveMinimum': 0}, 'fields': {'type': 'string', 'description': 'Comma-separated fields to return, or "allFields" / "allCustom".'}}}
fub_list_appointments
List appointments
Calendar appointments with invitees, type and outcome. Filter by person, user, or a start+end window (both required together). FUB: GET /v1/appointments.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'end': {'type': 'string', 'description': 'Window end (ISO-8601). Must be combined with start.'}, 'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Page size, 1-100 (FUB default 10).'}, 'start': {'type': 'string', 'description': 'Window start (ISO-8601). Must be combined with end.'}, 'offset': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Rows to skip. For deep paging prefer `next`.'}, 'userId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Only appointments for this user.'}, 'personId': {'type': 'string', 'description': 'Person id, or a comma-separated list of ids.'}}}
fub_list_calls
List calls
Logged phone calls with outcome, direction and duration. Filter by person or number. FUB: GET /v1/calls.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Page size, 1-100 (FUB default 10).'}, 'phone': {'type': 'string', 'description': "Calls to or from this person's number."}, 'offset': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Rows to skip. For deep paging prefer `next`.'}, 'personId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Only calls with this person.'}, 'toNumber': {'type': 'string', 'description': 'Calls to this number.'}, 'fromNumber': {'type': 'string', 'description': 'Calls from this number.'}}}
fub_list_custom_fields
List custom fields
The account's contact custom fields: label, API name (customXxx), type and dropdown choices. Use the name as a key in customFields. FUB: GET /v1/customFields.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'label': {'type': 'string', 'description': 'Find a custom field by label.'}, 'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Page size, 1-100 (FUB default 10).'}, 'offset': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Rows to skip. For deep paging prefer `next`.'}}}
fub_list_deals
List deals
Deals (transactions) with stage, price, people, agents and commission. Filter by pipeline, user, person or status. The response metadata includes totalByStageId. FUB: GET /v1/deals.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Page size, 1-100 (FUB default 10).'}, 'offset': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Rows to skip. For deep paging prefer `next`.'}, 'status': {'enum': ['Active', 'Archived', 'Deleted'], 'type': 'string', 'description': 'Only deals with this status.'}, 'userId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Only deals for this user.'}, 'personId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Only deals for this person.'}, 'pipelineId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Only deals in this pipeline.'}, 'includeDeleted': {'type': 'boolean', 'description': 'Include Deleted deals.'}, 'includeArchived': {'type': 'boolean', 'description': 'Include Archived deals.'}}}
fub_list_events
List lead events
Lead activity: registrations, inquiries, viewed/saved properties, website visits, etc. Filter by person or type. Some events are only visible in the FUB app. FUB: GET /v1/events.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'next': {'type': 'string', 'description': "Cursor from the previous page's _metadata.next. Recommended over offset."}, 'type': {'type': 'string', 'description': 'Comma-separated event types, e.g. "Registration,Property Inquiry". One of: Registration, Inquiry, Seller Inquiry, Property Inquiry, General Inquiry, Viewed Property, Saved Property, Visited Website, Incoming Call, Unsubscribed, Property Search, Saved Property Search, Visited Open House, Viewed Page.'}, 'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Page size, 1-100 (FUB default 10).'}, 'offset': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Rows to skip. For deep paging prefer `next`.'}, 'personId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Only events for this person.'}, 'hasProperty': {'type': 'boolean', 'description': 'Only events with (or without) a property attached.'}, 'propertyAddress': {'type': 'string', 'description': 'Partial match on the property address.'}}}
fub_list_pipelines
List deal pipelines
Deal pipelines with their stages (the stage ids that fub_create_deal / fub_update_deal take). FUB: GET /v1/pipelines.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'name': {'type': 'string', 'description': 'Exact pipeline name.'}}}
fub_list_stages
List contact stages
Contact lifecycle stages (Lead, Nurture, Past Client, Trash…) with people counts — the names fub_search_people and fub_update_person take as "stage". FUB: GET /v1/stages.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'sort': {'enum': ['orderWeight', 'id', 'name'], 'type': 'string', 'description': 'Sort order.'}, 'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Page size, 1-100 (FUB default 10).'}, 'offset': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Rows to skip. For deep paging prefer `next`.'}}}
fub_list_tasks
List tasks
Tasks (follow-ups, calls, showings…). Filter by person, assignee, type, completion, or due window (due="today"|"overdue"|"upcoming"). FUB: GET /v1/tasks.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'due': {'enum': ['today', 'overdue', 'upcoming'], 'type': 'string', 'description': 'Due window.'}, 'name': {'type': 'string', 'description': 'Partial match on task name.'}, 'type': {'type': 'string', 'description': 'Comma-separated types. One of: Follow Up, Call, Text, Email, Appointment, Showing, Closing, Open House, Thank You.'}, 'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Page size, 1-100 (FUB default 10).'}, 'dueEnd': {'type': 'string', 'description': 'Due at or before this time.'}, 'offset': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Rows to skip. For deep paging prefer `next`.'}, 'dueStart': {'type': 'string', 'description': 'Due at or after this time.'}, 'personId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Only tasks for this person.'}, 'assignedTo': {'type': 'string', 'description': 'Only tasks assigned to this user (full name).'}, 'isCompleted': {'type': 'boolean', 'description': 'Completed or not.'}, 'assignedUserId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Only tasks assigned to this user id.'}}}
fub_list_text_messages
List text messages
Text messages for a person or a phone number (message bodies may be hidden by FUB for privacy). FUB: GET /v1/textMessages.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Page size, 1-100 (FUB default 10).'}, 'offset': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Rows to skip. For deep paging prefer `next`.'}, 'personId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Only texts with this person.'}, 'toNumber': {'type': 'string', 'description': 'Texts sent to this number.'}, 'fromNumber': {'type': 'string', 'description': 'Texts sent from this number.'}}}
fub_list_users
List users (agents)
Users in the account (agents, brokers, lenders) — the ids to assign people, tasks and deals to. FUB: GET /v1/users.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'name': {'type': 'string', 'description': 'Exact full name.'}, 'role': {'type': 'string', 'description': 'e.g. "Broker", "Agent", "Lender".'}, 'sort': {'enum': ['id', 'name', 'created'], 'type': 'string', 'description': 'Sort order.'}, 'email': {'type': 'string', 'description': 'Email address.'}, 'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Page size, 1-100 (FUB default 10).'}, 'offset': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Rows to skip. For deep paging prefer `next`.'}}}
fub_log_call
Log a call
Record a phone call made or received outside FUB, with its outcome. Does not place a call. FUB: POST /v1/calls.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['personId', 'phone', 'isIncoming'], 'properties': {'note': {'type': 'string', 'description': 'Call notes.'}, 'phone': {'type': 'string', 'description': 'The number called or calling.'}, 'userId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'User who took the call (admins only).'}, 'outcome': {'enum': ['Interested', 'Not Interested', 'Left Message', 'No Answer', 'Busy', 'Bad Number'], 'type': 'string'}, 'duration': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Seconds.'}, 'personId': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The person id.', 'exclusiveMinimum': 0}, 'toNumber': {'type': 'string'}, 'fromNumber': {'type': 'string'}, 'isIncoming': {'type': 'boolean', 'description': 'true for an incoming call, false for outgoing.'}, 'recordingUrl': {'type': 'string'}}}
fub_search_people
Search people (contacts/leads)
Search contacts and leads. Criteria combine with AND. Name filters are partial matches. Newest first by default. People in the Trash stage are excluded unless includeTrash is true. Not every field is returned by default — pass `fields` (e.g. "allFields" or a comma list) for more. FUB: GET /v1/people.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'name': {'type': 'string', 'description': 'Partial match on full name.'}, 'next': {'type': 'string', 'description': "Cursor from the previous page's _metadata.next. Recommended over offset."}, 'sort': {'type': 'string', 'description': 'Sort field, e.g. "created", "lastActivity", "name"; prefix "-" for descending.'}, 'tags': {'type': 'string', 'description': 'Comma-separated tags; matches ANY ("Foo,Bar").'}, 'email': {'type': 'string', 'description': 'Exact email address.'}, 'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Page size, 1-100 (FUB default 10).'}, 'phone': {'type': 'string', 'description': 'Phone number.'}, 'stage': {'type': 'string', 'description': 'Stage name, e.g. "Lead", "Past Client" (see fub_list_stages).'}, 'fields': {'type': 'string', 'description': 'Comma-separated fields to return, or "allFields" / "allCustom".'}, 'offset': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Rows to skip. For deep paging prefer `next`.'}, 'source': {'type': 'string', 'description': 'Lead source, e.g. "Zillow".'}, 'lastName': {'type': 'string', 'description': 'Partial match on last name.'}, 'contacted': {'type': 'boolean', 'description': 'Whether they have been contacted.'}, 'firstName': {'type': 'string', 'description': 'Partial match on first name.'}, 'assignedTo': {'type': 'string', 'description': 'Full name of the assigned agent.'}, 'priceAbove': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Price above this value.'}, 'priceBelow': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Price below this value.'}, 'smartListId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Only people matching this Smart List.'}, 'createdAfter': {'type': 'string', 'description': 'ISO-8601 UTC, e.g. 2026-07-01T00:00:00Z.'}, 'includeTrash': {'type': 'boolean', 'description': 'Include people in the Trash stage.'}, 'updatedAfter': {'type': 'string', 'description': 'ISO-8601 UTC.'}, 'assignedPondId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Assigned pond id.'}, 'assignedUserId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': "Assigned agent's user id."}, 'lastActivityAfter': {'type': 'string', 'description': 'e.g. "2026-01-31 00:00:00".'}, 'lastActivityBefore': {'type': 'string', 'description': 'e.g. "2026-01-31 00:00:00".'}}}
fub_send_lead_event
Send in a lead / lead event
Add a new lead or record activity on an existing one — FUB's documented way to create leads. FUB de-duplicates by email/phone (or use person.id to target a contact), routes the lead per Lead Flow, notifies the agent and runs action plans for Registration / Inquiry types. A 204 means the lead flow for this source is archived and the event was ignored. FUB: POST /v1/events.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['type', 'person'], 'properties': {'type': {'enum': ['Registration', 'Inquiry', 'Seller Inquiry', 'Property Inquiry', 'General Inquiry', 'Viewed Property', 'Saved Property', 'Visited Website', 'Incoming Call', 'Unsubscribed', 'Property Search', 'Saved Property Search', 'Visited Open House', 'Viewed Page'], 'type': 'string', 'description': 'Event type. "Inquiry" becomes Property or General Inquiry automatically.'}, 'person': {'type': 'object', 'properties': {'id': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Existing person id to attach this event to.'}, 'tags': {'type': 'array', 'items': {'type': 'string'}}, 'price': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'stage': {'type': 'string'}, 'emails': {'type': 'array', 'items': {'type': 'object', 'required': ['value'], 'properties': {'type': {'type': 'string', 'description': 'e.g. "home", "work".'}, 'value': {'type': 'string', 'description': 'The email address.'}}}}, 'phones': {'type': 'array', 'items': {'type': 'object', 'required': ['value'], 'properties': {'type': {'type': 'string', 'description': 'e.g. "mobile", "home", "work".'}, 'value': {'type': 'string', 'description': 'The phone number, e.g. 888-555-1234.'}}}}, 'source': {'type': 'string'}, 'lastName': {'type': 'string'}, 'addresses': {'type': 'array', 'items': {'type': 'object', 'properties': {'city': {'type': 'string'}, 'code': {'type': 'string', 'description': 'Postal/ZIP code, as a string.'}, 'type': {'type': 'string', 'description': 'e.g. "home", "work", "mailing".'}, 'state': {'type': 'string', 'description': 'Abbreviated state code, e.g. "CA".'}, 'street': {'type': 'string'}, 'country': {'type': 'string'}}}}, 'contacted': {'type': 'boolean'}, 'firstName': {'type': 'string'}, 'sourceUrl': {'type': 'string'}, 'assignedTo': {'type': 'string', 'description': 'Full name of the agent.'}, 'customFields': {'type': 'object', 'description': 'Account custom fields, keyed by their API name (e.g. {"customBirthday": "1990-02-16"}). See the `name` column of fub_list_custom_fields. null clears a value.', 'propertyNames': {'type': 'string', 'pattern': '^custom[A-Za-z0-9_]+$'}, 'additionalProperties': {'type': ['string', 'number', 'null']}}, 'assignedUserId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'assignedLenderId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'assignedLenderName': {'type': 'string'}}, 'description': 'The lead.'}, 'source': {'type': 'string', 'description': 'Lead source name, e.g. "MyWebsite.com". Used for Lead Flow routing.'}, 'system': {'type': 'string', 'description': 'Name of the system sending the lead.'}, 'message': {'type': 'string', 'description': 'A message from the lead.'}, 'pageUrl': {'type': 'string', 'description': 'For Viewed Page events.'}, 'property': {'type': 'object', 'properties': {'lot': {'type': 'string', 'description': 'Acres.'}, 'url': {'type': 'string'}, 'area': {'type': 'string', 'description': 'Square feet.'}, 'city': {'type': 'string'}, 'code': {'type': 'string'}, 'type': {'type': 'string'}, 'price': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'state': {'type': 'string'}, 'street': {'type': 'string'}, 'forRent': {'type': 'boolean'}, 'bedrooms': {'type': 'string'}, 'bathrooms': {'type': 'string'}, 'mlsNumber': {'type': 'string'}}, 'description': 'The property the event is about.'}, 'pageTitle': {'type': 'string', 'description': 'For Viewed Page events.'}, 'occurredAt': {'type': 'string', 'description': 'ISO-8601 time it happened. Events older than a day are historical and do not trigger workflows.'}, 'description': {'type': 'string', 'description': 'Any additional information.'}}}
fub_update_deal
Update a deal
Update a deal — move it to another stage, change price, dates, people or agents. peopleIds/userIds replace the full list. FUB: PUT /v1/deals/{id}.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id'], 'properties': {'id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The deal id.', 'exclusiveMinimum': 0}, 'name': {'type': 'string'}, 'price': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'stageId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Move to this pipeline stage.'}, 'userIds': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'peopleIds': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'description': {'type': 'string'}, 'possessionDate': {'type': 'string'}, 'commissionValue': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'dueDiligenceDate': {'type': 'string'}, 'projectedCloseDate': {'type': 'string', 'description': 'Projected close date.'}, 'earnestMoneyDueDate': {'type': 'string'}, 'finalWalkThroughDate': {'type': 'string'}, 'mutualAcceptanceDate': {'type': 'string'}}}
fub_update_person
Update a person
Update a contact's fields. CAUTION: `tags` REPLACES all tags unless mergeTags is true; `phones` and `emails` REPLACE the full list (send existing ones too). Setting contacted=true pauses action plans. source/sourceUrl cannot be changed after creation. FUB: PUT /v1/people/{id}.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id'], 'properties': {'id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The person id.', 'exclusiveMinimum': 0}, 'tags': {'type': 'array', 'items': {'type': 'string'}}, 'price': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'stage': {'type': 'string', 'description': 'Stage name (see fub_list_stages).'}, 'emails': {'type': 'array', 'items': {'type': 'object', 'required': ['value'], 'properties': {'type': {'type': 'string', 'description': 'e.g. "home", "work".'}, 'value': {'type': 'string', 'description': 'The email address.'}, 'isPrimary': {'type': 'boolean'}}}}, 'phones': {'type': 'array', 'items': {'type': 'object', 'required': ['value'], 'properties': {'type': {'type': 'string', 'description': 'e.g. "mobile", "home", "work".'}, 'value': {'type': 'string', 'description': 'The phone number, e.g. 888-555-1234.'}, 'isPrimary': {'type': 'boolean'}}}}, 'lastName': {'type': 'string'}, 'addresses': {'type': 'array', 'items': {'type': 'object', 'properties': {'city': {'type': 'string'}, 'code': {'type': 'string', 'description': 'Postal/ZIP code, as a string.'}, 'type': {'type': 'string', 'description': 'e.g. "home", "work", "mailing".'}, 'state': {'type': 'string', 'description': 'Abbreviated state code, e.g. "CA".'}, 'street': {'type': 'string'}, 'country': {'type': 'string'}}}}, 'contacted': {'type': 'boolean'}, 'firstName': {'type': 'string'}, 'mergeTags': {'type': 'boolean', 'description': 'Merge `tags` into the existing tags instead of replacing them.'}, 'assignedTo': {'type': 'string', 'description': 'Full name of the agent.'}, 'background': {'type': 'string', 'description': 'Background notes (multi-line).'}, 'timeframeId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'customFields': {'type': 'object', 'description': 'Account custom fields, keyed by their API name (e.g. {"customBirthday": "1990-02-16"}). See the `name` column of fub_list_custom_fields. null clears a value.', 'propertyNames': {'type': 'string', 'pattern': '^custom[A-Za-z0-9_]+$'}, 'additionalProperties': {'type': ['string', 'number', 'null']}}, 'assignedPondId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'assignedUserId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'assignedLenderId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'assignedLenderName': {'type': 'string'}}}
fub_update_task
Update a task
Update a task — mark it complete, rename, retype or reassign it. FUB: PUT /v1/tasks/{id}.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id'], 'properties': {'id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The task id.', 'exclusiveMinimum': 0}, 'name': {'type': 'string'}, 'type': {'enum': ['Follow Up', 'Call', 'Text', 'Email', 'Appointment', 'Showing', 'Closing', 'Open House', 'Thank You'], 'type': 'string'}, 'personId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'assignedTo': {'type': 'string'}, 'isCompleted': {'type': 'boolean', 'description': 'Mark complete (true) or reopen (false).'}, 'assignedUserId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}}
추가됨
fub_update_deal
2026년 10월 2일 2:40 AM
추가됨
fub_create_deal
2026년 10월 2일 2:40 AM
추가됨
fub_update_task
2026년 10월 2일 2:40 AM
추가됨
fub_create_task
2026년 10월 2일 2:40 AM
추가됨
fub_log_call
2026년 10월 2일 2:40 AM
추가됨
fub_add_note
2026년 10월 2일 2:40 AM
추가됨
fub_update_person
2026년 10월 2일 2:40 AM
추가됨
fub_send_lead_event
2026년 10월 2일 2:40 AM
추가됨
fub_list_custom_fields
2026년 10월 2일 2:40 AM
추가됨
fub_list_users
2026년 10월 2일 2:40 AM
추가됨
fub_list_stages
2026년 10월 2일 2:40 AM
추가됨
fub_list_pipelines
2026년 10월 2일 2:40 AM
추가됨
fub_list_deals
2026년 10월 2일 2:40 AM
추가됨
fub_list_appointments
2026년 10월 2일 2:40 AM
추가됨
fub_list_tasks
2026년 10월 2일 2:40 AM
추가됨
fub_list_text_messages
2026년 10월 2일 2:40 AM
추가됨
fub_list_calls
2026년 10월 2일 2:40 AM
추가됨
fub_list_events
2026년 10월 2일 2:40 AM
추가됨
fub_check_duplicate_person
2026년 10월 2일 2:40 AM
추가됨
fub_get_person
2026년 10월 2일 2:40 AM
추가됨
fub_search_people
2026년 10월 2일 2:40 AM
추가됨
fub_get_identity
2026년 10월 2일 2:40 AM