### Response Examples Source: https://docs.followupboss.com/reference/peoplerelationships-post Example JSON values for 200 and 400 response codes. ```json "examples": { "Result": { "value": "{}" } } ``` -------------------------------- ### POST /inboxApps/install Source: https://docs.followupboss.com/reference/inbox-apps-install Installs your Inbox App for an account. ```APIDOC ## POST /inboxApps/install ### Description Installs your Inbox App for an account. ### Method POST ### Endpoint /inboxApps/install ### Request Body - **publishedInboxAppId** (integer) - Required - Your Published Inbox App ID. - **userId** (integer) - Required - The User ID to scope the Inbox App to, or 0 for account-wide scope. - **subscriptionUrl** (string) - Required - The webhook URL you will receive Inbox App replies at. ### Request Example { "publishedInboxAppId": 1, "userId": 1, "subscriptionUrl": "https://example.com/webhook" } ### Response #### Success Response (201) - **id** (integer) - The ID of the installed app. - **created** (string) - Creation timestamp. - **updated** (string) - Last updated timestamp. - **createdById** (integer) - ID of the user who created the installation. - **updatedById** (integer) - ID of the user who last updated the installation. - **status** (integer) - Status code of the installation. - **name** (string) - Name of the Inbox App. - **publishedInboxAppId** (integer) - The ID of the published app. - **userId** (integer) - The user ID scope. - **canReply** (boolean) - Whether the app can reply. #### Response Example { "id": 1, "created": "2024-01-01T12:00:00Z", "updated": "2024-01-01T12:00:00Z", "createdById": 1, "updatedById": 1, "status": 10, "name": "Example Inbox App", "publishedInboxAppId": 1, "userId": 1, "canReply": true } ``` -------------------------------- ### Error Response Example Source: https://docs.followupboss.com/reference/inbox-apps-add-note Example of a 400 Bad Request response returned when the request body is missing. ```json { "errorMessage": "body is required." } ``` -------------------------------- ### GET /stages Source: https://docs.followupboss.com/reference/stages-get Retrieve a list of stages. ```APIDOC ## GET /stages ### Description Retrieve a list of stages. ### Method GET ### Endpoint /stages ### Parameters #### Query Parameters - **limit** (integer) - Optional - Number of results to return. Max 100. Default: 10 - **offset** (integer) - Optional - Specifies the number of rows to skip before starting to return results. Default: 0 - **sort** (string) - Optional - Sorts the stages by `orderWeight`, `id` or `name`. Default: orderWeight ### Response #### Success Response (200) - **_metadata** (object) - Metadata about the collection. - **stages** (array) - List of stage objects. #### Response Example { "_metadata": { "collection": "stages", "offset": 0, "limit": 20, "total": 8 }, "stages": [ { "id": 1, "name": "Contact", "orderWeight": 1000, "isProtected": false, "peopleCount": 16 } ] } ``` -------------------------------- ### GET /inboxApps/installedApps/{publishedInboxAppId} Source: https://docs.followupboss.com/reference/view-inbox-app-installations Lists Inbox App installation(s) and ID(s) for your Published Inbox App on the current FUB account. ```APIDOC ## GET /inboxApps/installedApps/{publishedInboxAppId} ### Description Lists Inbox App installation(s) and ID(s) for your Published Inbox App on the current FUB account. ### Method GET ### Endpoint /inboxApps/installedApps/{publishedInboxAppId} ### Parameters #### Path Parameters - **publishedInboxAppId** (string) - Required - Your Published Inbox App ID, to display installations of. ### Response #### Success Response (200) - **inboxApps** (array) - List of installed inbox apps. - **inboxAppId** (integer) - The ID of the inbox app. - **userId** (integer) - The ID of the user. - **created** (string) - The creation timestamp. #### Response Example { "inboxApps": [ { "inboxAppId": 1, "userId": 0, "created": "2025-01-01T12:12:12Z" }, { "inboxAppId": 9, "userId": 5, "created": "2025-01-01T12:12:12Z" } ] } ``` -------------------------------- ### Request Inbox App Installation Source: https://docs.followupboss.com/docs/inbox-apps-installation-lifecycle Payload required to initiate an Inbox App installation via the POST /v1/inboxApps/install endpoint. ```json { "publishedInboxAppId": 1, "userId": 1, "subscriptionUrl": "https://example.test/inbox-app-reply" } ``` -------------------------------- ### GET /deals/{id} Source: https://docs.followupboss.com/reference/deals-id-get Retrieve a deal by id. ```APIDOC ## GET /deals/{id} ### Description Retrieve a deal by id. ### Method GET ### Endpoint /deals/{id} ### Parameters #### Path Parameters - **id** (integer) - Required - The id of the deal. ### Response #### Success Response (200) - **pipelineId** (integer) - The ID of the pipeline. - **stageId** (integer) - The ID of the stage. - **enteredStageAt** (string) - Timestamp when the deal entered the stage. - **id** (integer) - The ID of the deal. - **name** (string) - The name of the deal. - **type** (integer) - The type of the deal. - **status** (string) - The status of the deal. - **price** (integer) - The price of the deal. - **createdAt** (string) - Timestamp when the deal was created. - **orderWeight** (integer) - The order weight of the deal. - **description** (string) - Description of the deal. - **projectedCloseDate** (object) - The projected close date. - **people** (array) - List of people associated with the deal. - **users** (array) - List of users associated with the deal. #### Response Example { "pipelineId": 100, "stageId": 16, "enteredStageAt": "2017-04-14T18:31:20Z", "id": 2146, "name": "adding deal", "type": 0, "status": "Active", "price": 216000, "createdAt": "2017-04-14T18:31:19Z", "orderWeight": 6000, "description": "A deal for an example", "projectedCloseDate": null, "people": [ { "id": 10, "name": "Yolanda Smith", "avatar": "" } ], "users": [ { "id": 1, "name": "John Smith" } ], "customField1": "A sample custom field.", "customField2": "2021-04-01T18:48:19Z", "customField3": 3, "customField4": "A sample dropdown selection.", "agentCommission": 50, "teamCommission": 50 } ``` -------------------------------- ### Reaction Webhook Event Payload Source: https://docs.followupboss.com/reference/webhooks-guide Example JSON payload for reactionCreated webhook events. ```json { "eventId": "e0ac086a-879a-4d8b-869a-fe53151e34f4", "eventCreated": "2019-07-01T17:12:32+00:00", "event": "reactionCreated", "resourceIds": [9387], "uri": "https://api.followupboss.com/v1/reactions/9387", "data": { "refType": "Note", "refId": 3827, "refUri": "https://api.followupboss.com/v1/notes/3827?includeReactions=true" } } ``` -------------------------------- ### Example Webhook HTTP POST Request Source: https://docs.followupboss.com/reference/webhooks-guide The structure of the HTTP POST request sent to your registered webhook endpoint when a resource event occurs. ```http POST /callbacks/fub/peoplecreated HTTP/1.1 Content-Type: application/json ... { "eventId": "152d60c0-79da-4018-a9af-28aec8a71c94", "eventCreated": "2016-12-12T15:19:21+00:00", "event": "peopleCreated", "resourceIds": [1234,3244,3232], "uri": "https://api.followupboss.com/v1/people?id=1234,3244,3232" } ``` -------------------------------- ### Threaded Reply Webhook Event Payload Source: https://docs.followupboss.com/reference/webhooks-guide Example JSON payload for threadedReplyCreated webhook events. ```json { "eventId": "e0ac086a-879a-4d8b-869a-fe53151e34f4", "eventCreated": "2019-07-01T17:12:32+00:00", "event": "threadedReplyCreated", "resourceIds": [9387], "uri": "https://api.followupboss.com/v1/threadedReplies/9387", "data": { "refType": "Note", "refId": 3827, "refUri": "https://api.followupboss.com/v1/notes/3827?includeThreadedReplies=true" } } ``` -------------------------------- ### peopleTagsCreated Event Notification Source: https://docs.followupboss.com/reference/webhooks-guide Example JSON payload for a peopleTagsCreated event, including the new tag name and affected resource IDs. ```json { "eventId": "e8d9f150-5dac-4c53-8c0f-06560dc4ec08", "eventCreated": "2019-07-01T17:22:28+00:00", "event": "peopleTagsCreated", "resourceIds": [ 40773, 40772 ], "uri": "https://api.followupboss.com/v1/people?id=40773,40772", "data": { "tags": [ "Kingsbury" ] } } ``` -------------------------------- ### peopleStageUpdated Event Notification Source: https://docs.followupboss.com/reference/webhooks-guide Example JSON payload for a peopleStageUpdated event, showing the updated stage name. ```json { "eventId": "e0ac086a-879a-4d8b-869a-fe53151e34f4", "eventCreated": "2019-07-01T17:12:32+00:00", "event": "peopleStageUpdated", "resourceIds": [ 40942 ], "uri": "https://api.followupboss.com/v1/people?id=40942", "data": { "stage": "Free Trial" } } ``` -------------------------------- ### peopleDeleted Event Notification Source: https://docs.followupboss.com/reference/webhooks-guide Example JSON payload for a peopleDeleted event, which occurs when a person and their associated data are removed. ```json { "eventId": "64d0ad74-3aab-4b30-89c9-7337398cf8b4", "eventCreated": "2016-12-12T15:19:21+00:00", "event": "peopleDeleted", "resourceIds": [1234,5322,29456], "uri": null } ``` -------------------------------- ### POST /v1/inboxApps/install Source: https://docs.followupboss.com/docs/inbox-apps-installation-lifecycle Initiates the installation of an Inbox App by providing the app ID, user scope, and a subscription URL for webhooks. ```APIDOC ## POST /v1/inboxApps/install ### Description Initiates an installation for an Inbox App. Follow Up Boss will verify the subscription URL before completing the installation. ### Method POST ### Endpoint /v1/inboxApps/install ### Request Body - **publishedInboxAppId** (integer) - Required - Your Published Inbox App ID provided by FUB. - **userId** (integer) - Required - The FUB User to scope the Inbox App for, or 0 for an account-wide scope. - **subscriptionUrl** (string) - Required - The URL to receive webhooks for replies to Inbox App conversations. ### Request Example { "publishedInboxAppId": 1, "userId": 1, "subscriptionUrl": "https://example.test/inbox-app-reply" } ### Response #### Success Response (201) - **Inbox App ID** (integer) - The ID of the newly installed or reactivated Inbox App. ``` -------------------------------- ### Deal JSON Example Source: https://docs.followupboss.com/reference/deals-post A sample JSON object representing a deal with various date, price, and custom fields. ```json { "name": "Deal", "description": "A seller deal", "stageId": 1, "projectedCloseDate": "2022-01-27T05:00:00.000Z", "earnestMoneyDueDate": "2022-01-22T05:00:00.000Z", "mutualAcceptanceDate": "2022-01-23T05:00:00.000Z", "dueDiligenceDate": "2022-01-17T05:00:00.000Z", "finalWalkThroughDate": "2022-01-25T05:00:00.000Z", "possessionDate": "2022-01-27T05:00:00.000Z", "price": 30, "peopleIds": [ 2, 5, 6 ], "userIds": [ 208, 210 ], "customField1": "A sample custom field.", "customField2": "2021-04-01T18:48:19Z", "customField3": 3, "customField4": "A sample dropdown selection.", "agentCommission": 50, "teamCommission": 50 } ``` -------------------------------- ### OpenAPI Definition for Get Participants Source: https://docs.followupboss.com/reference/inbox-apps-get-participants Contains the full OpenAPI specification for the endpoint, including security schemes, path parameters, and response examples. ```json { "openapi": "3.1.0", "info": { "title": "API Settings", "version": "1.0" }, "servers": [ { "url": "https://api.followupboss.com/v1" } ], "components": { "securitySchemes": { "sec0": { "type": "http", "scheme": "basic" } } }, "security": [ { "sec0": [] } ], "paths": { "/inboxApps/{inboxAppId}/conversations/{extConversationId}/participants": { "get": { "summary": "Get Participants", "description": "Retrieves participants in an Inbox App conversation.", "operationId": "inbox-apps-get-participants", "parameters": [ { "name": "inboxAppId", "in": "path", "description": "The Inbox App ID sending the message.", "schema": { "type": "string" }, "required": true }, { "name": "extConversationId", "in": "path", "description": "The unique identifier that references the conversation you are updating.", "schema": { "type": "string" }, "required": true } ], "responses": { "200": { "description": "200", "content": { "application/json": { "examples": { "Result": { "value": "[\n {\n \"id\": 1,\n \"status\": \"active\",\n \"userId\": null,\n \"personId\": null,\n \"name\": \"John Doe\",\n \"phone\": \"+14075550123\",\n \"email\": \"john@example.com\",\n \"isAutomation\": false\n },\n {\n \"id\": 2,\n \"status\": \"active\",\n \"userId\": 1,\n \"personId\": null,\n \"name\": null,\n \"phone\": null,\n \"email\": null,\n \"isAutomation\": false\n },\n {\n \"id\": 3,\n \"status\": \"deleted\",\n \"userId\": null,\n \"personId\": 1,\n \"name\": null,\n \"phone\": null,\n \"email\": null,\n \"isAutomation\": false\n }\n]" } }, "schema": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "integer", "example": 1, "default": 0 }, "status": { "type": "string", "example": "active" }, "userId": {}, "personId": {}, "name": { "type": "string", "example": "John Doe" }, "phone": { "type": "string", "example": "+14075550123" }, "email": { "type": "string", "example": "john@example.com" }, "isAutomation": { "type": "boolean", "example": false, "default": true } } } } } } }, "400": { "description": "400", "content": { "application/json": { "examples": { "Result": { "value": "{\n\t\"errorMessage\": \"externalConversationId is required.\"\n}" } }, "schema": { "object": { "properties": { "errorMessage": { "type": "string", "example": "externalConversationId is required." } } } } } } } }, "deprecated": false } } }, "x-readme": { "headers": [], "explorer-enabled": true, "proxy-enabled": true }, "x-readme-fauxas": true, "_id": "58b53c341065f9c438aa1f7e:670c5a0ba3c2b0003ef32aef" } ``` -------------------------------- ### Authenticate with API Key Source: https://docs.followupboss.com/docs Example of using HTTP Basic Authentication with a Follow Up Boss API key via cURL. ```bash curl https://api.followupboss.com/me -u "fka_0qaLqXMChGLM4y27M4fJ9yYoajevmePhPU:" ``` -------------------------------- ### Text Message Schema Example Source: https://docs.followupboss.com/reference/textmessages-id-get Example values for text message properties including timestamps, boolean flags, and identifiers. ```json "example": "2020-08-07T20:28:31Z" }, "isIncoming": { "type": "boolean", "example": false, "default": true }, "archived": { "type": "boolean", "example": true, "default": true }, "read": { "type": "boolean", "example": true, "default": true }, "sharedInboxId": { "type": "integer", "example": 0, "default": 0 }, "actionPlanId": { "type": "integer", "example": 0, "default": 0 }, "groupTextId": {}, "isExternal": { "type": "boolean", "example": true, "default": true }, "externalUrl": {}, "externalLabel": {}, "systemId": {}, "media": { "type": "array", "items": { "type": "object", "properties": {} } }, "systemName": {} ``` -------------------------------- ### cURL Request for Rate Limits Source: https://docs.followupboss.com/reference/rate-limit-limits-get Example request using cURL to retrieve rate limit configurations, requiring X-System and X-System-Key headers. ```bash curl --request GET \ --url https://api.followupboss.com/v1/v1/rateLimit/limits \ --header 'accept: application/json' \ --header 'authorization: Basic ••••' ``` -------------------------------- ### Deal Update Response Example Source: https://docs.followupboss.com/reference/deals-id-put Represents a successful 200 OK response containing the updated deal object. ```json { "name": "New Deal", "stageId": 2, "description": "The best deal", "projectedCloseDate": "2001-01-02", "earnestMoneyDueDate": "2001-01-01T05:00:00.000Z", "mutualAcceptanceDate": "2001-01-01T05:00:00.000Z", "dueDiligenceDate": "2001-01-01T05:00:00.000Z", "finalWalkThroughDate": "2001-01-01T05:00:00.000Z", "possessionDate": "2001-01-01T05:00:00.000Z", "price": 30, "peopleIds": [ 2, 5, 6 ], "userIds": [ 208, 210 ], "customField1": "A sample custom field.", "customField2": "2021-04-01T18:48:19Z", "customField3": 3, "customField4": "A sample dropdown selection.", "agentCommission": 50, "teamCommission": 50 } ``` -------------------------------- ### OpenAPI Definition for View Installed Inbox Apps Source: https://docs.followupboss.com/reference/view-inbox-app-installations This OpenAPI specification defines the endpoint for retrieving installed Inbox Apps, including the required path parameter and response structures. ```json { "openapi": "3.1.0", "info": { "title": "API Settings", "version": "1.0" }, "servers": [ { "url": "https://api.followupboss.com/v1" } ], "components": { "securitySchemes": { "sec0": { "type": "http", "scheme": "basic" } } }, "security": [ { "sec0": [] } ], "paths": { "/inboxApps/installedApps/{publishedInboxAppId}": { "get": { "summary": "View Installed Inbox Apps", "description": "Lists Inbox App installation(s) and ID(s) for your Published Inbox App on the current FUB account.", "operationId": "view-inbox-app-installations", "parameters": [ { "name": "publishedInboxAppId", "in": "path", "description": "Your Published Inbox App ID, to display installations of.", "schema": { "type": "string" }, "required": true } ], "responses": { "200": { "description": "200", "content": { "application/json": { "examples": { "Result": { "value": "{\n \"inboxApps\": [\n {\n \"inboxAppId\": 1,\n \"userId\": 0,\n \"created\": \"2025-01-01T12:12:12Z\"\n },\n {\n \"inboxAppId\": 9,\n \"userId\": 5,\n \"created\": \"2025-01-01T12:12:12Z\"\n }\n ]\n}" } }, "schema": { "type": "object", "properties": { "inboxApps": { "type": "array", "items": { "type": "object", "properties": { "inboxAppId": { "type": "integer", "example": 1, "default": 0 }, "userId": { "type": "integer", "example": 0, "default": 0 }, "created": { "type": "string", "example": "2025-01-01T12:12:12Z" } } } } } } } } }, "403": { "description": "403", "content": { "application/json": { "examples": { "Result": { "value": "{\n \"errorMessage\": \"You do not have permission to view installations for this Published Inbox App.\"\n}" } }, "schema": { "type": "object", "properties": { "errorMessage": { "type": "string", "example": "You do not have permission to view installations for this Published Inbox App." } } } } } } }, "deprecated": false } } }, "x-readme": { "headers": [], "explorer-enabled": true, "proxy-enabled": true }, "x-readme-fauxas": true, "_id": "58b53c341065f9c438aa1f7e:68f7ec91ed0a88b8511809a8" } ``` -------------------------------- ### POST /pipelines Source: https://docs.followupboss.com/reference/pipelines-post Creates a new pipeline with specified stages and configuration. ```APIDOC ## POST /pipelines ### Description Creates a new pipeline in the system. ### Method POST ### Endpoint /pipelines ### Request Body - **name** (string) - Required - The name of the pipeline. - **description** (string) - Optional - A description for the pipeline. - **orderWeight** (integer) - Optional - The display order weight of the pipeline (default: 0). - **stages** (array) - Optional - A list of stages within the pipeline. - **name** (string) - Required - Name of the stage. - **description** (string) - Optional - Description of the stage. - **orderWeight** (integer) - Optional - Display order weight of the stage (default: 0). - **color** (string) - Optional - Hex color code for the stage. - **closedStage** (boolean) - Optional - Whether the stage is considered closed (default: true). ### Request Example { "name": "Buyer pipeline", "description": "A pipeline for buyers", "orderWeight": 1000, "stages": [ { "name": "First Stage", "description": "", "orderWeight": 1000, "color": "#FFFFFF", "closedStage": false } ] } ### Response #### Error Response (400) - **Result** (object) - Returns an empty object on failure. ``` -------------------------------- ### POST /pipelines Source: https://docs.followupboss.com/reference/pipelines-post Add a new pipeline to the system. Requires owner permissions. ```APIDOC ## POST /pipelines ### Description Add a pipeline. Only the owner has access to create and modify pipelines. ### Method POST ### Endpoint /pipelines ### Request Body - **name** (string) - Required - Name of the pipeline. - **description** (string) - Optional - Description of the pipeline. - **stages** (array) - Optional - An array of stage objects that should be associated with the pipeline. - **orderWeight** (integer) - Optional - Set this value to enforce a specific sort order. ### Request Example { "name": "Buyer pipeline", "description": "A pipeline for buyers", "orderWeight": 1000, "stages": [ { "name": "First Stage", "description": "", "orderWeight": 1000, "color": "#FFFFFF", "closedStage": false }, { "name": "Second Stage", "description": "", "orderWeight": 2000, "closedStage": true } ] } ### Response #### Success Response (200) - **name** (string) - Name of the pipeline. - **description** (string) - Description of the pipeline. - **orderWeight** (integer) - Sort order value. - **stages** (array) - List of stages associated with the pipeline. ``` -------------------------------- ### cURL Request Example Source: https://docs.followupboss.com/reference/rate-limit-usage-get A cURL command to retrieve rate limit usage data, requiring Basic authentication headers. ```bash curl --request GET \ --url https://api.followupboss.com/v1/v1/rateLimit/usage \ --header 'accept: application/json' \ --header 'authorization: Basic ••••' ``` -------------------------------- ### GET /timeframes Source: https://docs.followupboss.com/reference/timeframes-get Retrieves a list of all available timeframes. ```APIDOC ## GET /timeframes ### Description Get a list of timeframes. ### Method GET ### Endpoint /timeframes ### Response #### Success Response (200) - **_metadata** (object) - Metadata about the collection. - **timeframes** (array) - A list of timeframe objects. #### Response Example { "_metadata": { "collection": "timeframes", "offset": 0, "limit": 10, "total": 0, "next": null, "nextLink": null }, "timeframes": [ { "id": 1, "timeframe": "0-3 Months" }, { "id": 2, "timeframe": "3-6 Months" }, { "id": 3, "timeframe": "6-12 Months" }, { "id": 4, "timeframe": "12+ Months" }, { "id": 5, "timeframe": "No Plans" } ] } ``` -------------------------------- ### Create an OAuth Client App Source: https://docs.followupboss.com/docs/getting-started-with-oauth Use the POST method to register a new OAuth client, providing system credentials in the headers and an array of redirect URIs in the body. ```curl curl --location --request POST 'https://api.followupboss.com/v1/oauthApps' \ --header 'x-System: ' \ --header 'X-System-Key: ' \ --header 'Content-Type: application/json' \ --data '{ "redirectUris": ["http://www.yoursite.com/oauth/redirect"], }' ``` -------------------------------- ### GET /personAttachments/{id} Source: https://docs.followupboss.com/reference/personattachments-id-get Retrieve an attachment by ID. ```APIDOC ## GET /personAttachments/{id} ### Description Retrieve an attachment by ID. ### Method GET ### Endpoint /personAttachments/{id} ### Parameters #### Path Parameters - **id** (integer) - Required - ID of the attachment. #### Header Parameters - **X-System** (string) - Required - Registered system name. - **X-System-Key** (string) - Required - Registered system API key. ### Response #### Success Response (200) - **personId** (integer) - ID of the person associated with the attachment. - **fileName** (string) - Name of the file. - **fileSize** (object) - Size of the file. - **id** (integer) - ID of the attachment. - **mimeType** (string) - MIME type of the attachment. - **uri** (string) - URI of the attachment. - **thumbnailUri** (object) - URI of the thumbnail. - **status** (string) - Status of the attachment. - **createdAt** (string) - Creation timestamp. - **createdById** (integer) - ID of the user who created the attachment. - **createdByName** (string) - Name of the user who created the attachment. - **is_external** (integer) - Flag indicating if the attachment is external. - **system_id** (integer) - ID of the system. #### Response Example { "personId": 1, "fileName": "test.jpg", "fileSize": null, "id": 2, "mimeType": "link", "uri": "https://test.com/myfile", "thumbnailUri": null, "status": "created", "createdAt": "2022-11-16T03:44:52Z", "createdById": 1, "createdByName": "Olivia Admin", "is_external": 1, "system_id": 123 } ``` -------------------------------- ### Appointment JSON Response Example Source: https://docs.followupboss.com/reference/appointments-post Represents a typical JSON response object for an appointment, including details about invitees, timing, and metadata. ```json { "id":13854, "created":"2020-09-04T15:13:18Z", "updated":"2020-09-04T15:13:18Z", "createdById":1, "updatedById":1, "title":"Lunch", "description":"Tom and John Q. are having lunch. Gotta try the new \"impossible\" burger", "start":"2020-09-04T16:00:00Z", "end":"2020-09-04T17:00:00Z", "allDay":false, "originFub":true, "location":"", "invitees":[ { "userId":1, "personId":null, "name":"Tom Minch", "email":"tom@example.com", "picture":"https://placekitten.com/408/287" }, { "userId":null, "personId":44673, "name":"John Q Customer", "email":"johnq@example.com" } ], "typeId": null, "type": null, "outcomeId": null, "outcome": null, "externalEventLink":null, "externalCalendarId":null, "isEditable":true, "detailsVisible":true } ``` -------------------------------- ### GET /pipelines/{id} Source: https://docs.followupboss.com/reference/pipelines-id-get Retrieve a pipeline by id. ```APIDOC ## GET /pipelines/{id} ### Description Retrieve a pipeline by id. ### Method GET ### Endpoint /pipelines/{id} ### Parameters #### Path Parameters - **id** (integer) - Required - The id of the pipeline. ### Response #### Success Response (200) - **id** (integer) - The unique identifier of the pipeline. - **name** (string) - The name of the pipeline. - **description** (string) - A description of the pipeline. - **orderWeight** (integer) - The order weight of the pipeline. - **stages** (array) - A list of stages within the pipeline. #### Response Example { "id": 1, "name": "Contact Pipeline", "description": "A pipeline for contacts", "orderWeight": 1000, "stages": [ { "id": 1, "name": "Contact", "description": "", "orderWeight": 3000, "color": "#FFFFFF" }, { "id": 2, "name": "Lead", "description": "", "orderWeight": 4000, "color": "" } ] } ``` -------------------------------- ### GET /groups/:id Source: https://docs.followupboss.com/reference/groups-id-get Retrieve a group by id. ```APIDOC ## GET /groups/:id ### Description Retrieve a group by id. ### Method GET ### Endpoint /groups/:id ### Parameters #### Path Parameters - **id** (string) - Required - The unique identifier of the group. ### Accessibility Restrictions This is not accessible by lender accounts. ``` -------------------------------- ### Example JSON Response Source: https://docs.followupboss.com/reference/rate-limit-usage-get A sample JSON response showing the structure of usage data, including total requests, rate-limited counts, and current account limits. ```json { "system": "your-system", "period": "last_24h", "usage": { "total_requests": 1247, "rate_limited_requests": 23, "rate_limit_percentage": 1.84, "peak_hour": "2026-05-19T14:00:00Z", "current_limits": { "across_all_accounts": { "default": 750, "GET.people": 100 }, "per_account": { "default": 25 } } } } ``` -------------------------------- ### Example JSON Response Source: https://docs.followupboss.com/reference/rate-limit-limits-get The structure of the response body containing system name and current rate limit configurations. ```json { "system": "your-system", "current_limits": { "across_all_accounts": { "default": 750, "GET.people": 100 }, "per_account": { "default": 25 } } } ``` -------------------------------- ### Configure System Headers Source: https://docs.followupboss.com/docs Required HTTP headers for identifying the integration system in every API request. ```http X-System: AwesomeWebsiteBuilder X-System-Key: 560270f7914b5b4a5f4dc1793ebc2796 ``` -------------------------------- ### GET /automations/{id} Source: https://docs.followupboss.com/reference/automationsid Retrieve an Automation by ID. ```APIDOC ## GET /automations/{id} ### Description Retrieve an Automation by ID. ### Method GET ### Endpoint /automations/{id} ### Parameters #### Path Parameters - **id** (integer) - Required - ID of the Automation to retrieve ### Response #### Success Response (200) - **object** - Automation details #### Response Example { "example": "{}" } ``` -------------------------------- ### GET /appointments/:id Source: https://docs.followupboss.com/reference/appointments-id-get Retrieve an appointment by id. ```APIDOC ## GET /appointments/:id ### Description Retrieve an appointment by id. ### Method GET ### Endpoint https://api.followupboss.com/v1/appointments/{id} ### Parameters #### Path Parameters - **id** (int32) - Required - The id of the appointment. ### Response #### Success Response (200) - 200 - Success #### Error Response (400) - 400 - Bad Request ``` -------------------------------- ### Property Inquiry JSON Example Source: https://docs.followupboss.com/reference/events-post A sample JSON payload representing a property inquiry event, including person details, property information, and search criteria. ```json { "source": "Zillow", "system": "Zillow", "type": "Property Inquiry", "message": "I am interested in 6825 Mulholland Dr, ...", "description": "Move-in: 12/28/2013", "person": { "id": 1234, "firstName": "Melissa ", "lastName": "Hartman", "emails": [ { "value": "m.hartman@example.com", "type": "home" } ], "phones": [ { "value": "(555) 555-1234", "type": "home" } ], "tags": [ "Lease option" ], "sourceUrl": "http://click.email.zillow.com/?qs=1e120cec11e3", "customBirthday": "2/16/1990" }, "property": { "street": "6825 Mulholland Dr", "city": "Los Angeles", "state": "CA", "code": "90068", "mlsNumber": "14729339", "price": "310000", "forRent": "0", "url": "http://www.zillow.com/homedetails/6825-Mulholland-Dr-Los-Angeles-CA-90068/2109065822_zpid/", "type": "Residential" }, "propertySearch": { "type": "Lot", "neighborhood": "Cahuenga Pass", "city": "Los Angeles", "state": "CA", "code": "90068", "minPrice": 100000, "maxPrice": 500000 } } ``` -------------------------------- ### GET /textMessages/:id Source: https://docs.followupboss.com/reference/textmessages-id-get Retrieve a text message by id. ```APIDOC ## GET /textMessages/{id} ### Description Retrieve a text message by id. ### Method GET ### Endpoint /textMessages/{id} ### Parameters #### Path Parameters - **id** (integer) - Required - The id of the text message record. ### Response #### Success Response (200) - **id** (integer) - The ID of the text message. - **created** (string) - Creation timestamp. - **updated** (string) - Last update timestamp. - **createdById** (integer) - ID of the user who created the message. - **updatedById** (integer) - ID of the user who last updated the message. - **personId** (integer) - ID of the associated person. - **name** (string) - Full name of the person. - **firstName** (string) - First name of the person. - **lastName** (string) - Last name of the person. - **picture** (object) - Picture data. - **userId** (integer) - ID of the associated user. - **userName** (string) - Name of the associated user. - **status** (string) - Status of the message. - **message** (string) - The content of the message. - **fromNumber** (string) - The sender's phone number. - **toNumber** (string) - The recipient's phone number. #### Response Example { "id": 752, "created": "2020-08-07T20:28:31Z", "updated": "2020-08-07T20:28:31Z", "createdById": 1, "updatedById": 1, "personId": 1, "name": "William Riker", "firstName": "William", "lastName": "Riker", "picture": null, "userId": 1, "userName": "Tom Minch", "status": "Sent", "message": "Content is hidden for privacy reasons.", "fromNumber": "8885551234", "toNumber": "8885559876" } ``` -------------------------------- ### POST /v1/oauthApps Source: https://docs.followupboss.com/docs/getting-started-with-oauth Creates a new OAuth client application. Requires a registered system name and key in the headers. ```APIDOC ## POST /v1/oauthApps ### Description Creates a new OAuth client application for your registered system. ### Method POST ### Endpoint https://api.followupboss.com/v1/oauthApps ### Request Body - **redirectUris** (array) - Required - An array of publicly accessible redirect URIs. ### Request Example { "redirectUris": ["http://www.yoursite.com/oauth/redirect"] } ### Response #### Success Response (200) - **id** (integer) - The unique identifier for the OAuth client. - **name** (string) - The name of the OAuth client. - **redirectUris** (array) - The list of registered redirect URIs. - **clientId** (string) - The client ID. - **clientSecret** (string) - The client secret (returned only upon creation). - **status** (integer) - The status of the application. - **createdAt** (string) - Creation timestamp. - **updatedAt** (string) - Last update timestamp. ``` -------------------------------- ### GET /teams/{id} Source: https://docs.followupboss.com/reference/teams-id-get Retrieves a team by its unique ID. ```APIDOC ## GET /teams/{id} ### Description Get a team by id. ### Method GET ### Endpoint https://api.followupboss.com/v1/teams/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The team id. ### Response #### Success Response (200) - **200** - Successful retrieval of team data. ``` -------------------------------- ### GET /tasks/:id Source: https://docs.followupboss.com/reference/tasks-id-get Retrieves a task by its unique ID. ```APIDOC ## GET /tasks/:id ### Description Get a task by id. ### Method GET ### Endpoint https://api.followupboss.com/v1/tasks/{id} ### Parameters #### Path Parameters - **id** (int32) - Required - The ID of the task to get. ### Response #### Success Response (200) - 200 OK ```