REST API High Accuracy Real-time Free Tier

Company Logos API

The Company Logos API provides seamless access to a comprehensive repository of high-quality, scalable company logos, suitable for integration into websites and applications.

Why Use This API

Extensive Database

Access a vast collection of company logos with over thousands of entries, ensuring you can find the logo you need.

Scalable Formats

Receive logos in various formats and sizes which can be easily integrated into web and app projects.

Secure Access

Gain secure access using API keys, ensuring that your data and requests remain safe and private.

Real-Time Updates

Benefit from real-time database updates, ensuring you receive the most current logos available.

Quick Start

Get started in under a minute:

  1. Register API Key — Sign up and obtain your unique API key for accessing the Company Logos API.
  2. Integrate Endpoint — Use the `/api/v1/company-logos` endpoint to start retrieving company logos in your applications.
  3. Retrieve Logos — Send a request with a company name or domain to obtain the corresponding logo instantly.
curl -X GET 'https://precisioncounter.com/api/v1/company-logos?query=apple&format=png&size=large&apiKey=YOUR_API_KEY'
import requests

response = requests.get('https://precisioncounter.com/api/v1/company-logos',
                       params={'query': 'apple', 'format': 'png', 'size': 'large', 'apiKey': 'YOUR_API_KEY'})
logo_url = response.json()['logo_url']
print(logo_url)
const fetch = require('node-fetch');

fetch('https://precisioncounter.com/api/v1/company-logos?query=apple&format=png&size=large&apiKey=YOUR_API_KEY')
    .then(response => response.json())
    .then(data => console.log(data.logo_url))
    .catch(error => console.error('Error:', error));

API Reference

Base URL

https://precisioncounter.com/api/v1

Authentication

All requests require an API key passed in the Authorization header:

Authorization: Bearer YOUR_API_KEY

Company Logos

GET /api/v1/company-logos

This endpoint allows users to fetch high-quality logos by providing a company name or domain.

Request Parameters

Parameter Type Description
query required string The company name or domain to search for the corresponding logo.
format optional string Desired logo format (e.g., png, jpg, svg). Defaults to png.
size optional string Preferred logo size (e.g., small, medium, large). Defaults to medium.
apiKey required string Your unique API key to authenticate with the API.

Response

200 OK — A successful response contains the details and a direct URL to the requested company logo.

Response Headers

Header Value
Content-Type Indicates the media type of the resource.
Date The date and time when the response was generated.

Code Examples

import requests

def get_company_logo(company_name):
    try:
        response = requests.get('https://precisioncounter.com/api/v1/company-logos',
                                params={'query': company_name, 'format': 'png', 'size': 'large', 'apiKey': 'YOUR_API_KEY'})
        response.raise_for_status()
        return response.json()['logo_url']
    except requests.exceptions.RequestException as e:
        print(f'An error occurred: {e}')

logo_url = get_company_logo('apple')
if logo_url:
    print('Logo URL:', logo_url)
const fetch = require('node-fetch');

async function getCompanyLogo(companyName) {
    try {
        const response = await fetch(`https://precisioncounter.com/api/v1/company-logos?query=${encodeURIComponent(companyName)}&format=png&size=large&apiKey=YOUR_API_KEY`);
        if (!response.ok) {
            throw new Error(`HTTP error! status: ${response.status}`);
        }
        const data = await response.json();
        return data.logo_url;
    } catch (error) {
        console.error('Error:', error);
    }
}

getCompanyLogo('apple').then(logoUrl => console.log('Logo URL:', logoUrl));
<?php

function getCompanyLogo($company_name) {
    $url = 'https://precisioncounter.com/api/v1/company-logos';
    $params = http_build_query([ 'query' => $company_name, 'format' => 'png', 'size' => 'large', 'apiKey' => 'YOUR_API_KEY' ]);
    $ch = curl_init("$url?$params");

    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $response = curl_exec($ch);
    if ($response === false) {
        throw new Exception(curl_error($ch), curl_errno($ch));
    }

    $responseData = json_decode($response, true);
    curl_close($ch);

    return $responseData['logo_url'];
}

try {
    $logoUrl = getCompanyLogo('apple');
    echo "Logo URL: $logoUrl\n";
} catch (Exception $e) {
    echo 'Curl error: ' . $e->getMessage();
}
package main

import (
	"encoding/json"
	"fmt"
	"io/ioutil"
	"log"
	"net/http"
)

