Skip to content

This library implements an Authentication handler for the Akamai OPEN EdgeGrid Authentication scheme

License

Notifications You must be signed in to change notification settings

inaitana/AkamaiOPEN-edgegrid-python

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EdgeGrid for Python

This library implements an Authentication handler for requests that provides the Akamai {OPEN} Edgegrid Authentication scheme. For more information visit the Akamai {OPEN} Developer Community.

>>> import requests
>>> from akamai.edgegrid import EdgeGridAuth
>>> from urlparse import urljoin
>>> baseurl = 'https://akaa-WWWWWWWWWWWW.luna.akamaiapis.net/'
>>> s = requests.Session()
>>> s.auth = EdgeGridAuth(
    client_token='ccccccccccccccccc',
    client_secret='ssssssssssssssssss',
    access_token='aaaaaaaaaaaaaaaaaaaaa'
)

>>> result = s.get(urljoin(baseurl, '/diagnostic-tools/v2/ghost-locations/available'))
>>> result.status_code
200
>>> result.json()['locations'][0]['value']
Oakbrook, IL, United States
...

Alternatively, your program can read the credentials from an .edgerc file.

>>> import requests
>>> from akamai.edgegrid import EdgeGridAuth, EdgeRc
>>> from urlparse import urljoin

>>> edgerc = EdgeRc('~/.edgerc')
>>> section = 'default'
>>> baseurl = 'https://%s' % edgerc.get(section, 'host')

>>> s = requests.Session()
>>> s.auth = EdgeGridAuth.from_edgerc(edgerc, section)

>>> result = s.get(urljoin(baseurl, '/diagnostic-tools/v2/ghost-locations/available'))
>>> result.status_code
200
>>> result.json()['locations'][0]['value']
Oakbrook, IL, United States
...

Installation

Pre-requisite

If you are installing on a Linux based distribution, you will need to install the developer libraries for python, ssl and a ffi. On Ubuntu based systems, you will need to do the following:

To install from pip:

$ pip install edgegrid-python

To install from sources:

$ python setup.py install

To run tests:

$ virtualenv -p python2.7 venv
$ . venv/bin/activate
$ pip install -r requirements.txt
$ python -m unittest discover

Contribute

  1. Fork the repository to start making your changes to the master branch
  2. Write a test which shows that the bug was fixed or that the feature works as expected.
  3. Send a pull request and bug the maintainer until it gets merged and published. :)

Author

Jonathan Landis

License

Copyright 2015 Akamai Technologies, Inc. All rights reserved.

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

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

This library implements an Authentication handler for the Akamai OPEN EdgeGrid Authentication scheme

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%