Skip to content
Scrappa Get API key
Genius API 1 credit/request

Genius Search API Documentation

GET https://scrappa.co/api/genius/search

Search Genius by type: song, lyric, artist, album or all. Each hit carries id, title, artists, release date, annotation count, page views, artwork and the Genius URL. Lyric search returns the matching songs with a lyric_match flag, never the lyric text. Type all returns up to 5 hits per section, including videos, articles and users.

Genius Search API Documentation 1 credit/request

Endpoint

Request preview
GET
https://scrappa.co/api/genius/search
Auth header
x-api-key
Cost
1 credit/request
q = coffee shops
Response preview
200 OK
{
    "data": {
        "sections": [
            {
                "hits": [
                    {
                        "type": "song",
                        "result": {
                            "id": 3039923,
                            "url": "https://genius.com/Kendrick-lamar-humble-lyrics",
                            "stats": {
                                "pageviews": 12358095
                            },
                            "title": "HUMBLE.",
...

Parameters

Start with the required fields, then add optional filters only when your use case needs them.

Runnable path

1 required parameter needed before sending a request.

3 optional filters available.

q string Required

Search text. Example: humble.

Example value coffee shops
type string Optional

song, lyric, artist, album or all. Default: song.

Example value example
page integer Optional

Page number, starting at 1. Default: 1.

Example value 1
per_page integer Optional

Results per page, 1-50. Default: 20.

Example value 10

Response Schema

Example response fields are illustrative; inspect the JSON before integrating.

Example response fields

Scan these fields before integrating.

data meta success
JSON Response
200 OK
{
    "data": {
        "sections": [
            {
                "hits": [
                    {
                        "type": "song",
                        "result": {
                            "id": 3039923,
                            "url": "https://genius.com/Kendrick-lamar-humble-lyrics",
                            "stats": {
                                "pageviews": 12358095
                            },
                            "title": "HUMBLE.",
                            "full_title": "HUMBLE. by Kendrick Lamar",
                            "lyrics_url": "https://genius.com/Kendrick-lamar-humble-lyrics",
                            "artist_names": "Kendrick Lamar",
                            "lyrics_state": "complete",
                            "annotation_count": 21,
                            "song_art_image_url": "https://images.genius.com/483306c535608c27f9e3781b854dc91d.1000x1000x1.png",
                            "release_date_for_display": "March 30, 2017"
                        }
                    }
                ],
                "type": "song"
            }
        ],
        "next_page": 2
    },
    "meta": {
        "billable": true,
        "proxy_tier": "mobile-proxies",
        "technology": "http",
        "endpoint_family": "search"
    },
    "success": true
}

Errors

Handle these documented responses before retrying or showing customer-facing failures.

404

Not Found

Genius has no resource for this id or path. This response is not billable.

{
    "meta": {
        "billable": false,
        "retryable": false
    },
    "error": {
        "code": "NOT_FOUND",
        "message": "The requested Genius resource was not found."
    },
    "success": false
}
422

Validation Error

A parameter is missing or invalid. No upstream request is made. This response is not billable.

{
    "errors": {
        "id": [
            "The id field is required."
        ]
    },
    "message": "The request validation failed"
}
503

Genius Temporarily Unavailable

Genius did not answer in time or the request was blocked. Retry after a short pause. This response is not billable.

{
    "meta": {
        "billable": false,
        "retryable": true
    },
    "error": {
        "code": "UPSTREAM_UNAVAILABLE",
        "message": "Genius is temporarily unavailable. Please retry."
    },
    "success": false
}

Generate Code with AI

Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.

Try It Live

Test this endpoint in our interactive playground with real data.