# Go SDK

The official Apideck SDK for Go. Integrate with 200+ services across CRM, Accounting, HRIS, ATS, File Storage, E-commerce, Issue Tracking, and more — using one unified API.

## Install

```bash
go get github.com/apideck-libraries/sdk-go
```

- GitHub: https://github.com/apideck-libraries/sdk-go
- GitHub: https://github.com/apideck-libraries/sdk-go

## Getting started

Initialize the client with your API key, application ID, and a consumer ID (an identifier in your system for the end user whose connections you are acting on). Then call any Unified API method — for example, listing CRM contacts from Salesforce:

```go
import (
  sdkgo "github.com/apideck-libraries/sdk-go"
  "github.com/apideck-libraries/sdk-go/models/operations"
)

s := sdkgo.New(
  sdkgo.WithSecurity(os.Getenv("APIDECK_API_KEY")),
  sdkgo.WithConsumerID("<insert-consumer-id-here>"),
  sdkgo.WithAppID("<insert-application-id-here>"),
)

res, err := s.Crm.Contacts.List(ctx, operations.CrmContactsAllRequest{
  ServiceID: sdkgo.String("salesforce"),
})
```

## AI coding agent skill

If you are using an AI coding agent, install the `apideck-go` skill to teach it how to use this SDK — including methods, authentication patterns, and error handling:

```bash
npx skills add apideck/api-skills --skill apideck-go
```

See [https://developers.apideck.com/building-with-llms](https://developers.apideck.com/building-with-llms.md) for more on using Apideck with LLMs and AI agents.

## Resources

- [Unified API reference](https://developers.apideck.com/apis/crm/reference.md)
- [Get an API key](https://developers.apideck.com/get-started.md)
- [Other SDKs](https://developers.apideck.com/sdks): Node.js, Python, .NET, PHP, Java, Go
