# Services ## List Services `client.Addressing.Services.List(ctx, query) (*SinglePage[ServiceListResponse], error)` **get** `/accounts/{account_id}/addressing/services` Bring-Your-Own IP (BYOIP) prefixes onboarded to Cloudflare must be bound to a service running on the Cloudflare network to enable a Cloudflare product on the IP addresses. This endpoint can be used as a reference of available services on the Cloudflare network, and their service IDs. ### Parameters - `query ServiceListParams` - `AccountID param.Field[string]` Identifier of a Cloudflare account. ### Returns - `type ServiceListResponse struct{…}` - `ID string` Identifier of a Service on the Cloudflare network. Available services and their IDs may be found in the **List Services** endpoint. - `Name string` Name of a service running on the Cloudflare network ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/addressing" "github.com/cloudflare/cloudflare-go/option" ) func main() { client := cloudflare.NewClient( option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"), option.WithAPIEmail("user@example.com"), ) page, err := client.Addressing.Services.List(context.TODO(), addressing.ServiceListParams{ AccountID: cloudflare.F("258def64c72dae45f3e4c8516e2111f2"), }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", page) } ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": [ { "id": "2db684ee7ca04e159946fd05b99e1bcd", "name": "Magic Transit" } ] } ```