semvec/pypi-packages huggingface dataset:
panopta-api 2.0.0
Panopta API Client
License: MIT

Panopta API Python Package
==========================
The Panopta API (previously `panopta_rest_api`) provides full access to all configuration, status and outage
management functionality of the Panopta monitoring service, including the
ability to create and modify monitoring checks that are being performed, manage
notification configuration, respond to active outages and to pull availability
statistics for monitored servers. This package makes it simple to interact with
the Panopta API.

# API Documentation
Full documentation for the API is available at
[https://api2.panopta.com/v2/api-docs/](https://api2.panopta.com/v2/api-docs/).
By entering your API token you can view full details on all of the API methods
and issue API requests from the documentation page.

# Installation
```bash
pip install panopta_api
```

# Usage
The library provides a wrapper around the Panopta API, making it easy to issue
GET, POST, PUT and DELETE operations to the API. The `Client` is an adapter
built on top of [Requests](http://python-requests.org), so anything you can do
with a `requests.Session`, you can with `panopta_api.Client`.

## Instantiate the Panopta API client
```python
from panopta_api import Client
client = Client('your-api-key',
                host='http://api2.panopta.com',
                version='2',
                log_level=Client.LOG_INFO,
                log_path='logs/')
```

## Generate API urls
```python
resource = 'server'
id = '123'
collection = 'network_service'
server_network_services = client.url(resource, id, collection)
```

## GET
```python
five_contacts = client.get(client.url('contact'), params={'limit': 5});

servers_with_a_certain_fully_qualified_domain_name = client.get(
    client.url('server'),
    params={'fqdn': 'panopta.com'}
)

server_forty_two = client.get(client.url('server', '42'))
```

## POST
```python
new_notification_schedule = client.post(
    client.url('notification_schedule'),
    json={'name': 'New Notification Schedule',
          'targets': [server_forty_two['url']]}
)
```

## PUT
```python
updated_server_group = client.put(
    client.url('server_group'),
    json={'name': 'Updated Server Group',
          'notification_schedule': new_notification_schedule['url']}
)
```

## DELETE
```python
client.delete(client.url('contact', '1'))
```
akadata 0.3.0
Python port of Akamai EdgeScape client
License: MIT

Python Akamai EdgeScape client
==============================

[![Build Status](https://img.shields.io/travis/redjack/akadata-py/master.svg)](https://travis-ci.org/redjack/akadata-py)

Python client for Akamai EdgeScape. Supports Python 2.7/3.3+, and PyPy.

## Installation

```
pip install akadata
```

## Usage

To lookup an IP address, initialize an `akadata.EdgeScape` object with the host
and port of the EdgeScape Facilitator server, and call its `ip_lookup` method.
See the docstring for `akadata.EdgeScape.ip_lookup` for details about the
resulting dictionary, parsing, and possible exceptions.

```pycon
>>> from pprint import pprint
>>> from akadata import EdgeScape
>>>
>>> client = EdgeScape('192.168.59.103', 49158)
>>>
>>> pprint(client.ip_lookup('208.78.4.5', timeout=1))
{u'areacode': [301],
 u'asnum': [40287],
 u'bw': 5000,
 u'city': u'SILVERSPRING',
 u'company': u'RedJack_LLC',
 u'continent': u'NA',
 u'country_code': u'US',
 u'county': [u'MONTGOMERY'],
 'default_answer': False,
 u'dma': 511,
 u'domain': u'redjack.com',
 u'fips': ['24031'],
 'ip': u'208.78.4.5',
 u'lat': 39.0245,
 u'long': -77.0094,
 u'msa': 8872,
 u'pmsa': 8840,
 u'region_code': u'MD',
 u'throughput': u'vhigh',
 u'timezone': u'EST',
 u'zip': ['20901', '20902', '20903', '20904', '20905', '20906', '20907',
          '20908', '20910', '20911', '20914', '20915', '20916', '20918',
          '20993', '20997']}
```
fleetmonger 0.0.4
Fleetmon API wrapper for ship data
License: MIT

Fleetmonger
-----------

Python wrapper for the `fleetmon.com <fleetmon.com>`__ ship-tracking
API.

API Calls
---------

`Read the details of the API at
Fleetmonger <https://www.fleetmon.com/faq/public_api>`__. \*
fleetmonger.myfleet \* fleetmonger.vessel \*
fleetmonger.vesselparticulars \* fleetmonger.vesselurl \*
fleetmonger.porturl \* fleetmonger.weather \*
fleetmonger.containerschedule

Note that some API calls require the purchase of credits at Fleetmon.
This package is unaffiliated with Fleetmon, use at your own risk.

Usage
=====

::

    from fleetmonger import Fleetmonger

    fm = Fleetmonger('username', 'your key')

    fleet = fm.myfleet()

    for ship in fleet:
        print ship.name, ship.destination

Vessels
~~~~~~~

::

    my_vessel = fleet[0]
    # or
    my_vessel = fm.vessel(mmsi='239725000')
    # or
    my_vessel = fm.vessel(imo='9197545')
    # or
    my_vessel = fm.vessel(name='MINNOW')

    # Passing incomplete information will raise an error
    my_vessel = fm.vessel()
    # ValueError

    my_vessel.name
    # <SS MINNOW>

    my_vessel.navigationstatus
    # 'On a three hour tour'

    my_vessel.etatime
    # datetime.datetime(1964, 9, 26, 12, 0, tzinfo=<UTC>)

    my_vessel.coords
    # (3.469557, -167.255859)

    # Missing attributes return None
    my_vessel.location
    # None

    my_vessel.flag
    # 'United States'

    my_vessel.flag_so
    # 'US'

    # Some vessels have photos
    myvessel.photos
    # ["//img1.fleetmon.com/thumbnails/MINNOW_1.220x146.jpg", "//img1.fleetmon.com/thumbnails/MINNOW_2.570x1140.jpg"]

Minimum list of ``Vessel`` attributes:

``coords`` (lat, lon), ``course``, ``destination``, ``draught``,
``etatime``, ``flag``, ``heading``, ``imo``, ``last_port``,
``latitude``, ``location``, ``longitude``, ``mmsi``, ``name``,
``navigationstatus``, ``photos``, ``positionreceived``, ``publicurl``,
``speed``, ``type``

Ports
~~~~~

::


    my_vessel.last_port
    # <fleetmonger.port.Port object>

    port = my_vessel.last_port

    port.name
    # 'Honolulu, HI'

    port.duration
    # datetime.timedelta(...)

Port urls and Vessel urls
~~~~~~~~~~~~~~~~~~~~~~~~~

Pass mmsi, imo or name to vessel methods. Pass locode or name to port
methods.

::

    fm.vesselurl(name='MINNOW')

    fm.porturl(locode='USLAX')

    # Porturl also takes an optional country isocode parameter 
    fm.porturl(name='new', country='US')
    # [<Newark (New York)>, <Newburgh>, <Newburyport>, <Newport (OR)>]

Weather at Location
~~~~~~~~~~~~~~~~~~~

::

    fm.weather(lat=3.469557, lon=-167.255859)

    # You can also pass a vessel object to the weather call
    fm.weather(vessel=my_vessel)

Parameters
----------

In general, the parameters that Fleetmonger expects match those of the
Fleetmon API, with the following exceptions:

::

    instead of mmsinumber, use mmsi
    ...        imonumber   ... imo
    ...        q           ... name