> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zenrows.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Installing the Go SDK

> Install the ZenRows Go SDK and get your API key ready to make requests.

## Requirements

<CardGroup cols={2}>
  <Card title="Go 1.23+" icon="golang">
    Required by the SDK's `go.mod`.
  </Card>

  <Card title="API key" icon="key" href="https://app.zenrows.com/register?p=free">
    Create a free account to get yours, no credit card required.
  </Card>
</CardGroup>

<Steps>
  <Step title="Install the package">
    Add the SDK to your module with `go get`:

    ```bash theme={null} theme={null}
    go get github.com/zenrows/zenrows-go-sdk/service/api
    ```

    <Warning>
      Use the singular path `service/api`. Some copy-pasted snippets show `services/api` (plural), which doesn't match the module's actual directory layout and won't resolve.
    </Warning>

    The package name is `scraperapi`, not `zenrows`, so import it with an explicit alias:

    ```go theme={null} theme={null}
    import (
        scraperapi "github.com/zenrows/zenrows-go-sdk/service/api"
    )
    ```
  </Step>

  <Step title="Verify the install">
    Create a client and print its type to confirm everything resolves:

    ```go theme={null} theme={null}
    package main

    import (
        "fmt"

        scraperapi "github.com/zenrows/zenrows-go-sdk/service/api"
    )

    func main() {
        client := scraperapi.NewClient(
            scraperapi.WithAPIKey("YOUR_ZENROWS_API_KEY"),
        )
        fmt.Printf("%T\n", client) // *scraperapi.Client
    }
    ```

    If it prints `*scraperapi.Client` without a compile error, you're ready to go.
  </Step>

  <Step title="Get your API key">
    Your API key authenticates every request you send through the SDK. Grab it from the [ZenRows Request Builder](https://app.zenrows.com/builder) after signing up.

    <Warning>
      Keep your API key private. Load it from the `ZENROWS_API_KEY` environment variable (read automatically by `scraperapi.NewClient()`) instead of hardcoding it in scripts you commit to version control.
    </Warning>
  </Step>
</Steps>

<Card title="Next: Quickstart" icon="rocket" href="/universal-scraper-api/sdk/go/quickstart">
  Make your first request with the SDK.
</Card>
