TABLE OF CONTENTS

  • Overview
  • Generating API Keys
  • Using the API





Overview


The EDL Manager API is a limited REST API that uses JSON over HTTP to fetch and update information. 

The current API is limited to listing and updating manual source lists. 


To suggest future API uses/features, please submit a feature request.



Generating API Keys

Navigate to Settings -> API Keys and click Create New API Key



The Name is the only required value.  Add a permission tag to limit the scope of the API Key.

Once you click Save, the API Key will be generated for you and shown only once.  Please note it down or you will have to delete/add new API key.




Using the API


HTML API Browser

There is an HTML API Browser available. Navigate to Support->API Browser.


Authentication

Every HTTP request must be authenticated using a header passed in the request.  The header key and value are:

  • Authorization : Api-Key {InsertYourKeyHere}




Operations


List All Manual Sources

HTTP MethodURL
GEThttps://edlmanager.com/api/v1/sources/manual/


Sample Code


Python

import requests

url = "https://edlmanager.com/api/v1/sources/manual/"
headers = {'Authorization': 'Api-Key YourAPIKeyHere'}
r = requests.get(url, headers=headers)

print(r.text)


Response

[
    {
        "id": 1,
        "name": "Test Manual List 1",
        "description": "manual list"
    },
    {
        "id": 2,
        "name": "Test Manual List 2",
        "description": "just another manual list"
    }
]



Fetch specific Manual Source Details 

HTTP MethodURL
GEThttps://edlmanager.com/api/v1/sources/manual/{id}/


Sample Code

Python

import requests

url = "https://edlmanager.com/api/v1/sources/manual/1/"
headers = {'Authorization': 'Api-Key YourAPIKeyHere'}
r = requests.get(url, headers=headers)

print(r.text)


Response

{
    "id": 1,
    "name": "Test Manual List 1",
    "manual_entries": [
        "1.1.1.1",
        "8.8.8.8"
    ]
}


Update Manual Source Entries

HTTP MethodURL
PUThttps://edlmanager.com/api/v1/sources/manual/{id}/


AttributeData TypeExplanation
manual_entrieslistlist of entries
actionstring, options='add', 'remove'  (optional)



Sample Code - Replace entire list of manual entries with new entries


Python 

import requests

url = "https://edlmanager.com/api/v1/sources/manual/1/"
headers = {'Authorization': 'Api-Key YourAPIKeyHere'}
payload = {"manual_entries": ["8.8.4.4", "1.2.3.4"]}
r = requests.put(url, headers=headers, json=payload)

print(r.text)

Response

{
    "id": 1,
    "name": "Test Manual List 1",
    "manual_entries": [
        "8.8.4.4",
        "1.2.3.4",
    ]
}




Sample Code - Add entry to existing list of manual entries


Python 

import requests

url = "https://edlmanager.com/api/v1/sources/manual/1/"
headers = {'Authorization': 'Api-Key YourAPIKeyHere'}
payload = {"action":"add","manual_entries": ["1.1.1.1"]}
r = requests.put(url, headers=headers, json=payload)

print(r.text)


Sample Code - Remove entry from list of manual entries


Python 

import requests

url = "https://edlmanager.com/api/v1/sources/manual/1/"
headers = {'Authorization': 'Api-Key YourAPIKeyHere'}
payload = {"action":"remove","manual_entries": ["8.8.8.8"]}
r = requests.put(url, headers=headers, json=payload)

print(r.text)