florianajir/datanova-bundle

LaPoste DataNOVA OpenData API client and proxy

Installs: 4 162

Dependents: 0

Suggesters: 0

Security: 0

Stars: 15

Watchers: 3

Forks: 3

Open Issues: 3

Type:symfony-bundle

0.4.1 2020-04-19 14:59 UTC

This package is auto-updated.

Last update: 2024-05-20 00:00:24 UTC


README

Build Status Code Coverage Scrutinizer Code Quality

Packagist Packagist GitHub license

LaPoste DataNOVA (open-data API) client and proxy Symfony bundle.

Fetch and/or search in datasets from LaPoste DataNOVA.

Installation

Step 1: Download the Bundle

Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:

$ composer require florianajir/datanova-bundle

This command requires you to have Composer installed globally, as explained in the installation chapter of the Composer documentation.

Step 2: Enable the Bundle

Then, enable the bundle by adding it to the list of registered bundles in the src/config/bundles.php file of your project:

<?php
// src/config/bundles.php
return [
    // ...
    Fmaj\LaposteDatanovaBundle\FmajLaposteDatanovaBundle::class => ['all' => true],
    // ...
];

Step 3: Using API proxy

To use the bundle proxy API, import the bundle routing file in the src/config/routing.yml file of your project:

data_nova:
    resource: "@FmajLaposteDatanovaBundle/Resources/config/routing.yml"
    prefix:   /datanova

Step 4: Enjoy!

Search records

/records/search/{dataset}/{query}/{sort}/{rows}/{start} 

Example: http://{localhost}/datanova/records/search/laposte_hexasmal/code_postal:34000/nom_de_la_commune Example: http://{localhost}/datanova/records/search/laposte_hexasmal/paris/code_postal/10/10

Download records

/records/download/{dataset}.{_format}/{query} 

Example: http://{localhost}/datanova/records/download/laposte_hexasmal.json Example: http://{localhost}/datanova/records/download/laposte_hexasmal.csv/974

Download dataset (server cache)

To improve search performances, use the data_nova:download:dataset command to cache dataset for better web search performances. More details in dataset download command documentation.

# /bin/bash
php bin/console datanova:download:dataset -h
Usage:
  datanova:download:dataset [options] [--] <dataset> [<format>] [<q>]

Arguments:
  dataset               Which dataset to download?
  format                Data file format : CSV (default), JSON [default: "CSV"]
  q                     query filter, by default all results will be download

Options:
  -f, --force-replace   If set, the command will replace local storage

Example: php bin/console datanova:download:dataset laposte_hexasmal json -f