{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"883dc5d7-8d85-4610-b817-88e4392f5acf","name":"Peoplestrong APIs","description":"PeopleStrong in its pursuit of being the most Open & Connected HR Tech platform has built and made available this API Directory. These APIs provide programmatic access to PeopleStrong's suite of products through REST API endpoints. These APIs are accessible to privileged customers and access would be provided on a request-only basis.\n\nMoreover, these APIs allows the user to access both; full load data or modified data. The full load API gives the user the option to retrieve the data within the selected date range. Additionally, they offer provisions to filter data based on various parameters such as Org Unit, Worksite, Entity, Employee Code, Employee Name, and Official Mail Id, providing the users with absolute control over the data they want to retrieve. This also empowers our users to seamlessly integrate the API in any system (ERPs or Any other platform) and efficiently manage the configurations based on the user needs.\n\nPeopleStrong follow a quarterly release process wherein enhancements are deployed to the API framework. Do reach out to us at [Integrations@peoplestrong.com](https://mailto:Integrations@peoplestrong.com) for any queries you may have.\n\n---\n\n# API Types\n\nPeopleStrong exposes three types of APIs i.e. Inbound API, Outbound API, and Transactional API\n\nInbound API: Inbound API are those API which PeopleStrong HRMS consumes data from customer systems. In this API, the customer’s application makes call to PeopleStrong's API to push data in the database. For example, If the customer would want to push the Attendance Data from their biometric system to PeopleStrong Attendance system to track employee’s attendance.\n\nOutbound API: Outbound API are those API where PeopleStrong system will make a call to send data to any platform being used at customer’s end. For example, in case of new hire information the customer may need the details of the employees to flow to their destination system.\n\nTransactional API: Transactional API are specifically designed for processing and managing transactions which typically impact financial or business-related operations. For example, the customer may need details of all leave transactions being performed in PeopleStrong system so that they can drive some business actions at their end.\n\n---\n\n# **Error Codes**\n\nError codes are commonly used as standardized numerical or alphanumeric identifiers to denote particular categories of errors, exceptions, or problems that might arise during interactions with an application or system through an API. They play a crucial role in establishing a systematic and effective mode of communication among the application, the API, and the developers or users engaged with it.\n\nIt has been ensured that the error handling being performed during integrations is descriptive and user-friendly, with a comprehensive view to assist the customers/ consumers understand the reason for the error. PeoplsStrong APIs follow a standard Error handling process with an exhaustive list of errors as shown below:\n\n**EC 2XXX Series**: Successful\n\n- EC 2000: Processed Successfully\n    - Example: The request to retrieve employee data was successful. The API returns the requested dataEndFragment\n        \n\n**EC 4XXX Series**: Request contains bad syntax or cannot be fulfilled\n\n- EC4001, Content-Type must be provided.\n    \n- Example:\n    \n    - Scenario: The request to update an employee's information was missing the Content-Type header.\n        \n    - Recommendation: Content-type must be application/Json for JSON payloads.\n        \n- EC4002, Integration name is not provided in the request.\n    \n- Example:\n    \n    - Scenario: A request to integrate with a third-party system did not specify the integration name.\n        \n    - Recommendation: Integration name must be present in the request body.\n        \n- EC4003, Authorization header must be provided\n    \n- Example:\n    \n    - Scenario: An API request was missing the required Authorization header of postman(API tool) that contains an access token for the API.\n        \n    - Recommendation: Ensure that the request includes the necessary Authorization header with a valid access token.\n        \n- EC4004, Access token not in proper format.\n    \n- Example:\n    \n    - Scenario: The access token provided in the request was not in the expected format. It must be generated by the combination of tenant id and secret key.\n        \n    - Recommendation: Generate the access token using the correct format, combining the tenant ID and secret key.\n        \n- EC4005, Invalid Dynamic Filter provided in the request body.\n    \n- Example:\n    \n    - Scenario: The request included a dynamic filter that was not valid or supported by the API. For instance, if a user requested a filter on \"gender,\" but \"gender\" is not supported in the dynamic filter, this error would occur.\n        \n    - Recommendation: Ensure that the dynamic filter criteria align with the supported filter options.\n        \n- EC4006, Invalid StartDate Filter.\n    \n- Example:\n    \n    - Scenario: A request included StartDate filter with an invalid date format.\n        \n    - Recommendation: Use the correct format for the StartDate filter, as demonstrated in the provided below example,\n        \n\n\"startDate\":{  \n\"value\":\"123\",  \n\"field\":\\[  \n{  \n\"fieldCode\":\"12\",  \n\"operator\":\"=\"  \n}  \n\\]  \n}\n\n- EC4007, Invalid EndDate Filter.\n    \n- Example:\n    \n    - Scenario: A request included EndDate filter with an invalid date format.\n        \n    - Recommendation: Use the correct format for the EndDate filter, as demonstrated in the provided example\n        \n\n\"endDate\":{  \n\"value\":\"123\",  \n\"field\":\\[  \n{  \n\"fieldCode\":\"12\",  \n\"operator\":\"=\"  \n}  \n\\]  \n}\n\n- EC4009, Range between start Date and end Date is greater than the startEndRange\n    \n- Example:\n    \n    - Scenario: The date range specified in the request exceeded the maximum allowed range.\n        \n    - Recommendation: The maximum allowed range is 15 days, meaning the difference between the start date and end date must be less than or equal to 15 days.\n        \n- EC4010, Invalid filters sent in the request.\n    \n- Example:\n    \n    - Scenario: The request included filter parameters that were not configured or supported by the API.\n        \n    - Recommendation: Ensure that the request includes valid and supported filter parameters.\n        \n\n**EC 5xxx**: Server error. It will give the message as “API unable to fetch data” at user end.\n\n- EC5000, INTERNAL_SERVER_ERROR\n    \n- Example:\n    \n    - Scenario: The API encounters an internal server error during request processing, such as a server error or timeout.\n        \n    - Recommendation: Users should check their request for correctness and consider contacting the API provider's support team for assistance in resolving internal server errors.\n        \n- EC5001, OUTBOUND_JOIN_COLUMN_ATTRIBUTE_NULL\n    \n- Example:\n    \n    - Scenario: It is data base related error. API encounters an issue related to outbound data synchronization with missing join column attributes.\n        \n    - Recommendation: Users should review their API request and ensure that it includes all required join column attributes as per API contract.\n        \n- EC5002, NO_MARKER_FOR_REQUEST\n    \n- Example:\n    \n    - Scenario: The API request lacked the necessary marker for data retrieval. The marker is set up to the point where the data was sent at a particular date and time.\n        \n    - Recommendation: Users should review their API request and ensure that it includes all required join column attributes as specified in the API documentation\n        \n- EC5003, PRIMARY_KEY_NULL\n    \n- Example:\n    \n    - Scenario: The API encounters a situation where a primary key in a database record is null.\n        \n    - Recommendation: Users should ensure that their data records have valid primary keys before making API requests. Missing primary keys can lead to data-related issues.\n        \n- EC 5004, SYNTAX_ERROR_IN_QUERY\n    \n- Example:\n    \n    - Scenario: There was a syntax error in the query provided in the API request, such as providing \"=>\" instead of \">=\"\n        \n    - Recommendation: Users should carefully review their query syntax and correct any errors before submitting the request. Syntax errors can be resolved by following the correct query format.\n        \n- EC 5005, ERROR_IN_DYNAMIC_QUERY_CREATION\n    \n- Example:\n    \n    - Scenario: An error occurs while dynamically creating a query within the API, often due to incorrect join queries.\n        \n    - Recommendation: Users should review their API request and ensure that any dynamically created queries adhere to the API's requirements. Careful review of the query generation process is necessary\n        \n- EC 5006, MARKER_INSERTION_IN_DB_FAILURE\n    \n- Example:\n    \n    - Scenario: The API encounters an issue when trying to insert a marker into the database.\n        \n    - Recommendation: Users should monitor their database server and ensure it is running correctly. Database-related errors like marker insertion failures may require database administration assistance.\n        \n- EC 5007, REDIS_MARKER_DELETION_FAILURE\n    \n- Example:\n    \n    - Scenario: The API fails to delete a marker from the Redis cache.\n        \n    - Recommendation: Users should check their Redis cache configuration and ensure that it is functioning correctly. Cache-related errors may require Redis cache administration support.\n        \n- EC 5008, MARKER_NULL_OR_INVALID\n    \n- Example:\n    \n    - Scenario: The marker provided in the API request is either null or invalid.\n        \n    - Recommendation: Users should provide a valid and non-null marker in their API requests, as specified in the API documentation. Invalid markers can lead to data retrieval issues.\n        \n- EC 5009, ERROR_IN_DYNAMIC_QUERY_SYNTAX_OR_FROM_DATALAKE\n    \n- Example:\n    \n    - Scenario: There is an error related to dynamic query syntax or data retrieval from the data lake.\n        \n    - Recommendation: Users should review their dynamic query syntax and ensure it aligns with the API's requirements. Additionally, data retrieval from the data lake should be validated and configured correctly.\n        \n- EC 5010, UNIQUE_IDENTIFIER_COLUMN_NAME_NULL\n    \n- Example:\n    \n    - Scenario: The API encounters a situation where the column name for a unique identifier is null.\n        \n    - Recommendation: Users should ensure that unique identifier columns have valid names in their API requests. Missing column names for unique identifiers can cause data-related issues.\n        \n- EC5011, ONE_TO_ONE_TABLE_OR_PRIMARY_KEY_NULL\n    \n- Example:\n    \n    - Scenario: There is an issue with a one-to-one table or the primary key associated with it.\n        \n    - Recommendation: Users should review their one-to-one table configurations and primary key settings to ensure they are correctly defined in their API requests.\n        \n- EC5012, COLUMNWISE_TABLE_OR_PRIMARY_KEY_NULL\n    \n- Example:\n    \n    - Scenario: The API detects a null column or primary key in a column-wise table.\n        \n    - Recommendation: Users should verify that their column-wise tables do not contain null columns or primary keys when making API requests. Data integrity is crucial.\n        \n- EC 5013, MUTLIPLE_1M_TABLES_FOR_MASTER\n    \n- Example:\n    \n    - Scenario: The API encounters multiple one-to-many tables assigned for a single field.\n        \n    - Recommendation: Users should review their API request and ensure that one-to-many tables are appropriately mapped to avoid conflicts. Each field should be associated with the correct table.\n        \n- EC5014, MUTLIPLE_COLUMN_WISE_TABLES_FOR_MASTER\n    \n- Example:\n    \n    - Scenario: The API encounters multiple one-to-many tables assigned for a single field for delta values or changed values.\n        \n    - Recommendation: Users should carefully review their API request and ensure that one-to-many tables are correctly mapped for delta values or changed values. Consistency is essential.\n        \n- EC5015, ERROR_FROM_CLIENT_CONFIG_API\n    \n- Example:\n    \n    - Scenario: An error occurs while interacting with the client configuration API, particularly when configuring from the UI and calling the API.\n        \n    - Recommendation: Users should verify their UI configuration and API calls. If data retrieval from the database fails, contact support for assistance.\n        \n\n**6xxx Custom**: Client Side Config Error\n\n- EC6001, API does not exist or is inactive for this organization.\n    \n- Example:\n    \n    - Scenario: The client attempts to access an API that does not exist or is not active for their organization.\n        \n    - Recommendation: Users should ensure that the API they are trying to access is active and exists for their organization. If necessary, contact the API provider for clarification.\n        \n- EC6002, Multiple APIs configured for this organization/entity\n    \n- Example:\n    \n    - Scenario: The organization or entity has multiple APIs configured with the same name, causing a conflict.\n        \n    - Recommendation: Users should review their API configurations and ensure that each API has a unique name. Conflicting API names can lead to issues.\n        \n- EC6003, Data flow type is null or empty.\n    \n- Example:\n    \n    - Scenario: The data flow type is not specified or is empty in the API request.\n        \n    - Recommendation: Users should specify the data flow type (e.g., Row-wise, Column-wise, Full load) in their API request to ensure proper data processing.\n        \n- EC6004, Configured DataFlowType doesn't exist.\n    \n- Example:\n    \n    - Scenario: The data flow type specified in the API request does not exist.\n        \n    - Recommendation: Users should ensure that they specify a valid data flow type (e.g., Row-wise, Column-wise, Full load) in their API request. The selected data flow type must be available and configured.\n        \n- EC6005, API Response Format is set as null.\n    \n- Example:\n    \n    - Scenario: The API request does not specify a valid response format, such as XML or JSON.\n        \n    - Recommendation: Users should specify a valid response format (e.g., XML or JSON) in their API request to ensure that the API responds in the desired format.\n        \n- EC6006, Pagination Limit is configured as null. Please provide a valid value before proceeding.\n    \n- Example:\n    \n    - Scenario: Pagination limit is not provided in the API request.\n        \n    - Recommendation: Users should include a valid pagination limit in their API request to control the number of results returned.\n        \n- EC6007, Config not found for the given Api\n    \n- Example:\n    \n    - Scenario: The API configuration is missing for the requested API, such as module or submodule settings.\n        \n    - Recommendation: Users should ensure that they configure all necessary settings, including module and submodule, when setting up the API. Missing configurations can lead to issues.\n        \n- EC6008, Invalid number of master types found for the outbound API.\n    \n- Example:\n    \n    - Scenario: The API request includes an invalid number of master types for an outbound API, causing a conflict.\n        \n    - Recommendation: Users should review their API request and ensure that they specify the correct number of master types. An outbound API typically supports one master type at a time in its response\n        \n- EC6009, No visible fields are configured in hierarchy for tree format.\n    \n- Example:\n    \n    - Scenario: The hierarchy for tree format in the API request lacks visible fields that are present on the Admin UI.\n        \n    - Recommendation: Users should ensure that they select and include visible fields in the hierarchy for tree format when making API requests. This ensures consistency with the Admin UI.\n        \n\nThe error codes are designed to provide clear and specific information about the errors encountered in the API requests, making it easier for consumers to understand and troubleshoot the reason for failures encountered during the integration process.\n\n---\n\n# Rate Limit\n\nRate limiting is a mechanism used to control the rate or frequency at which requests or transactions can be made to an external system, service, or API. It is a technique used to prevent excessive usage or abuse of resources, ensure fair usage, and maintain the stability and performance of both the integrating system and the target system or API\n\nAPI access rate limit can be applied on Size and Number of invocations. Number of invocations is based on 'API request per hour', 'API request per day', and 'API request per month' whereas size limit refers the API size i.e, based on kb or mb. PeopleStrong system also has the capability to track the status of API consumption. Below are the data points which the system tracks along with the behavior of the system in case the limit gets exceeded.\n\n- Consumed API request details\n    \n- Remaining API request details\n    \n\nIf the rate limit of API will exceed number of invocations, it will throw error, “API rate limit exceeded \" with status code 429. If API records exceeded the size limit, it will throw error, \"API size limit exceeded \" with status code 413.\n\n---\n\n# **Webhook**\n\nWebhook is an http request that notifies you when some specific events happen in the source application/system. This \"push\" mechanism makes webhooks an efficient alternative to the traditional \"pull\" method used by APIs. Peoplestrong provides webhook functionality on row wise and column wise incremental APIs.\n\nAt peoplestrong, we have flexible frameworks to enable webhook where customers can configure their own security and customized message notification in the webhook. Webhook intimate any data change in every 1Hr.\n\n---\n\n# Recall Failed Data API\n\nPeopleStrong provides an API to recall old data for outbound APIs, allowing users to retrieve data in case of any failed records. To recall the data, a special parameter, “setMarkerDate,” is used in the existing outbound API. This parameter resets the marker of the API to the closest timestamp provided in “setMarkerDate.” Please note that \"setMarkerDate\" cannot be older than one month.\n\nThe response from the reset marker API will not include data. Instead, data will be provided only after resetting, through a “Normal API request body”. The rate limit for this action is utilized from existing API rate limit.\n\nExample payload:\n\nNormal API Request:\n\n{\n\n```\n\"integrationMasterName\": \"EmployeeResetMarkerTest1\" \n\n ```\n\n}\n\nReset data API Request:\n\n{\n\n```\n\"integrationMasterName\": \"EmployeeResetMarkerTest1\", \n\"setMarkerDate\" : \"2024-07-01 14:28:40\" \n\n ```\n\n}","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"26371495","team":4814747,"collectionId":"883dc5d7-8d85-4610-b817-88e4392f5acf","publishedId":"2s93Xwzj8o","public":true,"publicUrl":"https://api-docs.peoplestrong.com","privateUrl":"https://go.postman.co/documentation/26371495-883dc5d7-8d85-4610-b817-88e4392f5acf","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"documentationLayout":"classic-double-column","customisation":null,"version":"8.10.1","publishDate":"2023-04-14T09:13:48.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/fb4713db2b477b94df18b5f0eb67fb122b0b0b8eb357da2fa41732b3d163dbd7","favicon":"https://peoplestrong.com/favicon.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://api-docs.peoplestrong.com/view/metadata/2s93Xwzj8o"}