func (s *SnippetsService) GetSnippet(snippet int, options ...OptionFunc) (*Snippet, *Response, error) {
	u := fmt.Sprintf("snippets/%d", snippet)
	req, err := s.client.NewRequest("GET", u, nil, options)
	if err != nil {
		return nil, nil, err
	}
	ps := new(Snippet)
	resp, err := s.client.Do(req, ps)
	if err != nil {
		return nil, resp, err
	}
	return ps, resp, err
}
GetSnippet gets a single snippet

GitLab API docs:
https://docs.gitlab.com/ce/api/snippets.html#single-snippet
package gitlab
import (
	"bytes"
	"fmt"
	"time"
)
type SnippetsService struct {
	client *Client
}
type Snippet struct {
	ID          int    `json:"id"`
	Title       string `json:"title"`
	FileName    string `json:"file_name"`
	Description string `json:"description"`
	Author      struct {
		ID        int        `json:"id"`
		Username  string     `json:"username"`
		Email     string     `json:"email"`
		Name      string     `json:"name"`
		State     string     `json:"state"`
		CreatedAt *time.Time `json:"created_at"`
	} `json:"author"`
	UpdatedAt *time.Time `json:"updated_at"`
	CreatedAt *time.Time `json:"created_at"`
	WebURL    string     `json:"web_url"`
	RawURL    string     `json:"raw_url"`
}
func (s Snippet) String() string {
	return Stringify(s)
}
type ListSnippetsOptions ListOptions
func (s *SnippetsService) ListSnippets(opt *ListSnippetsOptions, options ...OptionFunc) ([]*Snippet, *Response, error) {
	req, err := s.client.NewRequest("GET", "snippets", opt, options)
	if err != nil {
		return nil, nil, err
	}
	var ps []*Snippet
	resp, err := s.client.Do(req, &ps)
	if err != nil {
		return nil, resp, err
	}
	return ps, resp, err
}