### Example Response for Get Feature Requests (200 OK) Source: https://www.getbeamer.com/api This example shows the structure of a successful response when retrieving feature requests. It includes details like ID, date, visibility, category, status, translations, and user information. ```json [ { "id": "123", "date": "2018-12-31T00:00:00Z", "visible": "true", "category": "bug", "status": "under_review", "translations": [ { "title": "Title of the feature request.", "content": "Content of the feature request.", "contentHtml": " Content of the feature request. ", "language": "EN", "permalink": "https://app.getbeamer.com/beamer/requests/en/example-feature-request", "images": [ "https://app.getbeamer.com/pictures?id=123" ] } ], "votesCount": 10, "commentsCount": "10", "notes": "Internal note", "filters": "Feature request", "internalUserEmail": "janedoe@getbeamer.com", "internalUserFirstname": "Jane", "internalUserLastname": "Doe", "userId": "1010", "userEmail": "johndoe@getbeamer.com", "userFirstname": "John", "userLastname": "Doe", "userCustomAttributes": { "Organization": "Example", "age": 33 } } ] ``` -------------------------------- ### Get NPS Responses Example Source: https://www.getbeamer.com/api This example shows a successful response when retrieving NPS data. It returns an array of NPS response objects. ```json [ { "id": "64e508e8961ebc4a71688027", "date": "2018-12-31T00:00:00Z", "score": 10, "feedback": "Love this app!", "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Jane", "userLastName": "Doe", "refUrl": "https://app.getbeamer.com/home", "url": "https://app.getbeamer.com/nps#feedback?userId=1234" } ] ``` -------------------------------- ### Example Response for Getting Votes (200 OK) Source: https://www.getbeamer.com/api This is an example of the JSON response when successfully retrieving votes for a feature request. It includes details about each vote and the user who cast it. ```JSON [ { "id": "1234", "date": "2018-12-31T00:00:00Z", "featureRequestTitle": "Title of the feature request.", "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Jane", "userLastName": "Doe", "userCustomAttributes": { "organization": "Example", "age": 33 }, "url": "https://app.getbeamer.com/inbox#featureRequestVote?id=1234" } ] ``` -------------------------------- ### Ping API Response Example (200 OK) Source: https://www.getbeamer.com/api This is an example of a successful response when pinging the Beamer API. ```JSON { "name": "Beamer" } ``` -------------------------------- ### NPS Prompt Check Example Source: https://www.getbeamer.com/api Example response indicating whether a user should see the NPS prompt and the relevant URL. ```JSON { "shouldShow": true, "url": "https://app.getbeamer.com/nps..." } ``` -------------------------------- ### Delete Users Response Example Source: https://www.getbeamer.com/api This is an example of a successful response when deleting users. It indicates the number of users deleted. ```json { "deleted": 1 } ``` -------------------------------- ### Response Example for Counting Posts Source: https://www.getbeamer.com/api This is an example of a successful response (200 OK) when counting posts, indicating the total number of posts that match the query. ```json { "count": 99 } ``` -------------------------------- ### Example Response for Getting Comments Source: https://www.getbeamer.com/api Illustrates the structure of a successful response when retrieving comments for a feature request. This JSON array contains comment objects with detailed information. ```JSON [ { "id": "1234", "date": "2018-12-31T00:00:00Z", "visible": "true", "actionComment": "true", "text": "This is a comment.", "featureRequestTitle": "Title of the feature request.", "parentComment": "Parent comment.", "internalUserEmail": "janedoe@getbeamer.com", "internalUserFirstname": "Jane", "internalUserLastname": "Doe", "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Jane", "userLastName": "Doe", "userCustomAttributes": { "organization": "Example", "age": 33 }, "url": "https://app.getbeamer.com/inbox#featureRequestComment?id=1234" } ] ``` -------------------------------- ### Get Unread Post Count Response Example Source: https://www.getbeamer.com/api This example shows the structure of a successful response when requesting the count of unread posts. It includes the total count and URLs for the news feed and popup. ```json { "count": 99, "url": "https://app.getbeamer.com/news?app_id=mZXqptmd65", "popupUrl": "https://app.getbeamer.com/popup?app_id=mZXqptmd65" } ``` -------------------------------- ### NPS Response Object Example Source: https://www.getbeamer.com/api An example of a complete NPS response object, including user details and response metadata. ```json { "id": "64e508e8961ebc4a71688027", "date": "2018-12-31T00:00:00Z", "score": 10, "feedback": "Love this app!", "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Jane", "userLastName": "Doe", "refUrl": "https://app.getbeamer.com/home", "url": "https://app.getbeamer.com/nps#feedback?userId=1234" } ``` -------------------------------- ### Create User Request Example Source: https://www.getbeamer.com/api Send a JSON object in the request body with user details to create a new user. ```json { "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Example", "userLastName": "Beamer", "filter": "role-admin;paid-user", "language": "EN", "ip": "127.0.0.1", "browser": "Chrome", "os": "Mac OS", "city": "Barcelona", "country": "Spain", "latitude": "0.0", "longitude": "0.0" } ``` -------------------------------- ### Example User Response Source: https://www.getbeamer.com/api An example of a successful response when retrieving users from Beamer Analytics. This JSON array contains user details. ```json [ { "beamerId": "12345-67890", "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Example", "userLastName": "Beamer", "language": "EN", "filter": "example-filter", "firstSeen": "2018-12-31T10:00:00Z", "lastSeen": "2019-01-01T10:00:00Z", "ip": "127.0.0.1", "browser": "Chrome", "os": "Mac OS", "city": "Barcelona", "country": "Spain", "latitude": "0.0", "longitude": "0.0" } ] ``` -------------------------------- ### Translation Object Example Source: https://www.getbeamer.com/api Example of a Translation object, used for post localization. Includes fields for title, content, language, and associated links/images. ```json { "title": "Title of the post.", "content": "Content of the post.", "contentHtml": " Content of the post. ", "language": "EN", "category": "Category", "linkUrl": "https://www.getbeamer.com/", "linkText": "Click here!", "images": [ "https://app.getbeamer.com/pictures?id=123" ] } ``` -------------------------------- ### Create User Response Example (201 Created) Source: https://www.getbeamer.com/api The API returns a JSON object with the created user's details upon successful creation. ```json { "beamerId": "12345-67890", "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Example", "userLastName": "Beamer", "language": "EN", "filter": "example-filter", "firstSeen": "2018-12-31T10:00:00Z", "lastSeen": "2019-01-01T10:00:00Z", "ip": "127.0.0.1", "browser": "Chrome", "os": "Mac OS", "city": "Barcelona", "country": "Spain", "latitude": "0.0", "longitude": "0.0" } ``` -------------------------------- ### Count Feature Requests Response Example Source: https://www.getbeamer.com/api This is an example of a successful response when counting feature requests. It returns the total count of matching requests. ```json { "count": 99 } ``` -------------------------------- ### GET /users Source: https://www.getbeamer.com/api Use the GET method to query and retrieve users from your account's Analytics. Supports filtering, sorting, and pagination. ```APIDOC ## GET /users ### Description Use the GET method to query and retrieve users from your account's Analytics. ### Method GET ### Endpoint /users ### Parameters #### Query Parameters - **userId** (string) - Optional - ID of the user (as defined in the embedded script's **user_id** parameter). - **beamerId** (string) - Optional - Beamer generated ID for the user. - **userEmail** (string) - Optional - Email of the user. - **sort** (string) - Optional - **Sort** users by this attribute (in ascending order). This parameter can contain any of the user attributes returned by this endpoint, including custom attributes. Adding a hyphen ('-') before the attribute will sort the results in descending order. For example, **sort=lastSeen** will first retrieve users with the oldest 'last seen' date, while **sort=-lastSeen** will retrieve users that were 'last seen' most recently. By default, users are sorted by **firstSeen** (oldest first). - **maxResults** (integer) - Optional - Retrieve this many users (at most). The default number of users returned is 10, and the maximum is 100. - **page** (integer) - Optional - Combined with the value of 'maxResults' (or its default value), paginate the retrieval of users. ### Response #### Success Response (200 OK) User Users retrieved. ##### Response Example (200 OK) ```json [ { "beamerId": "12345-67890", "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Example", "userLastName": "Beamer", "language": "EN", "filter": "example-filter", "firstSeen": "2018-12-31T10:00:00Z", "lastSeen": "2019-01-01T10:00:00Z", "ip": "127.0.0.1", "browser": "Chrome", "os": "Mac OS", "city": "Barcelona", "country": "Spain", "latitude": "0.0", "longitude": "0.0" } ] ``` #### Error Responses - **400 Bad Request**: Some parameter is missing or doesn't follow the API specification. - **401 Unauthorized**: Either no API key was provided or the provided API key is invalid. - **403 Forbidden**: Not allowed to access this resource. - **405 Method Not Allowed**: This method is not allowed on this resource. - **429 Too Many Requests**: You have reached your account's monthly requests limit. If you think this is wrong, please reach out on our Support chat. - **500 Internal Server Error**: Something went wrong on our side. ``` -------------------------------- ### Get Reactions for a Post Source: https://www.getbeamer.com/api Use the GET method to query and retrieve existing reactions from a post. Supports filtering by date, reaction type, and pagination. ```json [ { "id": "1234", "date": "2018-12-31T00:00:00Z", "reaction": "positive", "postTitle": "Title of the post.", "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Jane", "userLastName": "Doe", "url": "https://app.getbeamer.com/inbox#reaction?id=1234", "userCustomAttributes": { "organization": "Example", "age": 33 } } ] ``` -------------------------------- ### Example Post Comment Response Source: https://www.getbeamer.com/api Illustrates the structure of a successful response when retrieving comments for a post. Includes comment details, user information, and custom attributes. ```JSON [ { "id": "1234", "date": "2018-12-31T00:00:00Z", "text": "This is a comment.", "postTitle": "Title of the post.", "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Jane", "userLastName": "Doe", "url": "https://app.getbeamer.com/inbox#comment?id=1234", "userCustomAttributes": { "organization": "Example", "age": 33 } } ] ``` -------------------------------- ### Get Existing Posts Source: https://www.getbeamer.com/api Retrieve existing posts from your account using the GET /posts endpoint. Various query parameters are available for filtering and pagination. ```HTTP GET /posts ``` -------------------------------- ### Create New Comment Response (201 Created) Source: https://www.getbeamer.com/api This is an example of a successful response when a new comment is created. It includes details of the created comment. ```json { "id": "1234", "date": "2018-12-31T00:00:00Z", "visible": "true", "actionComment": "true", "text": "This is a comment.", "featureRequestTitle": "Title of the feature request.", "parentComment": "Parent comment.", "internalUserEmail": "janedoe@getbeamer.com", "internalUserFirstname": "Jane", "internalUserLastname": "Doe", "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Jane", "userLastName": "Doe", "userCustomAttributes": { "organization": "Example", "age": 33 }, "url": "https://app.getbeamer.com/inbox#featureRequestComment?id=1234" } ``` -------------------------------- ### Get reaction by ID Source: https://www.getbeamer.com/api Returns a specific reaction by its ID, including details about the post, user, and reaction. ```APIDOC ## GET /posts/{postId}/reactions/{reactionId} ### Description Returns a specific reaction by its ID, including details about the post, user, and reaction. ### Method GET ### Endpoint /posts/{postId}/reactions/{reactionId} ### Parameters #### Path Parameters - **postId** (integer (int64)) - Required - ID of the post to retrieve reactions from. - **reactionId** (integer (int64)) - Required - ID of the reaction to retrieve. ### Response #### Success Response (200 OK) - **id** (string) - The ID of the reaction. - **date** (string) - The date and time the reaction was published (ISO-8601 format). - **reaction** (string) - The type of reaction (positive, neutral, or negative). - **postTitle** (string) - The title of the post. - **userId** (string) - The ID of the user who submitted the reaction. - **userEmail** (string) - The email of the user. - **userFirstName** (string) - The first name of the user. - **userLastName** (string) - The last name of the user. - **url** (string) - A URL to the reaction in the Beamer app. - **userCustomAttributes** (object) - Custom attributes associated with the user. ##### Response Example (200 OK) ```json { "id": "1234", "date": "2018-12-31T00:00:00Z", "reaction": "positive", "postTitle": "Title of the post.", "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Jane", "userLastName": "Doe", "url": "https://app.getbeamer.com/inbox#reaction?id=1234", "userCustomAttributes": { "organization": "Example", "age": 33 } } ``` #### Error Responses - **400 Bad Request**: Some parameter is missing or doesn't follow the API specification. - **401 Unauthorized**: Either no API key was provided or the provided API key is invalid. - **403 Forbidden**: Not allowed to access this resource. - **404 Not Found**: Reaction not found. - **405 Method Not Allowed**: This method is not allowed on this resource. - **429 Too Many Requests**: You have reached your account's monthly requests limit. - **500 Internal Server Error**: Something went wrong on our side. ``` -------------------------------- ### Comment Creation Object Example Source: https://www.getbeamer.com/api This JSON object represents the structure for creating a new comment. It includes the comment text, user details, and associated IDs. ```json { "text": "Content of your comment", "userId": "1010", "userEmail": "johndoe@getbeamer.com", "userFirstname": "John", "userLastname": "Doe" } ``` -------------------------------- ### Count existing reactions in a post Source: https://www.getbeamer.com/api Use the GET method to count existing reactions from a post. You can filter reactions by date range and type. ```APIDOC ## GET /posts/{postId}/reactions/count ### Description Use the GET method to count existing reactions from a post. You can filter reactions by date range and type. ### Method GET ### Endpoint /posts/{postId}/reactions/count ### Parameters #### Path Parameters - **postId** (integer (int64)) - Required - ID of the post to retrieve reactions from. #### Query Parameters - **dateFrom** (string) - Optional - Retrieve reactions published after this date. The date must follow the ISO-8601 format. - **dateTo** (string) - Optional - Retrieve reactions published before this date. The date must follow the ISO-8601 format. - **reaction** (string) - Optional - Retrieve reactions with this reaction type (positive, neutral or negative). ### Response #### Success Response (200 OK) - **count** (object) - The number of reactions. ##### Response Example (200 OK) ```json { "count": 99 } ``` #### Error Responses - **400 Bad Request**: Some parameter is missing or doesn't follow the API specification. - **401 Unauthorized**: Either no API key was provided or the provided API key is invalid. - **403 Forbidden**: Not allowed to access this resource. - **404 Not Found**: Reactions not found. - **405 Method Not Allowed**: This method is not allowed on this resource. - **429 Too Many Requests**: You have reached your account's monthly requests limit. - **500 Internal Server Error**: Something went wrong on our side. ``` -------------------------------- ### Create Post Response Example (201 Created) Source: https://www.getbeamer.com/api The API returns a JSON object with the details of the created post upon successful creation. Includes post ID, dates, and translation details. ```json { "id": "123", "date": "2018-12-31T00:00:00Z", "dueDate": "2019-12-31T00:00:00Z", "published": "true", "pinned": "false", "showInWidget": "true", "showInStandalone": "true", "category": "new", "boostedAnnouncement": "snippet", "translations": [ { "title": "Title of the post.", "content": "Content of the post.", "contentHtml": " Content of the post. ", "language": "EN", "category": "Category", "linkUrl": "https://www.getbeamer.com/", "linkText": "Click here!", "images": [ "https://app.getbeamer.com/pictures?id=123" ] } ], "filter": "admins", "filterUrl": "https://app.getbeamer.com/*", "autoOpen": "false", "editionDate": "2018-12-31T10:00:00Z", "feedbackEnabled": "true", "reactionsEnabled": "true", "views": "310", "uniqueViews": "250", "clicks": "120", "feedbacks": "55", "positiveReactions": "12", "neutralReactions": "5", "negativeReactions": "10" } ``` -------------------------------- ### GET /posts/{postId}/comments Source: https://www.getbeamer.com/api Use the GET method to query and retrieve existing comments from a post. ```APIDOC ## GET /posts/{postId}/comments ### Description Use the GET method to query and retrieve existing comments from a post. ### Method GET ### Endpoint /posts/{postId}/comments ### Parameters #### Path Parameters - **postId** (integer (int64)) - Required - ID of the post to retrieve comments from. #### Query Parameters - **dateFrom** (string) - Optional - Retrieve comments published after this date. The date must follow the ISO-8601 format. - **dateTo** (string) - Optional - Retrieve comments published before this date. The date must follow the ISO-8601 format. - **language** (string) - Optional - Retrieve comments with translations in this language. The language must follow the ISO-639 two-letter code format. - **search** (string) - Optional - Retrieve comments with content that contain this text. - **maxResults** (integer) - Optional - Retrieve this many comments (at most). The max number of comments returned is 10. - **page** (integer) - Optional - Combined with the value of 'maxResults' (or its default value), paginate the retrieval of comments. ### Response #### Success Response (200 OK) Comments retrieved. #### Response Example (200 OK) ```json [ { "id": "1234", "date": "2018-12-31T00:00:00Z", "text": "This is a comment.", "postTitle": "Title of the post.", "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Jane", "userLastName": "Doe", "url": "https://app.getbeamer.com/inbox#comment?id=1234", "userCustomAttributes": { "organization": "Example", "age": 33 } } ] ``` #### Error Responses - **400 Bad Request**: Some parameter is missing or doesn't follow the API specification. - **401 Unauthorized**: Either no API key was provided or the provided API key is invalid. - **403 Forbidden**: Not allowed to access this resource. - **405 Method Not Allowed**: This method is not allowed on this resource. - **429 Too Many Requests**: You have reached your account's monthly requests limit. - **500 Internal Server Error**: Something went wrong on our side. ``` -------------------------------- ### Update User Response Example (200 OK) Source: https://www.getbeamer.com/api Shows the structure of a successful response when users are updated. The response is a JSON array containing the updated user objects. ```json [ { "beamerId": "12345-67890", "userId": "1234", "userEmail": "example@getbeamer.com", "userFirstName": "Example", "userLastName": "Beamer", "language": "EN", "filter": "example-filter", "firstSeen": "2018-12-31T10:00:00Z", "lastSeen": "2019-01-01T10:00:00Z", "ip": "127.0.0.1", "browser": "Chrome", "os": "Mac OS", "city": "Barcelona", "country": "Spain", "latitude": "0.0", "longitude": "0.0" } ] ``` -------------------------------- ### Create a New Post Request Example Source: https://www.getbeamer.com/api Send a JSON object in the request body to create a new post. Supports multiple translations for title, content, language, link text, and link URL. ```json { "title": [ "Title of your post" ], "content": [ "Content of your post" ], "category": "new", "publish": true, "archive": false, "pinned": false, "showInWidget": true, "showInStandalone": true, "boostedAnnouncement": "snippet", "linkUrl": [ "https://www.getbeamer.com/" ], "linkText": [ "https://www.getbeamer.com/" ], "linksInNewWindow": true, "date": "2018-12-31T00:00:00", "dueDate": "2019-12-31T00:00:00Z", "language": [ "EN" ], "filter": "admins", "filterUserId": "1234", "filterUrl": "https://www.getbeamer.com/*", "enableFeedback": true, "enableReactions": true, "enableSocialShare": true, "autoOpen": true, "sendPushNotification": true, "userEmail": "example@getbeamer.com", "fixedBoostedAnnouncement": true } ``` -------------------------------- ### Ping the API Source: https://www.getbeamer.com/api Use the /ping endpoint to check if your API key is correctly set up for authentication. It returns a JSON object with your product name upon successful authentication. ```APIDOC ## POST /ping ### Description Ping the Beamer API to verify authentication. ### Method POST ### Endpoint /ping ### Response #### Success Response (200 OK) - **name** (string) - The name of your product on Beamer. #### Response Example (200 OK) ```json { "name": "Beamer" } ``` ``` -------------------------------- ### Get existing posts Source: https://www.getbeamer.com/api Retrieve existing posts from your account using the GET /posts endpoint. Supports various query parameters for filtering and pagination. ```APIDOC ## GET /posts ### Description Use the GET method to query and retrieve existing posts from your account. ### Method GET ### Endpoint /posts ### Parameters #### Query Parameters - **filter** (string) - Optional - Retrieve posts with a matching segmentation filter. [Only available on the Pro plan (and up)] - **forceFilter** (string) - Optional - Only retrieve posts that match this segmentation filter. [Only available on the Pro plan (and up)] - **filterUrl** (string) - Optional - If URL segmentation is enabled, include posts with a matching segmentation URL. [Only available on the Pro plan (and up)] - **dateFrom** (string) - Optional - Retrieve posts published after this date. The date must follow the ISO-8601 format. - **dateTo** (string) - Optional - Retrieve posts published before this date. The date must follow the ISO-8601 format. - **language** (string) - Optional - Retrieve posts with translations in this language. The language must follow the ISO-639 two-letter code format. - **category** (string) - Optional - Retrieve posts with this category. - **published** (boolean) - Optional - Retrieve only published (or draft) posts. If unspecified, both types of posts will be retrieved. - **archived** (boolean) - Optional - Retrieve only archived (or not archived) posts. If unspecified, both types of posts will be retrieved. - **expired** (boolean) - Optional - Retrieve only expired (or not expired) posts; posts without an expiration date are considered not expired. If unspecified, both types of posts will be retrieved. [Only available on the Starter plan (and up)] - **filterByUserId** (boolean) - Optional - Defaults to false. If true, single-user posts will be retrieved when matching the **userId** parameter. If false (or if no **userId** is provided), single-user posts will not be retrieved. [Only available on the Scale plan] - **userFirstName** (string) - Optional - First name of the user viewing these posts (for Analytics). - **userLastName** (string) - Optional - Last name of the user viewing these posts (for Analytics). - **userEmail** (string) - Optional - Email of the user viewing these posts (for Analytics). - **userId** (string) - Optional - ID of the user viewing these posts (for Analytics). - **traceableLinks** (boolean) - Optional - Defaults to false. Whether links in the post should be converted to a traceable format (both the CTA and links within the content). If true, the opened URL will be tracked and record a 'click' entry in your Analytics. - **ignoreRequestDetails** (boolean) - Optional - Defaults to false. Whether request-specific details should be ignored (this includes IP, browser/OS and geolocation details). Useful when sending requests from your backend, where the request's details aren't representative of the end user. - **saveViews** (boolean) - Optional - Defaults to true. Whether to save views for the posts retrieved (for Analytics). If unspecified, views are saved. - **maxResults** (integer) - Optional - Retrieve this many posts (at most). The max number of posts returned is 10. - **page** (integer) - Optional - Combined with the value of 'maxResults' (or its default value), paginate the retrieval of posts. - **ignoreFilters** (boolean) - Optional - If true, all posts will be retrieved, ignoring any segmentation they may have. This parameter should only be used for requests sent from the backend. [In order to user this parameter, the API key should have the 'Read posts (ignore filters)' permission enabled.] ### Response #### Success Response (200 OK) - **Post** (Post) - Posts retrieved. ``` -------------------------------- ### Get NPS Survey Link Response Source: https://www.getbeamer.com/api A successful GET request to generate an NPS survey link returns a JSON object containing the survey URL. ```json { "url": "https://app.getbeamer.com/npsSurvey?c=xxxx" } ``` -------------------------------- ### Get Existing Feature Requests Source: https://www.getbeamer.com/api Use the GET method to query and retrieve existing feature requests. Supports filtering by segmentation, date, language, category, status, visibility, search terms, and pagination. ```HTTP GET /requests ``` -------------------------------- ### Get Feed URL Source: https://www.getbeamer.com/api Retrieves the URL for your feed. This endpoint can be used to get the standalone feed URL, with options to specify language, apply URL filtering, and segment posts. User information can also be provided for analytics. ```APIDOC ## GET /url ### Description Use /url to retrieve the URL for your feed. This endpoint allows for language-specific retrieval and filtering of posts based on URL or segmentation. User details can be passed for analytics purposes. ### Method GET ### Endpoint /url ### Parameters #### Query Parameters - **language** (string) - Optional - Retrieve the URL for your feed in a specific language. The language must follow the ISO-639 two-letter code format. [Only available on the Starter plan (and up)] - **filterByUrl** (boolean) - Optional - Whether to apply URL filtering to the feed. [Only available on the Pro plan (and up)] - **filter** (string) - Optional - Retrieve posts with a matching segmentation filter. [Only available on the Pro plan (and up)] - **forceFilter** (string) - Optional - Only retrieve posts that match this segmentation filter. [Only available on the Pro plan (and up)] - **userFirstName** (string) - Optional - First name of the user viewing the feed (for Analytics). - **userLastName** (string) - Optional - Last name of the user viewing the feed (for Analytics). - **userEmail** (string) - Optional - Email of the user viewing the feed (for Analytics). - **userId** (string) - Optional - ID of the user viewing the feed (for Analytics). - **theme** (string) - Optional - Theme class to use for appearance customization via CSS. [Only available on the Pro plan (and up)] ### Response #### Success Response (200 OK) - **url** (string) - The URL for your standalone feed. #### Response Example (200 OK) ```json { "url": "https://app.getbeamer.com/beamer/" } ``` #### Error Responses - **401 Unauthorized**: Either no API key was provided or the provided API key is invalid. - **403 Forbidden**: Not allowed to access this resource. - **405 Method Not Allowed**: This method is not allowed on this resource. - **429 Too Many Requests**: You have reached your account's monthly requests limit. If you think this is wrong, please reach out on our Support chat. - **500 Internal Server Error**: Something went wrong on our side. ``` -------------------------------- ### Check NPS Prompt Visibility Source: https://www.getbeamer.com/api Use the GET method to check if a user meets the conditions to see the NPS prompt. Provide user details and context like URL and language. ```HTTP GET /nps/check?userId=user_123&userEmail=user@example.com&url=https://example.com/page&language=en&mobile=true ``` -------------------------------- ### Get existing feature requests Source: https://www.getbeamer.com/api Use the GET method to query and retrieve existing feature requests from your account. This endpoint supports filtering by segmentation, date range, language, category, status, visibility, search terms, and pagination. ```APIDOC ## GET /requests ### Description Use the GET method to query and retrieve existing feature requests from your account. ### Method GET ### Endpoint /requests ### Parameters #### Query Parameters - **filters** (string) - Optional - Retrieve feature requests with a matching segmentation filter. **[Only available on the Pro plan (and up)]** - **dateFrom** (string) - Optional - Retrieve feature requests created after this date. The date must follow the ISO-8601 format. - **dateTo** (string) - Optional - Retrieve feature requests created before this date. The date must follow the ISO-8601 format. (current date/time) - **language** (string) - Optional - Retrieve feature requests with translations in this language. The language must follow the ISO-639 two-letter code format. - **category** (string) - Optional - Retrieve feature requests with this category. - **status** (string) - Optional - Retrieve feature requests with this status. - **visible** (boolean) - Optional - Retrieve only visible (or not visible) feature requests. If unspecified, both types of feature requests will be retrieved. - **search** (string) - Optional - Retrieve feature requests with title or content that contain this text. - **maxResults** (integer) - Optional - Retrieve this many feature requests (at most). The max number of posts returned is 10. - **page** (integer) - Optional - Combined with the value of 'maxResults' (or its default value), paginate the retrieval of feature requests. ### Response #### Success Response (200 OK) - **FeatureRequest** (object) - Feature requests retrieved. #### Response Example (200 OK) ```json [ { "id": "123", "date": "2018-12-31T00:00:00Z", "visible": "true", "category": "bug", "status": "under_review", "translations": [ { "title": "Title of the feature request.", "content": "Content of the feature request.", "contentHtml": "\nContent of the feature request.\n", "language": "EN", "permalink": "https://app.getbeamer.com/beamer/requests/en/example-feature-request", "images": [ "https://app.getbeamer.com/pictures?id=123" ] } ], "votesCount": 10, "commentsCount": "10", "notes": "Internal note", "filters": "Feature request", "internalUserEmail": "janedoe@getbeamer.com", "internalUserFirstname": "Jane", "internalUserLastname": "Doe", "userId": "1010", "userEmail": "johndoe@getbeamer.com", "userFirstname": "John", "userLastname": "Doe", "userCustomAttributes": { "Organization": "Example", "age": 33 } } ] ``` ### Error Handling - **400 Bad Request**: Some parameter is missing or doesn't follow the API specification. - **401 Unauthorized**: Either no API key was provided or the provided API key is invalid. - **403 Forbidden**: Not allowed to access this resource. - **405 Method Not Allowed**: This method is not allowed on this resource. - **429 Too Many Requests**: You have reached your account's monthly requests limit. If you think this is wrong, please reach out on our Support chat. - **500 Internal Server Error**: Something went wrong on our side. ```