svgl/src/docs/api.md
2023-12-17 02:34:52 +00:00

3.0 KiB

title description
API Reference The API reference is a detailed documentation of all the endpoints available in the SVGL API.

Introduction

SVGL API is a RESTFul API that allows you to get all the information of the SVGs that are in the repository.

Limitations

The API is currently open to everyone and does not require any authentication. However, to prevent abusive use of the API, there is a limit to the number of requests: 5 requests with 60s cooldown.

Base URL

The base URL for the API is:

https://svgl.app/api/svgs
# or
https://svgl.app/api/categories

Typescript usage

  • For SVGs:
export interface svg {
  id: number;
  title: string;
  category: string;
  route:
    | string
    | {
        dark: string;
        light: string;
      };
  url: string;
}
  • For categories:
export interface category {
  category: string;
  total: number;
}

Endpoints

/api/svgs

// Returns:
[
  {
    "id": 0,
    "title": "Discord",
    "category": "Software",
    "route": "https://svgl.app/library/discord.svg",
    "url": "https://discord.com/"
  },
  ...
]
/api/svgs?limit=10

// Returns:
[
  {
    "id": 0,
    "title": "Discord",
    "category": "Software",
    "route": "https://svgl.app/library/discord.svg",
    "url": "https://discord.com/"
  },
  ...
]
/api/svgs?category=software

// Returns:
[
  {
    "id": 0,
    "title": "Discord",
    "category": "Software",
    "route": "https://svgl.app/library/discord.svg",
    "url": "https://discord.com/"
  },
  ...
]

The list of categories is available here (except for the all category).

/api/categories

// Returns:
[
  {
    "category": "Software",
    "total": 97
  },
  {
    "category": "Library",
    "total": 25
  },
  ...
]
/api/svgs?search=axiom

// Returns:
[
  {
    "id": 267,
    "title": "Axiom",
    "category": "Software",
    "route": {
      "light": "https://svgl.app/library/axiom-light.svg",
      "dark": "https://svgl.app/library/axiom-dark.svg"
    },
    "url": "https://axiom.co/"
  }
]