---
updatedAt: 2026-04-27T15:06:14.000Z
agentTools:
  projectIndex: https://docs.fonoa.com/llms.txt
---

# Request a TIN search

This endpoint allows you to search for a business or entity by name within a given country. The system returns a list of matching results, each enriched with tax registration details.


# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "info": {
    "title": "Fonoa API",
    "description": "The Fonoa API allows you to automate tax compliance.\n\nThe Fonoa API gives you and your clients or employers access to various tax automation products, including Tax Identification Number validation, tax rate calculation, invoice generation, and real-time transaction reporting.\n\nThe API is organized around REST,  has predictable, resource-oriented URLs, and uses JSON response codes to indicate API errors.\n\nThis API documentation provides information about each endpoint in the API. Using the pane on the right-hand side, you try out sample requests and responses for each endpoint in various programming languages.",
    "contact": {
      "name": "Fonoa Support",
      "url": "https://www.fonoa.com/",
      "email": "support@fonoa.com"
    },
    "version": "1.0"
  },
  "x-proxy-enabled": false,
  "servers": [
    {
      "url": "https://api-demo.fonoa.com",
      "description": "Fonoa API demo environment",
      "variables": {}
    },
    {
      "url": "https://sandbox.fonoa.com/",
      "description": "Fonoa API sandbox environment",
      "variables": {}
    },
    {
      "url": "https://api.fonoa.com",
      "description": "Fonoa API production (live) environment",
      "variables": {}
    }
  ],
  "paths": {
    "/lookup/v2/single-searches": {
      "post": {
        "tags": [
          "Lookup V2"
        ],
        "summary": "Request a TIN search",
        "description": "This endpoint allows you to search for a business or entity by name within a given country. The system returns a list of matching results, each enriched with tax registration details.\n",
        "operationId": "RequestTinSearch",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LookupTinSearchRequest"
              },
              "examples": {
                "example-1": {
                  "value": {
                    "country_iso_code": "ie",
                    "query": "Fonoa Technologies",
                    "additional_parameters": {
                      "address": "Barrow Street Dublin 4"
                    },
                    "external_id": "cust000577"
                  }
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "The TIN search has been accepted and is running. Use the URL in `search_result_url` to poll for results.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "search",
                    "search_result_url"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "running"
                      ]
                    },
                    "search": {
                      "$ref": "#/components/schemas/LookupTinSearchImmediateResponse"
                    },
                    "search_result_url": {
                      "type": "string",
                      "format": "uri",
                      "example": "https://api-demo.fonoa.com/lookup/v2/single-searches/b470a195-8e83-4d89-b4a7-4d389ac358a4"
                    }
                  }
                },
                "examples": {
                  "example-1": {
                    "value": {
                      "status": "running",
                      "search": {
                        "tin_search_id": "b470a195-8e83-4d89-b4a7-4d389ac358a4",
                        "country_iso_code": "ie",
                        "query": "Fonoa Technologies",
                        "requested_at": "2024-01-15T10:30:00.000Z",
                        "external_id": "cust000577"
                      },
                      "search_result_url": "https://api-demo.fonoa.com/lookup/v2/single-searches/b470a195-8e83-4d89-b4a7-4d389ac358a4"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The provided data is not valid. This response will be served when you provide invalid parameters (e.g. unsupported country code).",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LookupErrorResponseV2"
                },
                "examples": {
                  "example-1": {
                    "value": {
                      "errors": [
                        {
                          "code": "COUNTRY_NOT_SUPPORTED",
                          "message": "Country 'xx' not supported."
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LookupErrorResponseV2"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Media Type, we only accept application/json",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LookupErrorResponseV2"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error, something went wrong and we are investigating it.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LookupErrorResponseV2"
                },
                "examples": {
                  "example-1": {
                    "value": {
                      "errors": [
                        {
                          "code": "INTERNAL_ERROR",
                          "message": "Something went wrong."
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        },
        "deprecated": false
      },
      "parameters": []
    }
  },
  "components": {
    "schemas": {
      "LookupDetailedErrorMessage": {
        "title": "LookupDetailedErrorMessage",
        "type": "object",
        "properties": {
          "detailed_error_messages": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "message": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "LookupRequestErrorCode": {
        "title": "LookupRequestErrorCode",
        "type": "string",
        "description": "Request-level error codes returned by the public Lookup v2 API, including validation and TIN Search requests (JSON and CSV).\nThese are distinct from validation-result error_details codes returned in successful responses.\n\n`retryable: false` means an unchanged request will fail again. Correct the input, credentials, subscription or limits before retrying.\n`retryable: true` means a transient failure may resolve. Retry with backoff. Before resubmitting a create request, check whether it already succeeded to avoid duplicate work.\nHTTP statuses depend on the endpoint and input format. Messages with braces are templates; numeric limits and other values shown are illustrative and may vary.\nThe message and details fields can provide more context, including CSV record numbers and validation errors.\nUS and Philippines JSON field-validation messages appear under INVALID_REQUEST in details.detailed_error_messages. US-specific codes are returned by CSV validation.\n\n| Code | HTTP status | Message | retryable |\n| --- | --- | --- | --- |\n| `CURSOR_PARSING_ERROR` | 400 | Cursor cannot be parsed. | false |\n| `INVALID_ID_ERROR` | 400 | Invalid 'id'. | false |\n| `INTERNAL_ERROR` | 500 | Something went wrong. | true |\n| `NO_VALIDATION_FOUND` | 404 | Validation cannot be found. | false |\n| `NO_BATCH_FOUND` | 404 | Batch cannot be found. | false |\n| `TIN_SEARCH_NOT_FOUND` | 404 | TIN search cannot be found. | false |\n| `AUTHENTICATION_ERROR` | 401 | Unauthorized request. | false |\n| `MISSING_QUERY_OR_COUNTRY_ISO_CODE` | 422 | Incorrect CSV format, missing 'query' or 'country_iso_code'. | false |\n| `MISSING_TAX_IDENTIFICATION_NUMBER_OR_COUNTRY_ISO_CODE` | 422 | Incorrect CSV format, missing 'tax_identification_number' or 'country_iso_code'. | false |\n| `CANNOT_HAVE_ZERO_ENTRIES` | 422 | Number of entries cannot be zero. | false |\n| `INVALID_MIME_ONLY_FORM_DATA_IS_VALID` | 415 | Invalid mime type, valid mime type is 'multipart/form-data'. | false |\n| `INVALID_MIME_ONLY_JSON_IS_VALID` | 415 | Invalid mime type, valid mime type is 'application/json'. | false |\n| `VALIDATIONS_AMOUNT_EXCEEDED` | 400 | Your subscription has run out of available validations. Max number: {max}, remaining number: {remaining}, number of validations in request: {inRequest}. | false |\n| `COUNTRIES_NOT_ALLOWED` | 400 | Your subscription does not allow you to validate the next countries: {countries}. | false |\n| `CANNOT_HAVE_MORE_THAN_X_TINS` | 400 | Request should not have more than 50000 tins, current request have {currentLength}. | false |\n| `COUNTRY_NOT_SUPPORTED` | 400, 422 | Country '{unsupportedCountry}' not supported.<br>Countries '{country1}', '{country2}' not supported. | false |\n| `BATCH_REQUEST_CANNOT_BE_EMPTY` | 400 | Batch request cannot be empty. | false |\n| `CSV_COLUMN_MISMATCH_ERROR` | 422 | CSV has more columns than expected. | false |\n| `CSV_GENERIC_PARSING_ERROR` | 422 | CSV cannot be parsed. | false |\n| `INVALID_VALIDATION_DATABASE_SOURCE` | 422 | Invalid validation database source: {source}. | false |\n| `VALIDATION_SOURCE_NOT_SUPPORTED_FOR_COUNTRY` | 400 | Validation source '{source}' not supported for country '{countryIso}'.<br>Validation source requested is not supported for countries: {countryIso} ({source}). | false |\n| `CSV_COUNTRY_CODE_FORMAT_ERROR` | 422 | CSV contains invalid country format. Country column should contain 2-letter country codes. | false |\n| `UNSUPPORTED_PARAMETER_ERROR` | 422 | Additional parameter \"{parameter}\" not supported for country \"{countryIso}\". | false |\n| `INVALID_REQUEST` | 400, 413 | Invalid request.<br>Validation is still running and cannot be deleted.<br>Batch contains validation/s that are still running and cannot be deleted.<br>Validation belongs to a batch and cannot be deleted. | false |\n| `DIRECT_TAX_ID_NOT_SUPPORTED` | 400, 422 | Direct tax id validation is not supported for country: {countries}.<br>Direct tax id validation is not supported for countries: {country1}, {country2}. | false |\n| `TAX_IDENTIFICATION_NUMBER_TYPE_NOT_SUPPORTED` | 422 | Unsupported tax identification number type: {type}. Must be one of: business, individual | false |\n| `UNSUPPORTED_CSV_COLUMNS` | 422 | Unsupported column name \"{column}\" in csv header at index 0.<br>Unsupported column names \"{column1}\", \"{column2}\" in csv header at indexes [0, 1]. | false |\n| `CSV_FILE_NOT_PROVIDED` | 400 | CSV file not provided to multipart from data (field name: \"file\") | false |\n| `TIN_SEARCH_NOT_SUPPORTED_FOR_SUBSCRIPTION` | 400 | Tin search is not supported for this subscription. | false |\n| `INVALID_FIELD_FORMAT` | 422 | The field '{field}' has an invalid format. It {formatRequirement}. | false |\n| `CANNOT_HAVE_MORE_THAN_X_SEARCHES` | 400 | Request should not have more than 50000 searches, current request have {currentLength}. | false |\n| `TIN_SEARCH_QUERY_LENGTH_INVALID` | 400, 422 | The query length of '0' for country '{countryIso}' did not meet the minimum query length of '3' characters. | false |\n| `CANNOT_REQUEST_MORE_THAN_X_RESULTS` | 400 | Request should not have more than 1000 requested as limit/page size query parameter, current request have 1001 as query parameter. | false |\n| `US_UNSUPPORTED_PARAMETER_FOR_INDIVIDUAL` | 422 | US individual validation can't contain 'name' parameter used for businesses | false |\n| `US_BOTH_FIRST_LAST_NAME_REQUIRED` | 422 | US individual online validation requires both 'first_name' and 'last_name' parameters | false |\n| `US_UNSUPPORTED_PARAMETER_FOR_BUSINESS` | 422 | US business validation can't contain 'first_name' or 'last_name' parameter used for individuals | false |\n| `TIN_SEARCH_WORD_COUNT_INVALID` | 400, 422 | The word count of '6' in the query for country '{countryIso}' did not meet the maximum word count requirement of '5' words. | false |\n| `CANNOT_HAVE_MORE_THAN_X_RESULTS` | 400 | Response can carry up to 1000 validations, current request will have 1001. | false |",
        "enum": [
          "CURSOR_PARSING_ERROR",
          "INVALID_ID_ERROR",
          "INTERNAL_ERROR",
          "NO_VALIDATION_FOUND",
          "NO_BATCH_FOUND",
          "TIN_SEARCH_NOT_FOUND",
          "AUTHENTICATION_ERROR",
          "MISSING_QUERY_OR_COUNTRY_ISO_CODE",
          "MISSING_TAX_IDENTIFICATION_NUMBER_OR_COUNTRY_ISO_CODE",
          "CANNOT_HAVE_ZERO_ENTRIES",
          "INVALID_MIME_ONLY_FORM_DATA_IS_VALID",
          "INVALID_MIME_ONLY_JSON_IS_VALID",
          "VALIDATIONS_AMOUNT_EXCEEDED",
          "COUNTRIES_NOT_ALLOWED",
          "CANNOT_HAVE_MORE_THAN_X_TINS",
          "COUNTRY_NOT_SUPPORTED",
          "BATCH_REQUEST_CANNOT_BE_EMPTY",
          "CSV_COLUMN_MISMATCH_ERROR",
          "CSV_GENERIC_PARSING_ERROR",
          "INVALID_VALIDATION_DATABASE_SOURCE",
          "VALIDATION_SOURCE_NOT_SUPPORTED_FOR_COUNTRY",
          "CSV_COUNTRY_CODE_FORMAT_ERROR",
          "UNSUPPORTED_PARAMETER_ERROR",
          "INVALID_REQUEST",
          "DIRECT_TAX_ID_NOT_SUPPORTED",
          "TAX_IDENTIFICATION_NUMBER_TYPE_NOT_SUPPORTED",
          "UNSUPPORTED_CSV_COLUMNS",
          "CSV_FILE_NOT_PROVIDED",
          "TIN_SEARCH_NOT_SUPPORTED_FOR_SUBSCRIPTION",
          "INVALID_FIELD_FORMAT",
          "CANNOT_HAVE_MORE_THAN_X_SEARCHES",
          "TIN_SEARCH_QUERY_LENGTH_INVALID",
          "CANNOT_REQUEST_MORE_THAN_X_RESULTS",
          "US_UNSUPPORTED_PARAMETER_FOR_INDIVIDUAL",
          "US_BOTH_FIRST_LAST_NAME_REQUIRED",
          "US_UNSUPPORTED_PARAMETER_FOR_BUSINESS",
          "TIN_SEARCH_WORD_COUNT_INVALID",
          "CANNOT_HAVE_MORE_THAN_X_RESULTS"
        ],
        "x-error-codes": [
          {
            "code": "CURSOR_PARSING_ERROR",
            "messages": [
              "Cursor cannot be parsed."
            ],
            "httpStatuses": [
              400
            ],
            "retryable": false
          },
          {
            "code": "INVALID_ID_ERROR",
            "messages": [
              "Invalid 'id'."
            ],
            "httpStatuses": [
              400
            ],
            "retryable": false
          },
          {
            "code": "INTERNAL_ERROR",
            "messages": [
              "Something went wrong."
            ],
            "httpStatuses": [
              500
            ],
            "retryable": true
          },
          {
            "code": "NO_VALIDATION_FOUND",
            "messages": [
              "Validation cannot be found."
            ],
            "httpStatuses": [
              404
            ],
            "retryable": false
          },
          {
            "code": "NO_BATCH_FOUND",
            "messages": [
              "Batch cannot be found."
            ],
            "httpStatuses": [
              404
            ],
            "retryable": false
          },
          {
            "code": "TIN_SEARCH_NOT_FOUND",
            "messages": [
              "TIN search cannot be found."
            ],
            "httpStatuses": [
              404
            ],
            "retryable": false
          },
          {
            "code": "AUTHENTICATION_ERROR",
            "messages": [
              "Unauthorized request."
            ],
            "httpStatuses": [
              401
            ],
            "retryable": false
          },
          {
            "code": "MISSING_QUERY_OR_COUNTRY_ISO_CODE",
            "messages": [
              "Incorrect CSV format, missing 'query' or 'country_iso_code'."
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "MISSING_TAX_IDENTIFICATION_NUMBER_OR_COUNTRY_ISO_CODE",
            "messages": [
              "Incorrect CSV format, missing 'tax_identification_number' or 'country_iso_code'."
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "CANNOT_HAVE_ZERO_ENTRIES",
            "messages": [
              "Number of entries cannot be zero."
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "INVALID_MIME_ONLY_FORM_DATA_IS_VALID",
            "messages": [
              "Invalid mime type, valid mime type is 'multipart/form-data'."
            ],
            "httpStatuses": [
              415
            ],
            "retryable": false
          },
          {
            "code": "INVALID_MIME_ONLY_JSON_IS_VALID",
            "messages": [
              "Invalid mime type, valid mime type is 'application/json'."
            ],
            "httpStatuses": [
              415
            ],
            "retryable": false
          },
          {
            "code": "VALIDATIONS_AMOUNT_EXCEEDED",
            "messages": [
              "Your subscription has run out of available validations. Max number: {max}, remaining number: {remaining}, number of validations in request: {inRequest}."
            ],
            "httpStatuses": [
              400
            ],
            "retryable": false
          },
          {
            "code": "COUNTRIES_NOT_ALLOWED",
            "messages": [
              "Your subscription does not allow you to validate the next countries: {countries}."
            ],
            "httpStatuses": [
              400
            ],
            "retryable": false
          },
          {
            "code": "CANNOT_HAVE_MORE_THAN_X_TINS",
            "messages": [
              "Request should not have more than 50000 tins, current request have {currentLength}."
            ],
            "httpStatuses": [
              400
            ],
            "retryable": false
          },
          {
            "code": "COUNTRY_NOT_SUPPORTED",
            "messages": [
              "Country '{unsupportedCountry}' not supported.",
              "Countries '{country1}', '{country2}' not supported."
            ],
            "httpStatuses": [
              400,
              422
            ],
            "retryable": false
          },
          {
            "code": "BATCH_REQUEST_CANNOT_BE_EMPTY",
            "messages": [
              "Batch request cannot be empty."
            ],
            "httpStatuses": [
              400
            ],
            "retryable": false
          },
          {
            "code": "CSV_COLUMN_MISMATCH_ERROR",
            "messages": [
              "CSV has more columns than expected."
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "CSV_GENERIC_PARSING_ERROR",
            "messages": [
              "CSV cannot be parsed."
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "INVALID_VALIDATION_DATABASE_SOURCE",
            "messages": [
              "Invalid validation database source: {source}."
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "VALIDATION_SOURCE_NOT_SUPPORTED_FOR_COUNTRY",
            "messages": [
              "Validation source '{source}' not supported for country '{countryIso}'.",
              "Validation source requested is not supported for countries: {countryIso} ({source})."
            ],
            "httpStatuses": [
              400
            ],
            "retryable": false
          },
          {
            "code": "CSV_COUNTRY_CODE_FORMAT_ERROR",
            "messages": [
              "CSV contains invalid country format. Country column should contain 2-letter country codes."
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "UNSUPPORTED_PARAMETER_ERROR",
            "messages": [
              "Additional parameter \"{parameter}\" not supported for country \"{countryIso}\"."
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "INVALID_REQUEST",
            "messages": [
              "Invalid request.",
              "Validation is still running and cannot be deleted.",
              "Batch contains validation/s that are still running and cannot be deleted.",
              "Validation belongs to a batch and cannot be deleted."
            ],
            "httpStatuses": [
              400,
              413
            ],
            "retryable": false
          },
          {
            "code": "DIRECT_TAX_ID_NOT_SUPPORTED",
            "messages": [
              "Direct tax id validation is not supported for country: {countries}.",
              "Direct tax id validation is not supported for countries: {country1}, {country2}."
            ],
            "httpStatuses": [
              400,
              422
            ],
            "retryable": false
          },
          {
            "code": "TAX_IDENTIFICATION_NUMBER_TYPE_NOT_SUPPORTED",
            "messages": [
              "Unsupported tax identification number type: {type}. Must be one of: business, individual"
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "UNSUPPORTED_CSV_COLUMNS",
            "messages": [
              "Unsupported column name \"{column}\" in csv header at index 0.",
              "Unsupported column names \"{column1}\", \"{column2}\" in csv header at indexes [0, 1]."
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "CSV_FILE_NOT_PROVIDED",
            "messages": [
              "CSV file not provided to multipart from data (field name: \"file\")"
            ],
            "httpStatuses": [
              400
            ],
            "retryable": false
          },
          {
            "code": "TIN_SEARCH_NOT_SUPPORTED_FOR_SUBSCRIPTION",
            "messages": [
              "Tin search is not supported for this subscription."
            ],
            "httpStatuses": [
              400
            ],
            "retryable": false
          },
          {
            "code": "INVALID_FIELD_FORMAT",
            "messages": [
              "The field '{field}' has an invalid format. It {formatRequirement}."
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "CANNOT_HAVE_MORE_THAN_X_SEARCHES",
            "messages": [
              "Request should not have more than 50000 searches, current request have {currentLength}."
            ],
            "httpStatuses": [
              400
            ],
            "retryable": false
          },
          {
            "code": "TIN_SEARCH_QUERY_LENGTH_INVALID",
            "messages": [
              "The query length of '0' for country '{countryIso}' did not meet the minimum query length of '3' characters."
            ],
            "httpStatuses": [
              400,
              422
            ],
            "retryable": false
          },
          {
            "code": "CANNOT_REQUEST_MORE_THAN_X_RESULTS",
            "messages": [
              "Request should not have more than 1000 requested as limit/page size query parameter, current request have 1001 as query parameter."
            ],
            "httpStatuses": [
              400
            ],
            "retryable": false
          },
          {
            "code": "US_UNSUPPORTED_PARAMETER_FOR_INDIVIDUAL",
            "messages": [
              "US individual validation can't contain 'name' parameter used for businesses"
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "US_BOTH_FIRST_LAST_NAME_REQUIRED",
            "messages": [
              "US individual online validation requires both 'first_name' and 'last_name' parameters"
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "US_UNSUPPORTED_PARAMETER_FOR_BUSINESS",
            "messages": [
              "US business validation can't contain 'first_name' or 'last_name' parameter used for individuals"
            ],
            "httpStatuses": [
              422
            ],
            "retryable": false
          },
          {
            "code": "TIN_SEARCH_WORD_COUNT_INVALID",
            "messages": [
              "The word count of '6' in the query for country '{countryIso}' did not meet the maximum word count requirement of '5' words."
            ],
            "httpStatuses": [
              400,
              422
            ],
            "retryable": false
          },
          {
            "code": "CANNOT_HAVE_MORE_THAN_X_RESULTS",
            "messages": [
              "Response can carry up to 1000 validations, current request will have 1001."
            ],
            "httpStatuses": [
              400
            ],
            "retryable": false
          }
        ]
      },
      "LookupErrorDetail": {
        "title": "LookupErrorDetail",
        "type": "object",
        "properties": {
          "code": {
            "$ref": "#/components/schemas/LookupRequestErrorCode"
          },
          "message": {
            "type": "string"
          },
          "details": {
            "$ref": "#/components/schemas/LookupDetailedErrorMessage"
          }
        }
      },
      "LookupCountryIsoResponse": {
        "type": "string",
        "description": "Customer ISO 3166-1 alpha-2 country code",
        "example": "cl"
      },
      "LookupRequestExternalId": {
        "type": "string",
        "minLength": 1,
        "description": "An additional reference identifier you can provide - typically, the identifier used in your own system. You can use this to match results back to your own data."
      },
      "LookupResponseExternalId": {
        "type": "string",
        "minLength": 1,
        "description": "An additional reference identifier you provided in your request - typically, the identifier used in your own system. You can use this to match results back to your own data."
      },
      "LookupErrorResponseV2": {
        "title": "LookupErrorResponseV2",
        "type": "object",
        "x-examples": {
          "x-example-1": {
            "errors": [
              {
                "code": "INVALID_REQUEST",
                "message": "Invalid request.",
                "details": [
                  {
                    "detailed_error_messages": [
                      {
                        "message": "\"page\" is not allowed"
                      }
                    ]
                  }
                ]
              }
            ]
          }
        },
        "x-stoplight": {
          "id": "59b1e70795039"
        },
        "properties": {
          "errors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LookupErrorDetail"
            }
          }
        }
      },
      "LookupTinSearchCountryIsoRequest": {
        "type": "string",
        "description": "Country code in ISO 3166-1 alpha-2 format of the company to search for (e.g., `au` for Australia, `hr` for Croatia)",
        "example": "au",
        "enum": [
          "ar",
          "au",
          "be",
          "bg",
          "br",
          "ca",
          "ch",
          "cl",
          "co",
          "de",
          "dk",
          "do",
          "ec",
          "ee",
          "es",
          "fi",
          "fr",
          "gb",
          "gr",
          "hr",
          "hu",
          "in",
          "it",
          "lt",
          "lv",
          "mx",
          "no",
          "nz",
          "pe",
          "pl",
          "pt",
          "ro",
          "se",
          "sg",
          "si",
          "sk",
          "th",
          "vn",
          "za"
        ]
      },
      "LookupTinSearchRequest": {
        "title": "LookupTinSearchRequest",
        "type": "object",
        "description": "Request body for submitting a TIN search by company name.",
        "required": [
          "country_iso_code",
          "query"
        ],
        "properties": {
          "country_iso_code": {
            "$ref": "#/components/schemas/LookupTinSearchCountryIsoRequest"
          },
          "query": {
            "type": "string",
            "minLength": 1,
            "description": "The company name or keyword to search for.",
            "example": "Fonoa Technologies"
          },
          "additional_parameters": {
            "$ref": "#/components/schemas/LookupTinSearchAdditionalParameters"
          },
          "external_id": {
            "$ref": "#/components/schemas/LookupRequestExternalId"
          }
        }
      },
      "LookupTinSearchAdditionalParameters": {
        "title": "LookupTinSearchAdditionalParameters",
        "type": "object",
        "description": "Optional parameters to refine a TIN search request.",
        "properties": {
          "address": {
            "type": "string",
            "description": "Address used to narrow the search and score address fuzzy matching.",
            "example": "Barrow Street Dublin 4"
          }
        }
      },
      "LookupTinSearchImmediateResponse": {
        "title": "LookupTinSearchImmediateResponse",
        "type": "object",
        "description": "Representation of a TIN search request that has been accepted and is running.",
        "required": [
          "tin_search_id",
          "country_iso_code",
          "query",
          "requested_at"
        ],
        "properties": {
          "tin_search_id": {
            "type": "string",
            "format": "uuid",
            "description": "Unique identifier of the TIN search request.",
            "example": "b470a195-8e83-4d89-b4a7-4d389ac358a4"
          },
          "country_iso_code": {
            "$ref": "#/components/schemas/LookupCountryIsoResponse"
          },
          "query": {
            "type": "string",
            "description": "The search query that was submitted.",
            "example": "Fonoa Technologies"
          },
          "requested_at": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the search was requested.",
            "example": "2024-01-15T10:30:00.000Z"
          },
          "additional_parameters": {
            "$ref": "#/components/schemas/LookupTinSearchAdditionalParameters"
          },
          "external_id": {
            "$ref": "#/components/schemas/LookupResponseExternalId"
          }
        }
      }
    },
    "securitySchemes": {
      "Ocp-Apim-Subscription-Key": {
        "type": "apiKey",
        "description": "API Subscription Key",
        "name": "Ocp-Apim-Subscription-Key",
        "in": "header"
      }
    }
  },
  "security": [
    {
      "Ocp-Apim-Subscription-Key": []
    }
  ],
  "tags": [
    {
      "name": "Lookup V2"
    }
  ]
}
```