{
  "openapi": "3.0.1",
  "info": {
    "title": "DaFont Scraper",
    "description": "Scrape DaFont.com - 100,000+ free fonts. Search by keyword, browse Top downloads, New releases, or 80 categories/themes (incl. Bitmap), or list an author's fonts with lifetime stats. Get license type, downloads, preview images, glyph counts, style variants.",
    "version": "1.0",
    "x-build-id": "dCqfYYusHtZ3i7tZ2"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/crawlerbros~dafont-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-crawlerbros-dafont-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/crawlerbros~dafont-scraper/runs": {
      "post": {
        "operationId": "runs-sync-crawlerbros-dafont-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/crawlerbros~dafont-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-crawlerbros-dafont-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "required": [
          "mode"
        ],
        "properties": {
          "mode": {
            "title": "Mode",
            "enum": [
              "search",
              "top",
              "new",
              "byCategory",
              "byAuthor"
            ],
            "type": "string",
            "description": "What to fetch.",
            "default": "search"
          },
          "searchQuery": {
            "title": "Search query (mode=search)",
            "type": "string",
            "description": "Free-text keyword to search font names/authors for.",
            "default": "script"
          },
          "category": {
            "title": "Category / theme (mode=byCategory)",
            "enum": [
              "m1",
              "101",
              "102",
              "103",
              "104",
              "105",
              "106",
              "107",
              "108",
              "109",
              "110",
              "111",
              "112",
              "113",
              "114",
              "115",
              "116",
              "117",
              "118",
              "m2",
              "201",
              "202",
              "203",
              "204",
              "205",
              "206",
              "m3",
              "301",
              "302",
              "303",
              "304",
              "m4",
              "401",
              "402",
              "403",
              "404",
              "405",
              "m5",
              "501",
              "502",
              "503",
              "504",
              "m6",
              "601",
              "602",
              "603",
              "604",
              "605",
              "606",
              "607",
              "608",
              "m7",
              "701",
              "702",
              "703",
              "704",
              "705",
              "706",
              "707",
              "708",
              "709",
              "710",
              "711",
              "712",
              "713",
              "714",
              "715",
              "716",
              "717",
              "718",
              "719",
              "720",
              "721",
              "m8",
              "801",
              "802",
              "803",
              "804",
              "805",
              "m9"
            ],
            "type": "string",
            "description": "Browse a main theme (all its subcategories) or a single subcategory.",
            "default": "601"
          },
          "authorUrls": {
            "title": "Author references (mode=byAuthor)",
            "type": "array",
            "description": "DaFont author slugs (e.g. `mans-greback.d2878`) or full author page URLs.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "topPeriod": {
            "title": "Top period (mode=top)",
            "enum": [
              "daily",
              "allTime"
            ],
            "type": "string",
            "description": "DaFont's Top listing only supports these two windows.",
            "default": "daily"
          },
          "sortBy": {
            "title": "Sort order",
            "enum": [
              "popularity",
              "newest",
              "name"
            ],
            "type": "string",
            "description": "Applies to search/byCategory/byAuthor listings (top/new have their own fixed order). For byCategory/byAuthor this is sorted by DaFont itself; for search, DaFont's own sort parameter doesn't work, so the actor sorts the fetched results itself instead.",
            "default": "popularity"
          },
          "license": {
            "title": "License filter",
            "enum": [
              "all",
              "publicDomain",
              "hundredPercentFree",
              "freeForPersonalUse",
              "donationware",
              "shareware",
              "demo",
              "unknown"
            ],
            "type": "string",
            "description": "Only emit fonts with this license type. Leave as 'All licenses' for no filter.",
            "default": "all"
          },
          "minDownloads": {
            "title": "Min total downloads",
            "minimum": 0,
            "maximum": 1000000000,
            "type": "integer",
            "description": "Drop fonts with fewer total downloads than this."
          },
          "maxDownloads": {
            "title": "Max total downloads",
            "minimum": 0,
            "maximum": 1000000000,
            "type": "integer",
            "description": "Drop fonts with more total downloads than this."
          },
          "accentsOnly": {
            "title": "Accented characters only",
            "type": "boolean",
            "description": "Only emit fonts that support accented Latin characters (à, é, ñ, ...).",
            "default": false
          },
          "euroOnly": {
            "title": "Euro symbol only",
            "type": "boolean",
            "description": "Only emit fonts that include the Euro (€) glyph.",
            "default": false
          },
          "includeFullDetails": {
            "title": "Include full font-page details",
            "type": "boolean",
            "description": "Fetch each font's detail page for glyph count, all style previews, illustration image, and first-seen/updated dates. Slower but much richer output. Turn off for a faster, listing-only scrape.",
            "default": true
          },
          "maxItems": {
            "title": "Max items",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Hard cap on emitted font records.",
            "default": 30
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}