{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"a2c754cf-2ee8-42d7-85ae-1054ed2f8ff9","name":"HouseCanary Analytics And Portfolio Monitoring APIs","description":"# HouseCanary Analytics API\n\nWelcome to the [HouseCanary Analytics API](https://www.housecanary.com/products/data-points/)! You can use the HouseCanary Analytics API to access HouseCanary's proprietary analytics as well as public records data.\n\n## Making Requests\n\n### URL structure\n\nThe HouseCanary API is based on [REST](https://en.wikipedia.org/wiki/Representational_state_transfer).\n\nThe base URL of the API is https://api.housecanary.com. All endpoints have request URLs with the following form: `{BASE}/{ENDPOINT}`.\n\nEach property-data endpoint follows the form: `{VERSION}/{LEVEL}/{TARGET}`, where `{VERSION}` is either v2 or v3, `{LEVEL}` is one of the following values, and `{TARGET}` is the data descriptor such as `value`, `rental_value`, `details`, etc.\n\n| Level      | Description                                                 |\n| ---------- | ----------------------------------------------------------- |\n| property   | Individual property: a building or a unit within a building |\n| block      | US-census block                                             |\n| blockgroup | US-census block group                                       |\n| zip        | US zipcode                                                  |\n| metrodiv   | US-census Metropolitan Division                             |\n| msa        | US-census Metropolitan Statistical Area                     |\n| reports    | A HouseCanary report                                        |\n| state      | US State                                                    |\n\nWe also feature API endpoints dedicated to accomplishing other tasks, such as managing a portfolio of properties. These are listed below the \"level\" based property data endpoints:\n\nNote that while most HouseCanary endpoints are v2 urls, there are a few new endpoints that utilize v3. Be sure to check each endpoint's documentation to confirm the correct base URL structure and version.\n\n**Example (v2):** `https://api.housecanary.com/v2/property/value` has the version `v2`, level `property`, and a target of `value`, which comprise an endpoint `v2/property/value`.\n\n**Example (v3):** `https://api.housecanary.com/v3/property/hoa_est` has the version `v3`, level `property`, and a target of `hoa_est`, which comprise an endpoint `v3/property/hoa_est`.\n\nFor brevity, we will skip the base URL in most of this document. If the shown URL starts with the slash, the corresponding full URL can always be obtained by prepending it with the base URL.\n\n### Requests\n\nEach request URL allows accessing data for items that belong to the URL's level. Items can be specified by the identifiers in the Levels and Identifiers section.\n\n- Data for a single item can be retrieved with a `GET` request by specifying item identifiers in the query string.\n- Data for multiple items can be retrieved in bulk using a single POST request by specifying a sequence of item identifiers in the JSON-encoded body.\n\nIn both cases, the requested items are always members of the same level, that of the URL.\n\n### Responses\n\nThe responses to both `GET` and `POST` requests are JSON arrays representing the sequence of data chunks, one chunk for each requested item, preserving the request sequence order:\n\n- A response to `GET` requests will contain a single chunk, because the single item was requested.\n- A response to `POST` requests will contain as many chunks as there were items in the requested sequence.\n\n## Authentication\n\nIn order to use the HouseCanary API, you must obtain a credentials pair (`API Key`, `API Secret`) from your [settings page](https://platform.housecanary.com/api-settings).\n\nAuthentication of API requests is made using [HTTP Basic Authentication](https://en.wikipedia.org/wiki/Basic_access_authentication). Use your `API Key` as the user name and your `API Secret` as the password for Basic Authentication. HTTPS must be used for all API requests. See the full request examples below that show how to authenticate with the API in various programming languages.\n\nFor Authentication failure information, see the Authentication Failures section below.\n\n### Test Credentials\n\nTest credentials are useful for verifying functionality in a development or staging environment. In order to generate test credentials (`API Key`, `API Secret`), go to your [settings page](https://platform.housecanary.com/api-settings) and use the “New Test API Key” link.\n\nYour test credentials can be used to make test requests. The HouseCanary API maintains a whitelist of items that can be used in test requests. See the Test Lists group of endpoints to retrieve test identifiers for use with test keys at each property-data entity level.\n\n## Permissions\n\nTo use the HouseCanary Analytics API, your user account must have permissions enabled for all API components that you want to access. You can check which components you have enabled in the “Analytics API” section of the [API settings](https://platform.housecanary.com/api-settings). If you have any questions about the components you have access to, contact [support](https://support.housecanary.com/).\n\n## Levels and Identifiers\n\nDifferent identifiers are used depending on the level of the URL. For example, properties are identified by their addresses, while residential blocks are identified by their census block IDs. The possible identifiers for each level are:\n\n- `property`: any combination of `address`, `unit`, `state`, `city`, and `zipcode` that identifies the US address. Usually, this is `address` and `zipcode` or `address`, `city`, `state`. Also, a `slug` can be used.\n- `block`: a `block_id`.\n- `blockgroup`: a `blockgroup_id`.\n- `zip`: a `zipcode`.\n- `metrodiv`: a `metrodiv`.\n- `msa`: an `msa`.\n- `state`: a 2-letter acronym of the US state.\n\nAll possible identifiers and their descriptions are listed below:\n\n| Identifier      | Description                                                                             | Example                                 |\n| --------------- | --------------------------------------------------------------------------------------- | --------------------------------------- |\n| `address`       | Building number, street name, and optionally unit number                                | \"123 Main St\"                           |\n| `unit`          | Unit number for the property, if needed and not already specified in the address string | \"Unit 3\"                                |\n| `city`          | City for the property                                                                   | \"San Francisco\"                         |\n| `state`         | 2-letter acronym of the US state                                                        | \"CA\"                                    |\n| `zipcode`       | Zipcode for the property                                                                | \"94105\"                                 |\n| `slug`          | A single URL-safe string identifying the address (obtained from HouseCanary)            | \"123-Example-St-San-Francisco-CA-94105\" |\n| `block_id`      | 15-digit census block ID                                                                | \"060750615003005\"                       |\n| `blockgroup_id` | 12-digit census block group ID                                                          | \"060750615003\"                          |\n| `metrodiv`      | 5-digit Metropolitan Division ID                                                        | \"41884\"                                 |\n| `msa`           | 5-digit Metropolitan Statistical Area ID                                                | \"41860\"                                 |\n\n## GET Requests\n\nUsing a `GET` request, you can retrieve data for a single item from an endpoint by specifying item identifiers in the query parameters.\n\n### GET URL Format\n\n`GET https://api.housecanary.com/{VERSION}/{ENDPOINT}?{IDENTIFIERS}`\n\n- `{VERSION}` is the version relevant to the endpoint you are calling, either `v2` or `v3`.\n- `{ENDPOINT}` is the specific endpoint you are calling, such as `property/value`.\n- `{IDENTIFIERS}` is the URL-encoded string providing item identifiers as an ampersand-separated list of key=value pairs. Exact identifiers depend on the level of the URL, see [Levels and Identifiers](#levels-and-identifiers).\n\nExample URL separated into constituent segments:\n\n- `{BASE}: https://api.housecanary.com`\n- `{VERSION}: v2/`\n- `{ENDPOINT}: zip/details`\n- `{IDENTIFIERS}: zipcode=01234`\n\nThen, combined together:\n\n`{BASE}/{ENDPOINT}?{IDENTIFIERS}`:\n\n`https://api.housecanary.com/v2/zip/details?zipcode=01234`\n\nExample GET URLs:\n\n- `https://api.housecanary.com/v2/property/geocode?address=10216+N+Willow+Ave&zipcode=64157`\n- `https://api.housecanary.com/v2/property/value?address=10216+N+Willow+Ave&zipcode=64157`\n- `https://api.housecanary.com/v2/property/value?address=65239+Rosanne+Prairie+St&city=Bayardchester&state=CA`\n- `https://api.housecanary.com/v2/property/rental_value?slug=65239-Rosanne-Prairie-Bayardchester-CA-90113`\n- `https://api.housecanary.com/v2/block/value_distribution?block_id=012345678901234`\n- `https://api.housecanary.com/v2/zip/details?zipcode=01234`\n- `https://api.housecanary.com/v2/msa/hpi_ts?msa=38060`\n\n## POST Requests\n\nUsing a POST request, you can retrieve data for multiple items by specifying a sequence of item identifiers in the POST body. We strongly recommend using POST requests for batching whenever possible.\n\n_Note: POST requests are only supported for the Analytics API. Value Report, Rental Report, and Value Analysis do not support POST requests._\n\n### POST URL Format\n\n`POST https://api.housecanary.com/{VERSION}/{ENDPOINT}`\n\n`{VERSION}` is the version relevant to the endpoint you are calling, either `v2` or `v3`.\n\n`{ENDPOINT}` is the specific endpoint you are calling, such as `property/geocode`.\n\nExample POST URL format:\n\n- `https://api.housecanary.com/v2/property/geocode`\n- `https://api.housecanary.com/v2/property/component_mget?components=property/details,property/value`\n\n### POST Body\n\nAll POST requests must have the Content-Type header set to `application/json` and the POST body must be a valid json array representing a sequence of requested item identifiers.\n\nThere is a limit of 100 items per POST request (i.e. 100 address + zipcode combinations, or 100 block_ids).\n\nAll items in a single POST request must have the same set of keys. For property-level POST requests, either `address` or `slug` keys must be present for all items so HouseCanary can identify the specific properties.\n\nEach item in the json array must contain one or more of the following keys:\n\n| Level     | Key           | Required? | Description                                                                                                                                                                              | Value Example                           |\n| --------- | ------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------- |\n| property  | address       | No        | Building number, street name, and optionally unit number                                                                                                                                 | \"123 Main St\"                           |\n| property  | unit          | No        | Unit number for the property, if needed and not already specified in the address string                                                                                                  | \"Unit 3\"                                |\n| property  | city          | No        | City for the property                                                                                                                                                                    | \"San Francisco\"                         |\n| property  | state         | No        | Either the full name or a 2-letter acronym of the US state                                                                                                                               | \"CA\"                                    |\n| property  | zipcode       | No        | 5-digit ZIP code for the property                                                                                                                                                        | \"94105\"                                 |\n| property  | slug          | No        | A single URL-safe string identifying the address (obtained from HouseCanary)                                                                                                             | \"123-Example-St-San-Francisco-CA-94105\" |\n| block     | block_id      | Yes       | 15-digit census block ID                                                                                                                                                                 | \"060750615003005\"                       |\n| block     | blockgroup_id | Yes       | 12-digit census block ID                                                                                                                                                                 | \"060750615003\"                          |\n| zipcode   | zipcode       | Yes       | 5-digit ZIP code                                                                                                                                                                         | \"94105\"                                 |\n| metrodiv  | metrodiv      | Yes       | 5-digit Metropolitan Division ID                                                                                                                                                         | \"41884\"                                 |\n| msa       | msa           | Yes       | 5-digit MSA ID                                                                                                                                                                           | \"41860\"                                 |\n| state     | state         | Yes       | Either the full name or a 2-letter acronym of the US state                                                                                                                               | \"CA\"                                    |\n| any level | meta          | No        | A purely optional key whose value is an arbitrary string that gets returned along with the item in the response. Use this if desired for client-side item references, descriptions, etc. | \"1\"                                     |\n\nExample POST body:\n\n```\n[\n  {\n    \"address\": \"10216 N Willow Ave\",\n    \"zipcode\": \"64157\"\n  },\n  {\n    \"address\": \"34813 SE Burrows Way\",\n    \"zipcode\": \"98065\"\n  }\n]\n```\n\n## Rate Limits\n\nThere are limits on how many API requests can be made in a certain period of time. You can see rate limits for your account in API Settings.\n\n| Endpoints      | Rate limit for self-serve customers | Rate limit for enterprise customers |\n| -------------- | ----------------------------------- | ----------------------------------- |\n| Analytics API  | 250 components per minute           | Custom                              |\n| Value Report   | 10 requests per minute              | Custom                              |\n| Value Analysis | 10 requests per minute              | Custom                              |\n\nContact us or view API Settings for custom rate limits.\n\nRate limits differ between the Analytics API endpoints and the Value Report endpoints. Rate limits for the Analytics API are counted by the number of components called. One component is the combination of a specific endpoint with an address or other geographic level identifier. Value Report and Value Analysis are rate limited based on number of HTTP requests in the time period.\n\n### How different Analytics API requests count against the component rate limit:\n\nGET property/geocode\n\n- 1 endpoint\n- Only accepts 1 address\n- Counts as 1 component against the rate limit\n\nGET property/component_mget with 2 endpoints specified\n\n- 2 endpoints\n- Only accepts 1 address\n- Counts as 2 components against the rate limit\n\nPOST property/geocode with 3 addresses in the body\n\n- 1 endpoint\n- 3 addresses in the body\n- Counts as 3 components against the rate limit\n\nPOST property/component_mget with 4 endpoints specified and 4 addresses in the body\n\n- 4 endpoints\n- 4 addresses in the body\n- Counts as 16 components against the rate limit\n\nCustom response headers are returned from the API to indicate rate limit information:\n\n| Header Name           | Description                                                                                                                                         | Example Value |\n| --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- |\n| X-RateLimit-Period    | Comma separated values that define the rate limit windows, in seconds                                                                               | 60            |\n| X-RateLimit-Limit     | Comma separated values that define the number of components or requests the consumer is permitted to make for each rate limit window                | 250           |\n| X-RateLimit-Remaining | Comma separated values that indicate the number of components or requests remaining for each rate limit window                                      | 248           |\n| X-RateLimit-Reset     | Comma separated values that indicate the time at which each rate limit window resets in [UTC epoch seconds](http://en.wikipedia.org/wiki/Unix_time) | 1525368621    |\n\n## Security\n\nTLS 1.0, 1.1 and 1.2 are supported. SSL is not supported.\n\n## Response Codes and Errors\n\nThe HouseCanary API is built leveraging the REST paradigm. Under normal conditions, the API will return a response with a 200 OK HTTP status code. If an error occurs, the response will contain the appropriate HTTP status code as described below.\n\n### API Code and API Code Description\n\nBecause a single request can include multiple items or multiple endpoints, each response section returned in a normal 200 response will contain its own `api_code` and `api_code_description` fields. These are used to identify business logic errors for those items. The following values may be returned:\n\n| API Code | API Code Description | Meaning                                  |\n| -------- | -------------------- | ---------------------------------------- |\n| 0        | ok                   | Successfully retrieved data for the item |\n| 204      | no content           | Unable to retrieve data for the item     |\n\nWe do not charge for sections returned with a 204 `api_code`.\n\n### 400 - Missing required fields or incorrect request structure\n\nIf one or more required fields for an endpoint are missing in the request, a 400 Bad Request status code will be returned, and the response body will contain an explanation of the error.\n\nA common reason for a 400 response is missing required query parameters.\n\nWe do not charge for requests that result in a response with a 400 status code.\n\n### 401 - Authentication failure\n\nIn the case of authentication failure, a _401 Unauthorized_ status code will be returned.\n\n_Note: In the case of an authentication failure, the system will return a 401 without any explanation or description. Should you have any questions on an auth failure, please contact [HouseCanary technical support](https://support.housecanary.com/)._\n\nWe do not charge for requests that result in a response with a 401 status code.\n\n### 429 - Rate limit hit\n\nIf your organization has made all the component requests allowed under your organization’s rate limit, a 429 Too Many Requests status code will be returned, and the response body will contain the message shown to the right. If you run into this error, you must wait until the UTC epoch time returned in the X-RateLimit-Reset header. If you need a large volume of data, HouseCanary is able to support _significantly_ higher rate limits for enterprise customers. [Contact us](https://support.housecanary.com/) for more details.\n\nWe do not charge for requests that result in a response with a 429 status code.\n","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":true,"owner":"32869976","team":5301831,"collectionId":"a2c754cf-2ee8-42d7-85ae-1054ed2f8ff9","publishedId":"2sBXcLhdZN","public":true,"publicUrl":"https://api-docs.housecanary.com","privateUrl":"https://go.postman.co/documentation/32869976-a2c754cf-2ee8-42d7-85ae-1054ed2f8ff9","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"documentationLayout":"classic-double-column","customisation":{"metaTags":[{"name":"description","value":""},{"name":"title","value":""}],"appearance":{"default":"light","themes":[{"name":"dark","logo":null,"colors":{"top-bar":"212121","right-sidebar":"303030","highlight":"FF6C37"}},{"name":"light","logo":null,"colors":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"}}]}},"version":"8.10.1","publishDate":"2026-03-09T20:55:48.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{"title":"","description":""},"logos":{"logoLight":null,"logoDark":null}},"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/9a2f6b56cb124f61040e3a2a44753f3829c7eb0d2cc5a8403a88c9e1656d6023","favicon":"https://res.cloudinary.com/postman/image/upload/v1704319134/team/lw69nnodltofccs7xt6h.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.housecanary.com/view/metadata/2sBXcLhdZN"}