GR EN

Διαύγεια - API Ανοιχτών Δεδομένων, Έκδοση 0.3.1

Με το Πρόγραμμα Διαύγεια [Ν.3861/2010 (ΦΕΚ112/Α’/13-7-2010)] όχι μόνο θεσμοθετείται η υποχρέωση ανάρτησης των νόμων, των κανονιστικών πράξεων και εν γένει πράξεων των κυβερνητικών και διοικητικών οργάνων στο Διαδίκτυο, αλλά και παρέχονται τα εργαλεία που είναι αναγκαία για την ουσιαστική και ανοιχτή πρόσβαση στις αποφάσεις αυτές.

Η ανοιχτή και ελεύθερη πρόσβαση στη δημόσια δεδομένα αποτελεί συστατικό στοιχείο για μια ουσιαστικής συμμετοχής στην κοινωνική, οικονομική και πολιτική ζωή και στην κοινωνία της πληροφορίας. Η δημοσίευση των πράξεων των δημοσίων οργάνων είναι ένα σημαντικό βήμα το οποίο έρχεται να ολοκληρωθεί με την παροχή μίας ανοιχτής υπηρεσίας που επιτρέπει την περαιτέρω χρήση και επεξεργασία των σχετικών δεδομένων και την αναζήτηση συγκεκριμένων πράξεων μέσα από μία σειρά από παραμέτρους όπως αυτές ορίζονται στην παρούσα σελίδα.

Τα Ανοιχτά Δημόσια Δεδομένα αποτελούν κτήμα όλων μας και η ανοιχτή και ελεύθερη πρόσβαση σε αυτά συνταγματικά κατοχυρωμένο (άρθρο 5 Α του Συντάγματος), θεμελιώδες δικαίωμα όλων των Ελλήνων πολιτών. Το API των Ανοιχτών Δεδομένων προσφέρει τη δυνατότητα άντλησης αποφάσεων και διοικητικών πράξεων που έχουν αναρτηθεί στο πλαίσιο της Διαύγειας με χρήση ανοιχτών προτύπων. Όλα τα δεδομένα που αντλούνται από το σύστημα είναι διαθέσιμα με άδεια χρήσης Creative Commons - Αναφορά Προέλευσης. Αυτό σημαίνει ότι ο οποιοσδήποτε μπορεί να χρησιμοποιήσει, αναπαράγει και τροποποιήσει τα Δεδομένα αυτά χωρίς οποιονδήποτε περιορισμό, πέραν της υποχρέωσης αναφοράς στην πηγή και της ρητής διαφοροποίησης του δευτερογενούς υλικού που τυχόν παραχθεί από το πρωτότυπο υλικό.

Το API ακολουθεί τη λογική του REST και επιστρέφει τα δεδομένα σε μορφή XML, σύμφωνα με το δημοσιευμένο XSD. Στην παρούσα έκδοση (0.3.1) παρέχει τις παρακάτω δυνατότητες:

Τιμές αναφοράς - Ταξονομίες

Λειτουργία URL Περιγραφή
Τύποι Αποφάσεων api/types.xml Εμφανίζει πληροφορίες σχετικά με τους Τύπους Αποφάσεων που αναρτώνται στη Διαύγεια. Κάθε απόφαση έχει ένα μοναδικό τύπο. Επιπλέον, ορισμένοι τύποι αποφάσεων συνοδεύονται από συγκεκριμένα μεταδεδομένα, τα οποία απαιτούνται για την ανάρτησή της.
Θεματικές api/tags.xml Εμφανίζει πληροφορίες σχετικά με τις Θεματικές Ενότητες των αποφάσεων. Κάθε απόφαση μπορεί να ανήκει σε μία ή περισσότερες θεματικές.
Φορείς api/organizations.xml Εμφανίζει πληροφορίες σχετικά με τους Φορείς που έχουν εγγραφεί στη Διαύγεια. Πληροφορίες σχετικά με τους Φορείς που υπάγονται στο πλαίσιο εφαρμογής του Νόμου μπορείτε να βρείτε εδώ.
Μονάδες api/units.xml Εμφανίζει πληροφορίες σχετικά με τις Μονάδες όλων των Φορέων που έχουν εγγραφεί στη Διαύγεια.
Υπάρχει η δυνατότητα εμφάνισης πληροφοριών για τις Μονάδες ενός συγκεκριμένου Φορέα, με χρήση της παραμέτρου org, π.χ. api/units?org=ypes
Τελικοί Υπογράφοντες api/signers.xml Εμφανίζει πληροφορίες σχετικά με τους Τελικούς Υπογράφοντες, όσων δηλαδή έχουν δικαίωμα υπογραφής στις αποφάσεις που αναρτώνται στη Διαύγεια. Οι Τελικοί Υπογράφοντες είναι οργανωμένοι ανά Φορέα.
Υπάρχει η δυνατότητα εμφάνισης πληροφοριών για τους τελικούς υπογράφοντες ενός συγκεκριμένου φορέα, με χρήση της παραμέτρου org, π.χ. api/signers?org=ypes. Επίσης, υπάρχει η δυνατότητα λήψης των υπογραφόντων μιας συγκεκριμένης μονάδας, με χρήση της παραμέτρου unit, π.χ. api/signers?unit=2.

