### View Installed Inbox Apps - Permission Denied Example Source: https://docs.followupboss.com/reference/view-inbox-app-installations This example demonstrates the response when a user does not have permission to view installations for a specific Published Inbox App. An `errorMessage` is returned. ```json { "errorMessage": "You do not have permission to view installations for this Published Inbox App." } ``` -------------------------------- ### View Installed Inbox Apps - Success Example Source: https://docs.followupboss.com/reference/view-inbox-app-installations This example shows a successful response when listing installed Inbox Apps. It returns an array of app installations, each with an `inboxAppId`, `userId`, and creation timestamp. ```json { "inboxApps": [ { "inboxAppId": 1, "userId": 0, "created": "2025-01-01T12:12:12Z" }, { "inboxAppId": 9, "userId": 5, "created": "2025-01-01T12:12:12Z" } ] } ``` -------------------------------- ### Get Unclaimed Leads Example Source: https://docs.followupboss.com/reference/peopleunclaimed This example shows the structure of a successful response when retrieving unclaimed leads. Note that the `claimed` field indicates the status of each person. ```json { "_metadata": { "collection": "people", "offset": 0, "limit": 10, "total": 1, "next": null, "nextLink": null, }, "people": [ { "id": 47362, "created": "2021-04-23T15:22:29Z", "name": "Toribio Sinaluisa", "firstName": "Toribio", "lastName": "Sinaluisa", "source": "Zillow", "sourceId": 730, "delayed": false, "picture": { "small": "https://example.com/avatar.jpg" } "claimed": true }, { "id": 47364, "created": "2021-04-23T15:24:26Z", "name": "Itamar Llore", "firstName": "Itamar", "lastName": "Llore", "source": "Zillow", "sourceId": 730, "delayed": false, "picture": null, "claimed": false } ] } ``` -------------------------------- ### Get Webhook Events Example Source: https://docs.followupboss.com/reference/webhookevents-get This example demonstrates the structure of a successful response when retrieving webhook events. It includes event details such as ID, creation timestamp, event type, affected resource IDs, and a URI to the resource. ```json { "id": "db36048a6b06d80e7f9d3440233ae915", "eventCreated": "2016-12-12T18:36:26Z", "event": "peopleUpdated", "resourceIds": [1234,3422,4343], "uri": "https://api.followupboss.com/v1/people?id=1234,3422,4343" } ``` -------------------------------- ### Get a List of Tasks Source: https://docs.followupboss.com/reference/tasks-get This example shows the structure of a successful response when retrieving a list of tasks. It includes metadata about the collection and the task objects themselves. ```json { "_metadata": { "collection": "tasks", "offset": 0, "limit": 1, "total": 126 }, "tasks": [ { "id": 4066, "created": "2016-12-07T15:50:47Z", "updated": "2016-12-07T15:50:47Z", "completed": "2017-01-24T17:20:49Z", "createdBy": "Gerald Leenerts", "updatedBy": "Gerald Leenerts", "personId": 15013, "AssignedTo": "Gerald Leenerts", "assignedUserId": 1, "name": "Follow Up", "type": "Follow Up", "isCompleted": 1, "dueDate": "2017-01-31", "dueDateTime": "2017-01-31T21:00:00Z", "externalTaskLink": null, "externalCalendarId": null, "remindSecondsBefore": null } ] } ``` -------------------------------- ### Get a List of Teams Source: https://docs.followupboss.com/reference/teams-get This example shows the structure of a successful response when retrieving a list of teams. It includes metadata about the collection and the teams themselves. ```json { "_metadata": { "collection": "teams", "offset": 0, "limit": 10, "total": 3, "next": null, }, "teams": [ { "id": 8, "name": "Palm Beach Team", "userIds": [ 12, 14, 23 ], "leaderIds": [ 14 ] }, { "id": 5, "name": "Orlando Team", "userIds": [ 11, 15 ], "leaderIds": [ 11 ] }, { "id": 1, "name": "Company Team", "userIds": [ 11, 12, 14, 15, 23 ], "leaderIds": [ 14 ] } ] } ``` -------------------------------- ### Pipeline Creation Response Example Source: https://docs.followupboss.com/reference/pipelines-post This is an example of a successful response when creating a pipeline. It returns the details of the pipeline that was just created. ```json { "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 } ] } ``` -------------------------------- ### Get Timeframes List (JSON Response Example) Source: https://docs.followupboss.com/reference/timeframes-get This example shows the structure of the JSON response when retrieving a list of timeframes. It includes metadata about the collection and the list of timeframe objects, each with an ID and a name. ```json { "_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" } ] } ``` -------------------------------- ### Task Creation Response Example Source: https://docs.followupboss.com/reference/tasks-post This is an example of a successful response when creating a task. It includes the unique ID of the created task and its associated details. ```json { "id": 4066, "created": "2016-12-07T15:50:47Z", "updated": "2016-12-07T15:50:47Z", "createdBy": "Gerald Leenerts", "updatedBy": "Gerald Leenerts", "personId": 15013, "AssignedTo": "Gerald Leenerts", "assignedUserId": 1, "name": "Follow Up", "type": "Follow Up", "isCompleted": 0, "dueDate": null, "dueDateTime": null, "completed": null, "person": { "id": 15013, "name": "William Riker" } } ``` -------------------------------- ### Example: Third Page with 25 Items Source: https://docs.followupboss.com/reference/pagination This example demonstrates how to retrieve the third page of results, with 25 items per page, using the `offset` and `limit` parameters. ```APIDOC ## Example: Third page of most recently created people with 25 people per page ```http GET /v1/people?offset=50&limit=25 ``` ``` -------------------------------- ### Create Appointment Response Example Source: https://docs.followupboss.com/reference/appointments-post An example of a successful response when creating an appointment. It includes the appointment's ID, creation and update timestamps, assigned user IDs, and all the details provided in the request, along with additional system-generated information. ```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 } ``` -------------------------------- ### OpenAPI Definition Example Source: https://docs.followupboss.com/reference/inbox-apps-add-system-confirmation-message This is an example of an OpenAPI definition. It includes an ID for a specific resource. ```json { "_id": "58b53c341065f9c438aa1f7e:69691579ba3363e891aaddbe" } ``` -------------------------------- ### Example Person Resource Response Source: https://docs.followupboss.com/reference/requests-and-responses API responses for resources are typically returned in JSON format, mirroring the structure of GET requests. ```json { "id": 123, "created": "2012-04-23T02:23:11Z", "updated": "2012-04-23T02:23:11Z", "lastActivity": "2012-04-23T02:23:11Z", "name": "Mary Mcmillan", "firstName": "Mary", "lastName": "Mcmillan", "stage": "Lead", "source": "Zillow", ... } ``` -------------------------------- ### Retrieve a List of Stages Source: https://docs.followupboss.com/reference/stages-get Use this endpoint to get a list of all stages in your Follow Up Boss account. You can control the number of results, the starting point, and the sorting order. ```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": { "/stages": { "get": { "summary": "/stages", "description": "Retrieve a list of stages.", "operationId": "stages-get", "parameters": [ { "name": "limit", "in": "query", "description": "Number of results to return. Max 100.", "schema": { "type": "integer", "format": "int32", "default": 10 } }, { "name": "offset", "in": "query", "description": "Specifies the number of rows to skip before starting to return results.", "schema": { "type": "integer", "format": "int32", "default": 0 } }, { "name": "sort", "in": "query", "description": "Sorts the stages by `orderWeight`, `id` or `name`.", "schema": { "type": "string", "default": "orderWeight" } } ], "responses": { "200": { "description": "200", "content": { "application/json": { "examples": { "Result": { "value": "{\n \"_metadata\": {\n \"collection\": \"stages\",\n \"offset\": 0,\n \"limit\": 20,\n \"total\": 8\n },\n \"stages\": [\n {\n \"id\": 1,\n \"name\": \"Contact\",\n \"orderWeight\": 1000,\n \"isProtected\": false,\n \"peopleCount\": 16\n },\n {\n \"id\": 5,\n \"name\": \"Buyer\",\n \"orderWeight\": 2000,\n \"isProtected\": false,\n \"peopleCount\": 40\n },\n {\n \"id\": 2,\n \"name\": \"Lead\",\n \"orderWeight\": 3000,\n \"isProtected\": true,\n \"peopleCount\": 12077\n },\n {\n \"id\": 4,\n \"name\": \"Nurture\",\n \"orderWeight\": 4000,\n \"isProtected\": false,\n \"peopleCount\": 66\n },\n {\n \"id\": 8,\n \"name\": \"Closed\",\n \"orderWeight\": 5000,\n \"isProtected\": true,\n \"peopleCount\": 15\n },\n {\n \"id\": 9,\n \"name\": \"Past Client\",\n \"orderWeight\": 6000,\n \"isProtected\": false,\n \"peopleCount\": 98\n },\n {\n \"id\": 10,\n \"name\": \"Sphere\",\n \"orderWeight\": 7000,\n \"isProtected\": false,\n \"peopleCount\": 17\n },\n {\n \"id\": 11,\n \"name\": \"Trash\",\n \"orderWeight\": 8000,\n \"isProtected\": true,\n \"peopleCount\": 892\n }\n ]\n}" } }, "schema": { "type": "object", "properties": { "_metadata": { "type": "object", "properties": { "collection": { "type": "string", "example": "stages" }, "offset": { "type": "integer", "example": 0, "default": 0 }, "limit": { "type": "integer", "example": 20, "default": 0 }, "total": { "type": "integer", "example": 8, "default": 0 } } }, "stages": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "integer", "example": 1, "default": 0 }, "name": { "type": "string", "example": "Contact" }, "orderWeight": { "type": "integer", "example": 1000, "default": 0 }, "isProtected": { "type": "boolean", "example": false, "default": true }, "peopleCount": { "type": "integer", "example": 16, "default": 0 } } } } } } } } } } } } } } ``` -------------------------------- ### Bad Request Response Example Source: https://docs.followupboss.com/reference/textmessages-get An example of a 400 Bad Request response, indicating an empty JSON object. ```json "Result": { "value": "{}" } ``` -------------------------------- ### Add Reaction Request Example Source: https://docs.followupboss.com/reference/reactions-reftype-refid-post Use this example to add a reaction to a reference object. The 'body' field should contain the single-character emoji reaction. ```json { "body": "🤣" } ``` -------------------------------- ### Successful Response Example Source: https://docs.followupboss.com/reference/inbox-apps-get-participants This example shows a successful response when retrieving participants. It returns an array of participant objects, each with details like ID, status, name, phone, and email. ```json [ { "id": 1, "status": "active", "userId": null, "personId": null, "name": "John Doe", "phone": "+14075550123", "email": "john@example.com", "isAutomation": false }, { "id": 2, "status": "active", "userId": 1, "personId": null, "name": null, "phone": null, "email": null, "isAutomation": false }, { "id": 3, "status": "deleted", "userId": null, "personId": 1, "name": null, "phone": null, "email": null, "isAutomation": false } ] ``` -------------------------------- ### Example Lead Inquiry Event Source: https://docs.followupboss.com/reference/events-post This JSON object represents an example of a 'Property Inquiry' event. It includes details about the lead, the property they are inquiring about, and search criteria if applicable. This can be used to create a new event via the API. ```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 } } ``` -------------------------------- ### OpenAPI Definition Example Source: https://docs.followupboss.com/reference/customfields-get This is an example of an OpenAPI definition. It describes the structure and endpoints of an API. ```json { "openapi": "3.0.0", "info": { "title": "Follow Up Boss API", "version": "1.0.0", "description": "API for Follow Up Boss" }, "servers": [ { "url": "https://api.followupboss.com" } ], "paths": { "/v1/customfields": { "get": { "summary": "Get custom fields", "operationId": "getCustomFields", "responses": { "200": { "description": "A list of custom fields.", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/CustomField" } } } } } } } } }, "components": { "schemas": { "CustomField": { "type": "object", "properties": { "id": { "type": "string", "description": "The ID of the custom field." }, "name": { "type": "string", "description": "The name of the custom field." }, "type": { "type": "string", "description": "The type of the custom field." }, "options": { "type": "array", "items": { "type": "string" }, "description": "The options for a select or multi-select custom field." } } } } }, "deprecated": false } ``` -------------------------------- ### System Confirmation Message Example Source: https://docs.followupboss.com/reference/inbox-apps-add-system-confirmation-message This example shows a successful system confirmation message, including details like sender, message content, and conversation link. It is part of the OpenAPI definition for the API. ```json { "id": 1, "created": "2024-01-01T12:00:00Z", "updated": "2024-01-01T12:00:00Z", "sentAt": "2024-01-01T12:00:00Z", "deliveryStatus": null, "deliveryStatusErrorMessage": null, "createdById": 1, "updatedById": 1, "isIncoming": true, "message": "An example system confirmation message.", "isSystem": true, "systemType": "success", "userId": 0, "personId": 1, "sender": { "personId": 1, "name": "John Doe", "email": null, "phone": null, "avatar": null }, "attachments": [], "conversationDeepLinkUrl": "https://app.followupboss.com/2/inbox-new/0/inbox/1" } ``` -------------------------------- ### Install Inbox App Source: https://docs.followupboss.com/reference/inbox-apps-install Installs your Inbox App for an account. You need to provide your Published Inbox App ID, the User ID to scope the app to (or 0 for account-wide scope), and the webhook URL where you will receive Inbox App replies. ```APIDOC ## POST /inboxApps/install ### Description Installs your Inbox App for an account. ### Method POST ### Endpoint https://api.followupboss.com/v1/inboxApps/install ### Parameters #### 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 ```json { "publishedInboxAppId": 1, "userId": 1, "subscriptionUrl": "https://example.com/webhook" } ``` ### Response #### Success Response (201) - **id** (integer) - The ID of the installed inbox app. - **created** (string) - The timestamp when the inbox app was installed. - **updated** (string) - The timestamp when the inbox app installation was last updated. - **createdById** (integer) - The ID of the user who created the installation. - **updatedById** (integer) - The ID of the user who last updated the installation. - **status** (integer) - The status of the inbox app installation. - **name** (string) - The name of the installed inbox app. - **publishedInboxAppId** (integer) - The ID of the published inbox app. - **userId** (integer) - The ID of the user the app is scoped to. - **canReply** (boolean) - Indicates if the app can reply. #### Response Example ```json { "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 (400) - **errorMessage** (string) - A message describing the error. #### Response Example ```json { "errorMessage": "publishedInboxAppId is required." } ``` ``` -------------------------------- ### Search for Deals Source: https://docs.followupboss.com/reference/deals-get This example shows a successful response when searching for deals. It includes metadata about the results and a list of deals, each with detailed properties including custom fields. ```json { "_metadata": { "collection": "deals", "offset": 0, "limit": 10, "total": 1, "totalByStageId": { "5": 1 } }, "deals": [ { "pipelineId": 100, "stageId": 5, "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 }, ] } ``` -------------------------------- ### Search People by Stage and Source Source: https://docs.followupboss.com/reference/searching This example demonstrates how to search for people using multiple criteria: stage and source. ```APIDOC ## GET /v1/people?stage=Past%20Client&source=Zillow ### Description Searches for people who are past clients and came from Zillow. ### Method GET ### Endpoint /v1/people ### Query Parameters - **stage** (string) - Required - The stage of the person (e.g., 'Past Client'). - **source** (string) - Required - The source of the person (e.g., 'Zillow'). ``` -------------------------------- ### Get 5 Most Recent People Source: https://docs.followupboss.com/reference/pagination Use the 'limit' parameter to retrieve the most recent records. This example fetches the 5 most recently created people. ```http GET /v1/people?limit=5 ``` -------------------------------- ### Get a list of ponds Source: https://docs.followupboss.com/reference/ponds-get Retrieves a list of ponds. You can control the number of results returned and the starting point of the results using the `limit` and `offset` query parameters. ```APIDOC ## GET /ponds ### Description Get a list of ponds. ### Method GET ### Endpoint /ponds ### Parameters #### Query Parameters - **offset** (integer) - Optional - Specifies the number of rows to skip before starting to return results. Defaults to 0. - **limit** (integer) - Optional - Number of results to return. Max 100. Defaults to 10. ### Response #### Success Response (200) - **_metadata** (object) - Contains metadata about the collection, including offset, limit, and total count. - **collection** (string) - The name of the collection. - **offset** (integer) - The offset used for the query. - **limit** (integer) - The limit used for the query. - **total** (integer) - The total number of items in the collection. - **ponds** (array) - A list of pond objects. - **id** (integer) - The unique identifier for the pond. - **name** (string) - The name of the pond. - **userId** (integer) - The ID of the Pond Lead Agent. - **userIds** (array) - A list of user IDs who are members of the pond. #### Response Example ```json { "_metadata": { "collection": "ponds", "offset": 0, "limit": 10, "total": 2 }, "ponds": [ { "id": 23, "name": "Palm Beach Pond", "userId": 14, "userIds": [ 14, 23, 24 ] }, { "id": 79, "name": "Miami Pond", "userId": 15, "userIds": [ 26, 23, 15 ] } ] } ``` ``` -------------------------------- ### Get Third Page with 25 People per Page Source: https://docs.followupboss.com/reference/pagination Retrieve a specific page of results by specifying the 'offset' and 'limit' query parameters. This example fetches the third page with 25 items. ```http GET /v1/people?offset=50&limit=25 ``` -------------------------------- ### Search People by Email Source: https://docs.followupboss.com/reference/searching This example shows how to search for people by their email address. ```APIDOC ## GET /v1/people?email=john%40gmail.com ### Description Searches for people matching the provided email address. ### Method GET ### Endpoint /v1/people ### Query Parameters - **email** (string) - Required - The email address to search for. ``` -------------------------------- ### Get a list of ponds Source: https://docs.followupboss.com/reference/ponds-get Use this endpoint to retrieve a list of ponds. You can control the number of results returned and the starting point using `limit` and `offset` parameters. The `userId` field indicates the Pond Lead Agent, and `userIds` lists all members of the pond. ```json { "_metadata": { "collection": "ponds", "offset": 0, "limit": 10, "total": 2 }, "ponds": [ { "id": 23, "name": "Palm Beach Pond", "userId": 14, "userIds": [ 14, 23, 24 ] }, { "id": 79, "name": "Miami Pond", "userId": 15, "userIds": [ 26, 23, 15 ] } ] } ``` -------------------------------- ### View Installed Inbox Apps Source: https://docs.followupboss.com/reference/view-inbox-app-installations Retrieves a list of installations for a given Published Inbox App. This includes the inboxAppId, userId, and creation timestamp for each installation. ```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) - A list of installed inbox apps. - **inboxAppId** (integer) - The ID of the inbox app. - **userId** (integer) - The ID of the user who installed the app. - **created** (string) - The timestamp when the app was installed. #### Response Example ```json { "inboxApps": [ { "inboxAppId": 1, "userId": 0, "created": "2025-01-01T12:12:12Z" }, { "inboxAppId": 9, "userId": 5, "created": "2025-01-01T12:12:12Z" } ] } ``` #### Error Response (403) - **errorMessage** (string) - Description of the error, e.g., "You do not have permission to view installations for this Published Inbox App." ``` -------------------------------- ### Search for Calls Source: https://docs.followupboss.com/reference/calls-get This example shows the structure of a successful response when searching for calls. It includes metadata about the search results and a list of call objects. ```json { "_metadata": { "collection": "calls", "offset": 0, "limit": 10, "total": 5 }, "calls": [ { "id": 18, "created": "2014-06-20T23:28:51Z", "updated": "2014-08-12T17:24:22Z", "createdById": 4, "updatedById": 4, "phone": "555-405-0815", "personId": 12254, "userId": 4, "userName": "Agent White", "note": "A note about the call", "outcome": "Left Message", "isIncoming": false, "duration": 63, "ringDuration": 5, "recordingUrl:": "Content is hidden for privacy reasons." }, ... ] } ``` -------------------------------- ### Create a New Pipeline Source: https://docs.followupboss.com/reference/pipelines-post Use this request body to add a new pipeline to Follow Up Boss. Include the pipeline's name and optionally a description, order weight, and stages. ```json { "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 } ] } ``` -------------------------------- ### Successful Inbox App Installation Response Source: https://docs.followupboss.com/reference/inbox-apps-install This JSON object represents a successful response after installing an Inbox App. It includes details about the installed app, such as its ID, creation timestamps, status, and associated IDs. ```json { "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 } ``` -------------------------------- ### OpenAPI Schema Example Source: https://docs.followupboss.com/reference/inbox-apps-add-message This example demonstrates the structure of an error message returned by the API, specifically when a boolean field is expected but not provided. ```json { "errorMessage": "isIncoming must be a boolean." } ``` -------------------------------- ### Get Team by ID Source: https://docs.followupboss.com/reference/teams-id-get Retrieves a specific team's details using its ID. This is a GET request to the /teams/{id} endpoint. ```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) - **Result** (object) - Contains the team details. ### Request Example ```curl curl --request GET \ --url https://api.followupboss.com/v1/teams/id \ --header 'accept: application/json' ``` ``` -------------------------------- ### Empty Response Source: https://docs.followupboss.com/reference/deals-get This example shows an empty JSON object as a response, which may occur for certain error conditions or when no deals match the search criteria. ```json {} ``` -------------------------------- ### Error Response Example Source: https://docs.followupboss.com/reference/inbox-apps-get-participants This example demonstrates an error response, specifically when the 'externalConversationId' is missing. The response includes an 'errorMessage' field detailing the issue. ```json { "errorMessage": "externalConversationId is required." } ``` -------------------------------- ### Retrieve Appointment Outcome by ID Source: https://docs.followupboss.com/reference/appointmentoutcomes-id-get Use this example to fetch a specific appointment outcome. Ensure you replace `{id}` with the actual ID of the outcome you want to retrieve. ```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": { "/appointmentOutcomes/{id}": { "get": { "summary": "/appointmentOutcomes/:id", "description": "Retrieve an appointment outcome by ID.", "operationId": "appointmentoutcomes-id-get", "parameters": [ { "name": "id", "in": "path", "description": "The id of the appointment outcome.", "schema": { "type": "integer", "format": "int32" }, "required": true } ], "responses": { "200": { "description": "200", "content": { "application/json": { "examples": { "OK": { "value": "{\n \"id\": 3,\n \"name\": \"Test Outcome\",\n \"orderWeight\": 3000\n}" } }, "schema": { "type": "object", "properties": { "id": { "type": "integer", "example": 3, "default": 0 }, "name": { "type": "string", "example": "Test Outcome" }, "orderWeight": { "type": "integer", "example": 3000, "default": 0 } } } } } }, "400": { "description": "400", "content": { "application/json": { "examples": { "Bad Request (Invalid Fields)": { "value": "{\n \"errorMessage\": \"Invalid field(s) in the fields parameter: [list of invalid fields]\"\n}" } }, "schema": { "type": "object", "properties": { "errorMessage": { "type": "string", "example": "Invalid field(s) in the fields parameter: [list of invalid fields]" } } } } } }, "404": { "description": "404", "content": { "application/json": { "examples": { "Not Found": { "value": "{\n \"errorMessage\": \"Requested resource was not found.\"\n}" } }, "schema": { "type": "object", "properties": { "errorMessage": { "type": "string", "example": "Requested resource was not found." } } } } } } }, "deprecated": false } } }, "x-readme": { "headers": [], "explorer-enabled": true, "proxy-enabled": true }, "x-readme-fauxas": true, "_id": "58b53c341065f9c438aa1f7e:6297c072c03433002bae4477" } ``` -------------------------------- ### Get Pond by ID Source: https://docs.followupboss.com/reference/ponds-id-get Retrieves a single pond's details using its unique ID. This is a GET request to the /ponds/{id} endpoint. ```APIDOC ## GET /ponds/:id ### Description Get a pond by id. ### Method GET ### Endpoint https://api.followupboss.com/v1/ponds/{id} ### Parameters #### Path Parameters - **id** (int32) - Required - The pond id. ### Response #### Success Response (200) - **pond** (object) - Description of the pond object (details not provided in source). #### Response Example ```json { "example": "response body" } ``` ``` -------------------------------- ### OpenAPI Definition for Get Participants Source: https://docs.followupboss.com/reference/inbox-apps-get-participants This is the OpenAPI 3.1.0 definition for the Get Participants endpoint. It outlines the request parameters, possible responses, and the structure of the data returned. ```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": "[ { "id": 1, "status": "active", "userId": null, "personId": null, "name": "John Doe", "phone": "+14075550123", "email": "john@example.com", "isAutomation": false }, { "id": 2, "status": "active", "userId": 1, "personId": null, "name": null, "phone": null, "email": null, "isAutomation": false }, { "id": 3, "status": "deleted", "userId": null, "personId": 1, "name": null, "phone": null, "email": null, "isAutomation": false } ]" } }, "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": "{ "errorMessage": "externalConversationId is required." }" } }, "schema": { "type": "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" } ```