package main
import (
"context"
"fmt"
"log"
"github.com/AhaSend/ahasend-go/api"
"github.com/AhaSend/ahasend-go/models/requests"
"github.com/google/uuid"
)
func main() {
// Create API client with authentication
client := api.NewAPIClient(
api.WithAPIKey("aha-sk-your-64-character-key"),
)
accountID := uuid.New()
// Create context for the API call
ctx := context.Background()
// Call the ping endpoint
response, httpResp, err := client.APIKeysAPI.CreateAPIKey(
ctx,
accountID,
requests.CreateAPIKeyRequest{
Label: "My API Key",
Scopes: []string{
"messages:read:all",
"domains:read:all",
},
},
)
if err != nil {
log.Fatalf("Error creating API key: %v", err)
}
// Check response
if httpResp.StatusCode == 200 {
fmt.Printf("✅ Status: %d\n", httpResp.StatusCode)
if response != nil {
fmt.Printf("Created API key, secret key: %s\n", response.SecretKey)
}
} else {
fmt.Printf("❌ Unexpected status code: %d\n", httpResp.StatusCode)
}
}
{
"object": "api_key",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"last_used_at": "2023-11-07T05:31:56Z",
"account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"label": "<string>",
"public_key": "<string>",
"secret_key": "<string>",
"scopes": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"api_key_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"scope": "<string>",
"domain_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
]
}
Creates a new API key with the specified scopes
package main
import (
"context"
"fmt"
"log"
"github.com/AhaSend/ahasend-go/api"
"github.com/AhaSend/ahasend-go/models/requests"
"github.com/google/uuid"
)
func main() {
// Create API client with authentication
client := api.NewAPIClient(
api.WithAPIKey("aha-sk-your-64-character-key"),
)
accountID := uuid.New()
// Create context for the API call
ctx := context.Background()
// Call the ping endpoint
response, httpResp, err := client.APIKeysAPI.CreateAPIKey(
ctx,
accountID,
requests.CreateAPIKeyRequest{
Label: "My API Key",
Scopes: []string{
"messages:read:all",
"domains:read:all",
},
},
)
if err != nil {
log.Fatalf("Error creating API key: %v", err)
}
// Check response
if httpResp.StatusCode == 200 {
fmt.Printf("✅ Status: %d\n", httpResp.StatusCode)
if response != nil {
fmt.Printf("Created API key, secret key: %s\n", response.SecretKey)
}
} else {
fmt.Printf("❌ Unexpected status code: %d\n", httpResp.StatusCode)
}
}
{
"object": "api_key",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"last_used_at": "2023-11-07T05:31:56Z",
"account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"label": "<string>",
"public_key": "<string>",
"secret_key": "<string>",
"scopes": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"api_key_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"scope": "<string>",
"domain_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
]
}
API key for authentication
Optional idempotency key for safe request retries. Must be a unique string for each logical request. Requests with the same key will return the same response. Keys expire after 24 hours.
255
Account ID
API key created successfully
The response is of type object
.
Was this page helpful?