Categorygithub.com/apiheat/go-edgegrid
modulepackage
4.1.0+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.
Init initializes using a configuration file in standard INI format.
NewClient returns a new edgegrid.Client for API.
ShowJSONMessage returns string JSON message error.

# Constants

Akamai Services Paths.
Akamai Services Paths.
Akamai Services Paths.
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.
Akamai Services Paths.
No description provided by the author
Akamai Services Paths.
Akamai Services Paths.
No description provided by the author
No description provided by the author
No description provided by the author

# Structs

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
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
AkamaiFRNSubscription data representation.
AkamaiFRNSubscriptions data representation.
An AkamaiGeneralError reports one or more errors caused by an API request.
No description provided by the author
AkamaiNetworkListErrorv2 represents the error returned from Akamai Akamai API docs: https://developer.akamai.com/api/cloud_security/network_lists/v2.html#errors.
AkamaiNetworkListLinks represents the network list `links` structure Akamai API docs: https://developer.akamai.com/api/luna/network-list.
AkamaiNetworkListsv2 represents array of network lists Akamai API docs: https://developer.akamai.com/api/luna/network-list.
AkamaiNetworkListv2 represents the network list structure 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.
No description provided by the author
No description provided by the author
No description provided by the author
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.
No description provided by the author
No description provided by the author
No description provided by the author
DebugService allows to interact with client debugging options .
No description provided by the author
An EdgegridError is used to provide higher level clients with error which occured.
EdgercCredentials are items from config file.
No description provided by the author
No description provided by the author
ListNetworkListsOptionsv2 represents the available options for listing network lists Akamai API docs: https://developer.akamai.com/api/cloud_security/network_lists/v2.html.
NetworkListActivationOptsv2 represents object used for activating network list in Akamai Akamai API docs: https://developer.akamai.com/api/cloud_security/network_lists/v2.html.
NetworkListActivationStatusv2 represents object used for status of network list activation Akamai API docs: https://developer.akamai.com/api/cloud_security/network_lists/v2.html.
An NetworkListDeleteResponse represents response from deleting a list error.
NetworkListServicev2 represents exposed services to manage network lists Akamai API docs: https://developer.akamai.com/api/luna/network-list.
NetworkListsOptionsv2 represents struct required to create items for network list Akamai API docs: https://developer.akamai.com/api/cloud_security/network_lists/v2.html.
An NetworkListSubscription represents object used for (un)subscribing for notifications error.
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.
AkamaiSubscription represents Akamai's notification actions for subscriptions.