Σημείωση: Η παράμετρος org, που χρησιμοποιείται για τον περιορισμό της αναζήτησης σε συγκεκριμένο Φορέα, δέχεται ως τιμή τόσο το UID του φορέα όσο και τη συντομογραφία του με λατινικούς χαρακτήρες, όπως εμφανίζεται στο πεδίο latin_name της σχετικής κλήσης.

Στην κανονική λειτουργία, οι παραπάνω εντολές επιστρέφουν το περιεχόμενο σε μορφή XML. Είναι δυνατόν το περιεχόμενο να επιστραφεί σε μορφή JSON, προσθέτοντας την παράμετρο output=json.

Αναζήτηση Αποφάσεων

Η αναζήτηση αποφάσεων γίνεται μέσω του URL:

http://opendata.diavgeia.gov.gr/api/decisions?param1=value1&param2=value2...

Οι δυνατές παράμετροι περιλαμβάνουν:

Παράμετρος Περιγραφή Δυνατές Τιμές
ada Επιστρέφει πληροφορίες για την απόφαση με το συγκεκριμένο Αριθμό Διαδικτυακής Ανάρτησης (ΑΔΑ). ΑΔΑ απόφασης.
org Επιστρέφει μόνο τις αποφάσεις που έχουν αναρτηθεί από τους οριζόμενους Φορείς. Μή διατεταγμένη λίστα* από UID ή ονόματα φορέων στα λατινικά.
type Επιστρέφει μόνο τις αποφάσεις των οποίων ο Τύπος Απόφασης περιλαμβάνεται στην οριζόμενη λίστα. Μή διατεταγμένη λίστα από UID Τύπων Απόφασης.
tag Επιστρέφει μόνο τις αποφάσεις που αφορούν μία ή περισσότερες από τις οριζόμενες Θεματικές Ενότητες. Μή διατεταγμένη λίστα από UID Θεματικών Ενοτήτων.
signer Επιστρέφει μόνο τις αποφάσεις έχουν υπογραφεί από έναν από τους οριζόμενους Τελικούς Υπογράφοντες. Μή διατεταγμένη λίστα από UID Τελικών Υπογράφοντων.
unit Επιστρέφει μόνο τις αποφάσεις έχουν εκδοθεί από μία από τις οριζόμενες Μονάδες. Μή διατεταγμένη λίστα από UID Μονάδων.
datefrom / dateto Επιστρέφει μόνο τις αποφάσεις που έχουν αναρτηθεί μεταξύ των οριζόμενων ημερομηνιών. Ημ/νια στη μορφή ΗΗ-ΜΜ-ΕΕΕΕ.
from / count Το API της αναζήτησης δεν επιστρέφει όλα τα αποτελέσματα της αναζήτησης. Για μή εξουσιοδοτημένους χρήστες, ο μέγιστος αριθμός των αποτελεσμάτων περιορίζεται στα 500. Οι παράμετροι from και count μπορούν να χρησιμοποιηθούν για την ανάκτηση περαιτέρω αποτελεσμάτων.
Σε κάθε περίπτωση, τα αποτελέσματα της αναζήτησης επιστρέφονται με σειρά φθήνουσας ημ/νιας και ώρας ανάρτησης, επομένως οι νεότερες αποφάσεις θα εμφανίζονται πρώτες.
Επιπλέον, τα αποτελέσματα της αναζήτησης περιλαμβάνουν πληροφορίες σχετικά με τον συνολικό αριθμό των διαθέσιμων αποφάσεων, προκειμένου να διεκολυνθείτε στην ανάκτηση περισσότερων αποτελεσμάτων.
Ακέραιος, με τιμή από το 1 έως το 500.
output

Στην κανονική λειτουργία, το API επιστρέφει τα αποτελέσματα σε συμπτηγμένη μορφή, κατάλληλη για μαζική ηλεκτρονική επεξεργασία. Η παράμετρος output μπορεί να χρησιμοποιηθεί για να διαφοροποιήσει τη μορφή των δεδομένων. Δυνατές τιμές της παραμέτρου είναι:

  • full. Επιστρέφονται τα αποτελέσματα σε πιο αναλυτική μορφή, κατάλληλη για ενσωμάτωση σε ιστοσελίδες κτλ.
  • json. Επιστρέφεται η συμπτηγμένη μορφή των αποτελεσμάτων σε JSON.
  • json_full. Επιστρέφεται η αναλυτική μορφή των αποτελεσμάτων σε JSON.
  • rss. Επιστρέφονται τα αποτελέσματα σε μορφή RSS 2.0 feed, το οποίο ενημερώνεται αυτόματα όταν τα αποτελέσματα της αναζήτησης διαφοροποιηθούν.
  • atom. Επιστρέφονται τα αποτελέσματα σε μορφή Atom feed, το οποίο ενημερώνεται αυτόματα όταν τα αποτελέσματα της αναζήτησης διαφοροποιηθούν.