func getCompanyLogo(companyName string) (string, error) {
	url := fmt.Sprintf("https://precisioncounter.com/api/v1/company-logos?query=%s&format=png&size=large&apiKey=YOUR_API_KEY", companyName)
	resp, err := http.Get(url)
	if err != nil {
		return "", err
	}
	defer resp.Body.Close()

	body, err := ioutil.ReadAll(resp.Body)
	if err != nil {
		return "", err
	}

	var result map[string]string
	if err := json.Unmarshal(body, &result); err != nil {
		return "", err
	}

	return result["logo_url"], nil
}

func main() {
	logoUrl, err := getCompanyLogo("apple")
	if err != nil {
		log.Fatalf("Error: %v", err)
	}
	fmt.Println("Logo URL:", logoUrl)
}
require 'net/http'
require 'json'

class CompanyLogoFetcher
  BASE_URL = 'https://precisioncounter.com/api/v1/company-logos'

  def self.get_logo(company_name)
    uri = URI(BASE_URL)
    params = { query: company_name, format: 'png', size: 'large', apiKey: 'YOUR_API_KEY' }
    uri.query = URI.encode_www_form(params)

    response = Net::HTTP.get(uri)
    data = JSON.parse(response)
    data['logo_url']
  rescue StandardError => e
    puts "An error occurred: #{e.message}"
  end
end

logo_url = CompanyLogoFetcher.get_logo('apple')
puts "Logo URL: #{logo_url}" if logo_url
using System;
using System.Net.Http;
using System.Threading.Tasks;
using Newtonsoft.Json.Linq;

class Program
{
    private static async Task<string> GetCompanyLogoAsync(string companyName)
    {
        var client = new HttpClient();
        var requestUri = $"https://precisioncounter.com/api/v1/company-logos?query={companyName}&format=png&size=large&apiKey=YOUR_API_KEY";

        var response = await client.GetAsync(requestUri);
        response.EnsureSuccessStatusCode();

        var content = await response.Content.ReadAsStringAsync();
        var json = JObject.Parse(content);

        return json["logo_url"].ToString();
    }

    static async Task Main(string[] args)
    {
        try
        {
            var logoUrl = await GetCompanyLogoAsync("apple");
            Console.WriteLine("Logo URL: " + logoUrl);
        }
        catch (Exception ex)
        {
            Console.WriteLine("An error occurred: " + ex.Message);
        }
    }
}

Error Handling

The API returns standard HTTP status codes with JSON error bodies:

Status Meaning Description
200 OK The request has succeeded and the logo has been retrieved.
400 Bad Request The request was invalid, often due to a missing or incorrect parameter.
401 Unauthorized API key was missing or invalid, preventing authentication.
429 Too Many Requests The request limit has been exceeded, throttling is in effect.
500 Internal Server Error The server encountered an error and could not complete the request.

Error Response Format

{
  "error": "Description of what went wrong",
  "code": "ERROR_CODE",
  "status": 400
}

Rate Limits

Plan Requests / Minute Max File Size Max Resolution
Free 60 500KB 1024x768
Pro 600 5MB 4096x3072

Rate limit headers are included in every response:

X-RateLimit-Limit: 10
X-RateLimit-Remaining: 7
X-RateLimit-Reset: 1708646400

Use Cases

  • Web Development
  • App Integration
  • Data Visualization
  • Logo Hosting
  • Security Platforms
  • Digital Marketing
  • AI Training

Pricing

Free to Start

Get free API credits when you sign up. No credit card required.

Frequently Asked Questions

How do I get started with the API?
To start using the API, sign up on our platform to receive your API key. Then, incorporate the endpoint into your application to retrieve company logos.
What formats are available?
Logos are available in multiple formats, including PNG, JPG, and SVG. You can specify the desired format in your API request.
Can I test the API without a subscription?
Yes, our API offers a free tier with a limited number of requests per minute, allowing you to test its functionality before subscribing.
What is the API's rate limit?
The free plan offers 60 requests per minute, while the Pro plan provides 600 requests per minute, allowing for scalable usage based on your needs.
Is it possible to get logos in different sizes?
Yes, logos can be retrieved in small, medium, or large sizes. Specify your preferred size in the API request for optimal results.
How do I handle errors?
Our API integrates comprehensive error codes and descriptions. Ensure correct parameters and check your API key for successful interactions.