--- title: Technographics description: This endpoint lists the technologies used by a company. For each technology, it returns the confidence level (`low`, `medium`, `high`), the number of jobs that mention the technology, and the first and last dates it was mentioned. url: https://theirstack.com/en/docs/api-reference/companies/technographics_v1 --- You must specify `company_domain`, `company_name`, `company_linkedin_url`. It consumes **3 [API credits](/en/docs/pricing/credits)** per company lookup, regardless of the number of technologies returned. It doesn't consume credits if there is no response. ## POST /v1/companies/technologies — Technographics This endpoint lists the technologies used by a company. For each technology, it returns the confidence level (\`low\`, \`medium\`, \`high\`), the number of jobs that mention the technology, and the first and last dates it was mentioned. You must specify \`company\_domain\`, \`company\_name\`, \`company\_linkedin\_url\`. It consumes \*\*3 API credits\*\* per company lookup, regardless of the number of technologies returned. It doesn't consume credits if there is no response. ### Request body | Field | Type | Required | Description | | --- | --- | --- | --- | | `company_domain` | string | No | Only return companies that match this domain exactly. It accepts full urls (https://www.google.com/) and emails (john.polo@gmail.com). | | `company_id` | string | No | Only return companies that match this TheirStack Company ID exactly. This ID is temporary and internal and will change in the future and become stable. Until then, it is only meant to be used internally by our UI (app.theirstack.com). For deduplication logic, use company\_domain or company\_linkedin\_url instead. | | `company_linkedin_url` | string | No | Return companies whose LinkedIn URL matches this URL exactly. | | `company_name` | string | No | Only return companies that match this name exactly, case-sensitively. | | `company_name_or` | array | No | Only return companies that match these names exactly, case-sensitively. Deprecated, use the \`company\_name\` filter instead. | | `confidence_or` | array | No | Returns technologies with any of these confidence values that the companies use them. Available values: "high", "medium", "low" | | `first_date_found_gte` | string | No | Only return technologies where the first time they were found was after or on this date. Format: "YYYY-MM-DD" | | `first_date_found_lte` | string | No | Only return technologies where the first time they were found was before or on this date. Format: "YYYY-MM-DD" | | `include_total_results` | boolean | No | When enabled, calculates and returns \`total\_results\` and \`total\_companies\` fields in the response. WARNING: This significantly slows down responses as it requires reading the entire dataset. Recommended usage: enable only for the initial request to get totals, then disable for subsequent pagination requests. Default: false | | `keyword_category_slug_or` | array | No | Return companies that have mentioned any keyword from any of these categories in their jobs. Case sensitive. Pass slugs. Check out all keyword categories at \[GET /v0/catalog/keywords/categories\](https://theirstack.com/en/docs/api-reference/catalog/get\_catalog\_keywords\_categories\_v0) | | `keyword_parent_category_slug_or` | array | No | Return companies that have mentioned any keyword from any of these parent categories in their jobs. Case sensitive. Pass slugs. Check out all keyword categories at \[GET /v0/catalog/keywords/categories\](https://theirstack.com/en/docs/api-reference/catalog/get\_catalog\_keywords\_categories\_v0) | | `keyword_slug_or` | array | No | Return companies that have mentioned any of these keywords (technologies or buying intent topics) in their jobs. Case sensitive. Pass slugs. Check out all keywords at \[GET /v0/catalog/keywords\](https://theirstack.com/en/docs/api-reference/catalog/get\_catalog\_keywords\_v0) | | `last_date_found_gte` | string | No | Only return technologies where the last time they were found was after or on this date. Format: "YYYY-MM-DD" | | `last_date_found_lte` | string | No | Only return technologies where the last time they were found was before or on this date. Format: "YYYY-MM-DD" | | `limit` | integer | No | Number of results per page | | `max_jobs` | integer | No | Maximum number of jobs found by each company using a technology | | `max_rank` | integer | No | The rank measures how common is a technology within its category. The technology most used among similar ones by a company will have a rank of 1, the second: 2, etc. This is useful to filter results by technology and get only results for the primary technology. | | `min_jobs` | integer | No | Minimum number of jobs found by each company using a technology | | `min_relative_occurrence` | number | No | Minimum value of relative\_occurrence\_within\_category for each technology. Higher values increase the probability that this technology is actually used by the company, because it means a higher percentage of mentions to technologies among this category are of this technology. | | `offset` | integer | No | Number of results to skip. Required for \[offset-based pagination\](https://theirstack.com/en/docs/api-reference/pagination). | | `order_by` | array | No | List of column objects. You can pass several columns to order by, in order of priority. Only \`field\` is required, \`desc\` is True by default. Default: \[{"desc":true,"field":"confidence"},{"desc":true,"field":"jobs"}\] | | `page` | integer | No | Page number. Required when using \[page-based pagination\](https://theirstack.com/en/docs/api-reference/pagination). | | `technology_category_slug_or` | array | No | Deprecated: use \`keyword\_category\_slug\_or\` instead. Will return companies that have mentioned any keyword from any of these categories in their jobs. Case sensitive. Pass slugs. | | `technology_parent_category_slug_or` | array | No | Deprecated: use \`keyword\_parent\_category\_slug\_or\` instead. Will return companies that have mentioned any keyword from any of these parent categories in their jobs. Case sensitive. Pass slugs. | | `technology_slug_or` | array | No | Deprecated: use \`keyword\_slug\_or\` instead. Will return companies that have mentioned any of these technologies in their jobs. Case sensitive. Pass slugs. | #### `order_by` | Field | Type | Required | Description | | --- | --- | --- | --- | | `desc` | boolean | No | Whether to order by descending or ascending values Default: true | | `field` | enum(, jobs, jobs\_last\_7\_days, jobs\_last\_30\_days, jobs\_last\_180\_days, last\_date\_found, first\_date\_found, relative\_occurrence\_within\_category, theirstack\_score, confidence) | No | Order the results by some of these fields | ### Request examples #### Databases used by Microsoft (Name) ``` { "company_name": "Microsoft", "keyword_category_slug_or": [ "relational-databases" ], "technology_category_slug_or": [ "relational-databases" ] } ``` #### All available parameters ``` { "company_name_or": [ "Google" ], "confidence_or": [], "include_total_results": false, "keyword_category_slug_or": [], "keyword_parent_category_slug_or": [], "keyword_slug_or": [], "keyword_type_not": [], "keyword_type_or": [], "order_by": [ { "desc": true, "field": "confidence" }, { "desc": true, "field": "jobs" } ], "technology_category_slug_or": [], "technology_parent_category_slug_or": [], "technology_slug_or": [] } ``` #### Technologies used by google.com (Domain) ``` { "company_domain": "google.com" } ``` #### Is Apple using Python? ``` { "company_domain": "apple.com", "keyword_slug_or": [ "python" ], "technology_slug_or": [ "python" ] } ``` #### Technologies used by OpenAI (LinkedIn URL) ``` { "company_linkedin_url": "https://www.linkedin.com/company/openai/" } ``` ### Responses #### 200 — Successful Response | Field | Type | Required | Description | | --- | --- | --- | --- | | `data` | array | Yes | | | `metadata` | Metadata | Yes | | ##### `data` | Field | Type | Required | Description | | --- | --- | --- | --- | | `confidence` | enum(low, medium, high) | Yes | How confident we are that the company uses this technology | | `first_date_found` | string | Yes | Date when the keyword was first mentioned by the company in a job post | | `jobs` | integer | Yes | Number of jobs found mentioning this technology | | `jobs_last_180_days` | integer | Yes | Number of jobs from the given company mentioning this technology in the last 180 days | | `jobs_last_30_days` | integer | Yes | Number of jobs from the given company mentioning this technology in the last 30 days | | `jobs_last_7_days` | integer | Yes | Number of jobs from the given company mentioning this technology in the last 7 days | | `last_date_found` | string | Yes | Date when the keyword was last mentioned by the company in a job post | | `rank_within_category` | integer | Yes | Measures how common this technology is among the company's jobs, compared to other technologies in the same category. The most mentioned technology in its category will have a rank of 1. This helps you infer which is the technology the company is most likely to be using, when they mention several technologies that belong to the same category. | | `relative_occurrence_within_category` | number | Yes | Measures the relative occurance of this technology among other technologies in the same category, in jobs by this company. If there are 10 jobs where a company mentions 3 categories, and they appear in 8, 3 and 2 jobs respectively, its relative occurrences will be 0.8, 0.3 and 0.2. This helps you infer how likely it is that the company is using this technology, when they mention several technologies that belong to the same category. | | `technology` | KeywordExtended | Yes | Technology object | ###### `technology` | Field | Type | Required | Description | | --- | --- | --- | --- | | `category` | string | No | Category of the keyword | | `category_slug` | string | No | Slug of the category of the keyword | | `logo` | string | No | Logo of the keyword | | `logo_thumbnail` | string | No | Thumbnail of the keyword | | `name` | string | Yes | | | `parent_category` | string | No | Parent category of the keyword | | `parent_category_slug` | string | No | Slug of the parent category of the keyword | | `slug` | string | Yes | Slug of the keyword | | `type` | enum(technology, software\_product, technology\_concept, operational\_activity, strategic\_initiative, metric\_or\_concept, product\_or\_service\_offered, regulation, threat\_or\_risk, event, commodity, industry\_vertical, physical\_equipment, medical\_research, government\_body) | No | Type of the keyword (e.g. technology, operational\_activity) | ##### `metadata` | Field | Type | Required | Description | | --- | --- | --- | --- | | `total_companies` | integer | No | Total number of companies | | `total_results` | integer | No | Total number of results | | `truncated_companies` | integer | No | Number of companies that were not returned because the user doesn't have enough credits to fetch all the possible results the API could have returned Default: 0 | | `truncated_results` | integer | No | Number of results that were not returned because the user doesn't have enough credits to fetch them all the possible results the API could have returned Default: 0 | #### 400 — Bad Request | Field | Type | Required | Description | | --- | --- | --- | --- | | `error` | Error | Yes | | | `request_id` | integer | No | The request id. This is useful to contact us to help you debug the issue. The request\_id won't be present in all errors. | ##### `error` | Field | Type | Required | Description | | --- | --- | --- | --- | | `code` | string | No | The error code. Eg: \`E-001\`, \`E-002\`, \`E-003\`, \`E-004\`, \`E-005\`, \`E-006\`, \`E-007\`, \`E-008\`, \`E-009\`, \`E-010\`, \`E-011\`, \`E-012\`, \`E-013\`, \`E-014\`, \`E-015\`, \`E-016\` | | `description` | string | No | The error description | | `title` | string | Yes | The error title. | #### 402 — Payment Required | Field | Type | Required | Description | | --- | --- | --- | --- | | `error` | Error | Yes | | | `request_id` | integer | No | The request id. This is useful to contact us to help you debug the issue. The request\_id won't be present in all errors. | ##### `error` | Field | Type | Required | Description | | --- | --- | --- | --- | | `code` | string | No | The error code. Eg: \`E-001\`, \`E-002\`, \`E-003\`, \`E-004\`, \`E-005\`, \`E-006\`, \`E-007\`, \`E-008\`, \`E-009\`, \`E-010\`, \`E-011\`, \`E-012\`, \`E-013\`, \`E-014\`, \`E-015\`, \`E-016\` | | `description` | string | No | The error description | | `title` | string | Yes | The error title. | #### 422 — Unprocessable Entity | Field | Type | Required | Description | | --- | --- | --- | --- | | `error` | Error | Yes | | | `request_id` | integer | No | The request id. This is useful to contact us to help you debug the issue. The request\_id won't be present in all errors. | ##### `error` | Field | Type | Required | Description | | --- | --- | --- | --- | | `code` | string | No | The error code. Eg: \`E-001\`, \`E-002\`, \`E-003\`, \`E-004\`, \`E-005\`, \`E-006\`, \`E-007\`, \`E-008\`, \`E-009\`, \`E-010\`, \`E-011\`, \`E-012\`, \`E-013\`, \`E-014\`, \`E-015\`, \`E-016\` | | `description` | string | No | The error description | | `title` | string | Yes | The error title. | #### 500 — Internal Server Error | Field | Type | Required | Description | | --- | --- | --- | --- | | `error` | Error | Yes | | | `request_id` | integer | No | The request id. This is useful to contact us to help you debug the issue. The request\_id won't be present in all errors. | ##### `error` | Field | Type | Required | Description | | --- | --- | --- | --- | | `code` | string | No | The error code. Eg: \`E-001\`, \`E-002\`, \`E-003\`, \`E-004\`, \`E-005\`, \`E-006\`, \`E-007\`, \`E-008\`, \`E-009\`, \`E-010\`, \`E-011\`, \`E-012\`, \`E-013\`, \`E-014\`, \`E-015\`, \`E-016\` | | `description` | string | No | The error description | | `title` | string | Yes | The error title. |