default|full|rss|atom|json|json_full
callback

Χρησιμοποιείται για JSONP κλίσεις. Η τιμή της παραμέτρου προσδιορίζει τον wrapper των αποτελεσμάτων. Η παράμετρος χρησιμοποιείται μόνο εάν ο τύπος της αναζήτησης (παράμετρος type) έχει τιμές json ή json_full.

Το όνομα της συνάρτησης που θα χειριστεί την JSONP κλήση στον client.
order

Στην κανονική λειτουργία, το API επιστρέφει τα αποτελέσματα με σειρά φθήνουσας ημ/νιας ανάρτησης. Δίνοντας στην παράμετρο order την τιμή asc τα αποτελέσματα θα επιστραφούν με σειρά αύξουσας ημ/νιας ανάρτησης, έτσι ώστε οι παλαιότερες αναρτήσεις να επιστρέφονται πρώτες. Αυτό είναι χρήσιμο εάν θέλετε να διαβάσετε όλες τις αποφάσεις με διαδοχικές κλίσεις του API, κάνοντας κατάλληλη χρήση της παραμέτρου from.

asc|desc

*Η μή διατεταγμένη λίστα αποτελείται από μία ή περισσότερες τιμές χωριζόμενες με semicolon (;)

Για πληροφορίες σχετικά με τα δεδομένα που επιστρέφονται κατά την αναζήτηση αποφάσεων, δείτε το σχετικό XML Schema.

Παραδείγματα

  • diavgeia_spending.py Υπόδειγμα σε Python για τη λήψη όλων των αποφάσεων που σχετίζονται με δαπάνες, με διαδοχικές κλήσεις του API.

Ιστορικό Αλλαγών

Έκδοση 0.3.1

  • Στα αναλυτικά αποτελέσματα της αναζήτησης αποφάσεων, τα οποία λαμβάνονται χρησιμοποιώντας τις παραμέτρους output=full ή output=json_full), επιστρέφονται και οι πληροφορίες των υπογραφόντων.
  • Προστέθηκε η δυνατότητα λήψης υπογραφόντων ανά μονάδα, χωρίς να χρειάζεται να οριστεί ο φορέας, χρησιμοποιώντας το /api/signers?unit=[ID μονάδας]
  • Προστέθηκε η δυνατότητα λήψης αποφάσεων βάσει οργανωτικών μονάδων, με την παράμετρο unit

Έκδοση 0.3

  • Προστέθηκε το πεδίο active στο XML schema, στις πληροφορίες των φορέων.
  • Αν δοθεί λανθασμένο latin name φορέα σε ερωτήματα αποφάσεων/μονάδων/υπογραφόντων, τότε επιστρέφεται άδεια λίστα αποτελεσμάτων, όπως και στην περίπτωση όπου δίνονται μη υπαρκτοί κωδικοί φορέων. Σε περίπτωση που ο καλών δίνει μη διατεταγμένη λίστα, τότε εμφανίζονται αποτελέσματα μόνο για τους φορείς των οποίων το latin name ή ο κωδικός που δίνεται είναι σωστός.
  • Διορθώθηκε το πρόβλημα της κωδικοποίησης στα αποτελέσματα JSONP.
  • Διορθώθηκε το πρόβλημα με τους μη αποδεκτούς χαρακτήρες στα XML με τα στοιχεία φορέων, υπογραφόντων και μονάδων.
  • Διορθώθηκε το πρόβλημα της εμφάνισης των RSS/Atom feeds όταν δίνεται ως παράμετρος μη υπαρκτός φορέας. Αν ο φορέας που δίνεται ως όρισμα δεν υπάρχει, τότε δημιουργείται ένα κανονικό αλλά άδειο feed.
  • Διορθώθηκε το πρόβλημα της εμφάνισης των RSS/Atom feeds όταν παραπάνω από ένας φορείς δίνονται ως όρισμα. Σε αυτήν την περίπτωση, το feed που επιστρέφεται έχει το γενικό τίτλο "Διαύγεια RSS" ή "Διαύγεια Atom".

Έκδοση 0.2.1

  • Προστέθηκε η παράμετρος callback στο API της αναζήτησης.
  • Προστέθηκαν τα πεδία isCorrectionOfAda και relativeAda στο XML schema.
  • Τα αποτελέσματα της αναζήτησης φιλτράρονται ώστε να αφαιρούνται οι Unicode χαρακτήρες που δεν μπορούν να αναπαρασταθούν με valid XML.

Έκδοση 0.2

  • Προστέθηκε η παράμετρος order στο API της αναζήτησης.
  • Οι παράμετροι datefrom και dateto υποδηλώνουν πλέον την ημερομηνία ανάρτησης αντί για την ημερομηνία του εγγράφου της απόφασης.
  • Αν το query της αναζήτησης περιλαμβάνει λάθος παραμέτρους, θα επιστρέφεται HTTP Error 400 (Invalid arguments).