OpenTIN API – Azure Marketplace Technical Documentation

OpenTIN API — Azure Interface

The Azure interface is available through Azure Marketplace under the offer OpenTIN API. After subscribing you are redirected to a landing page where your JWT bearer token is generated. Store this token securely — you will include it in every API request.


How it works
1. Subscribe
Subscribe to OpenTIN API on Azure Marketplace. You will be redirected to the Open Automation landing page.
2. Get your token
The landing page generates your JWT bearer token. Copy and store it securely.
3. Call the API
Make GET requests to azure.opentin-api.open-automation.io/api/tin_validate/{country}/{type}/{tin} with your token in the Authorization: Bearer header.

Available endpoints
Primary (West Europe)
azure.opentin-api.open-automation.io
Secondary (France Central)
azure-francecentral.opentin-api.open-automation.io

For the full API specification, path parameters and response codes, see the OpenTIN Technical Documentation.

# Replace with your JWT bearer token received after subscribing on Azure Marketplace
TOKEN=""

# Primary endpoint (West Europe)
BASE_URL="https://azure.opentin-api.open-automation.io"

# Secondary endpoint (France Central) - use as fallback if needed
# BASE_URL="https://azure-francecentral.opentin-api.open-automation.io"

# Validate a TIN number
# country: ISO 3166-1 Alpha-2 or Alpha-3 (e.g. US, FRA)
# entity_type: I for Individuals, E for Entities
# tin: the TIN number to validate

curl \
  -H "Authorization: Bearer $TOKEN" \
  $BASE_URL/api/tin_validate/US/I/123456789
import requests

# Replace with your JWT bearer token received after subscribing on Azure Marketplace
token = ""

# Primary endpoint (West Europe)
base_url = "https://azure.opentin-api.open-automation.io"

# Secondary endpoint (France Central) - use as fallback if needed
# base_url = "https://azure-francecentral.opentin-api.open-automation.io"

headers = {
    "Authorization": f"Bearer {token}"
}

# Validate a TIN number
# country: ISO 3166-1 Alpha-2 or Alpha-3 (e.g. US, FRA)
# entity_type: I for Individuals, E for Entities
# tin: the TIN number to validate

country = "US"
entity_type = "I"
tin = "123456789"

response = requests.get(
    f"{base_url}/api/tin_validate/{country}/{entity_type}/{tin}",
    headers=headers
)

print(response.status_code)
print(response.json())
# Expected: {"tin_valid": 1, "message": "The TIN is valid", ...}
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        // Replace with your JWT bearer token received after subscribing on Azure Marketplace
        var token = "";

        // Primary endpoint (West Europe)
        var baseUrl = "https://azure.opentin-api.open-automation.io";

        // Secondary endpoint (France Central) - use as fallback if needed
        // var baseUrl = "https://azure-francecentral.opentin-api.open-automation.io";

        var client = new HttpClient();
        client.DefaultRequestHeaders.Authorization =
            new AuthenticationHeaderValue("Bearer", token);

        // Validate a TIN number
        // country: ISO 3166-1 Alpha-2 or Alpha-3 (e.g. US, FRA)
        // entityType: I for Individuals, E for Entities
        // tin: the TIN number to validate

        var country = "US";
        var entityType = "I";
        var tin = "123456789";

        var response = await client.GetAsync(
            $"{baseUrl}/api/tin_validate/{country}/{entityType}/{tin}"
        );
        var body = await response.Content.ReadAsStringAsync();

        Console.WriteLine($"Status: {(int)response.StatusCode}");
        Console.WriteLine(body);
        // Expected: {"tin_valid": 1, "message": "The TIN is valid", ...}
    }
}