diff --git a/src/docs/api.md b/src/docs/api.md index d9ba151..da3fdc7 100644 --- a/src/docs/api.md +++ b/src/docs/api.md @@ -20,25 +20,162 @@ The API is currently open to everyone and does not require any authentication. H The base URL for the API is: ```bash -https://svgl.vercel.app/api/svgs +https://svgl.app/api/svgs +# or +https://svgl.app/api/categories +``` + +## Typescript usage + +- For SVGs: + +```ts +export interface svg { + id: number; + title: string; + category: string; + route: + | string + | { + dark: string; + light: string; + }; + url: string; +} +``` + +- For categories: + +```ts +export interface category { + category: string; + total: number; +} ``` ## Endpoints -
+```bash +/api/svgs ``` -https://svgl.vercel.app/api/svgs + +

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

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

+ +```json +// 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](https://github.com/pheralb/svgl/blob/main/src/types/categories.ts) (except for the _all_ category). + +
+ + + +```bash +/api/categories +``` + +

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

+ +```json +// 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/" + } +] ```
-