Categorygithub.com/apiheat/go-edgegrid
modulepackage
3.1.2+incompatible
Repository: https://github.com/apiheat/go-edgegrid.git
Documentation: pkg.go.dev

# README

go-edgegrid

Golang based client for interaction with Akamai API services.

Coverage

This API client package covers most used parts the existing akamai API calls and is updated regularly. Currently the following services are supported:

  • Adaptive Acceleration
  • Network Lists
  • Property APIs
  • [o] Identity Management
  • Firewall Rule notifications
  • Siteshield
  • Certificate management

To add new/update existing features create a new PR

Usage

To start using the client you just need to reference package within your code.

import "github.com/apiheat/go-edgegrid"

Construct a new Akamai client, then use the various services on the client to access different parts of the akamai API.

apiClientOpts := &edgegrid.ClientOptions{}
apiClientOpts.ConfigPath =  "/path/to/.edgerc/"
apiClientOpts.ConfigSection = "default"
apiClientOpts.DebugLevel = "warn"

// create new Akamai API client
akamaiApi, err := edgegrid.NewClient(nil, apiClientOpts)

The debug property apiClientOpts.DebugLevel is optional and can be lower case string of debug warn info error fatal panic

Once created you will have access to exposed services on akamaiApi client object.

ToDo

  • The biggest thing this package still needs is tests :disappointed:

Issues

Authors

License

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0

Inspired by

# Functions

AuthString takes prm and returns a string that can be used as the `Authorization` header in making Akamai API requests.
CheckResponse checks the API response for errors, and returns them if present.
Init initializes using a configuration file in standard INI format.
NewClient returns a new edgegrid.Client for API.

# Constants

Akamai Services Paths.
AkamaiEnvironmentVar const represents Akamai's env variables to be used.
AkamaiEnvironmentVar const represents Akamai's env variables to be used.
AkamaiEnvironmentVar const represents Akamai's env variables to be used.
Akamai Services Paths.
Akamai Services Paths.
Akamai Services Paths.
Akamai Services Paths.
AkamaiEnvironment const represents Akamai's target environment to be used in calls.
Akamai Services Paths.
Akamai Services Paths.
AkamaiEnvironment const represents Akamai's target environment to be used in calls.

# Structs

ActivateNetworkListOptions represents options for network list activation Akamai API docs: https://developer.akamai.com/api/luna/network-list.
ActivateNetworkListStatus represents status of network list activation Akamai API docs: https://developer.akamai.com/api/luna/network-list.
No description provided by the author
No description provided by the author
AkamaiFRNSubscription data representation.
AkamaiFRNSubscriptions data representation.
AkamaiNetworkList represents the network list structure Akamai API docs: https://developer.akamai.com/api/luna/network-list.
AkamaiNetworkListLinks represents the network list `links` structure Akamai API docs: https://developer.akamai.com/api/luna/network-list.
AkamaiNetworkLists represents array of network lists Akamai API docs: https://developer.akamai.com/api/luna/network-list.
No description provided by the author
No description provided by the author
No description provided by the author
AkamaiSiteShieldMap struct.
AkamaiSiteShieldMapsResp response struct.
AkamaiUser data.
Akamai {OPEN} EdgeGrid Authentication Service.
Client represents Akamai's API client for communicating with service client.
ClientOptions represents options we can pass during client creation client.
ClientResponse represents response from our API call client.
CreateNetworkListOptions represents the available options for network list creation Akamai API docs: https://developer.akamai.com/api/luna/network-list.
DebugService allows to interact with client debugging options .
EdgercCredentials are items from config file.
An ErrorResponse reports one or more errors caused by an API request.
No description provided by the author
No description provided by the author
ListNetworkListsOptions represents the available options for listing network lists Akamai API docs: https://developer.akamai.com/api/luna/network-list.
NetworkListResponse represents the response from network list creation Akamai API docs: https://developer.akamai.com/api/luna/network-list.
NetworkListService represents exposed services to manage network lists Akamai API docs: https://developer.akamai.com/api/luna/network-list.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
PropertyService represents exposed services to manage properties Akamai API docs: https://developer.akamai.com/api/luna/papi.
No description provided by the author
No description provided by the author

# Type aliases

AkamaiEnvironment represents Akamai's target environment type.
AkamaiEnvironmentVar represents Akamai's env variables used client.
AkamaiFRNCidrs data representation.
AkamaiFRNServices data representation.