Skip to main content

batch endpoint for guillotina

Project description

Guillotina Batch Docs

This package simple provides a @batch endpoint to Guillotina which allows you to group multiple requests into one.

By default all the requests use a single transaction that is commited when all the requests finish successfully. If ?eager-commit=true is provided, each request will be committed independently.

Configuration

Just add a few lines to your config.yml::

{"applications": ["guillotina_batch"]}

Usage

The @batch endpoint takes a array of batch definitions taking the following parameters:

  • method:str
  • endpoint:str
  • headers:object[str, str]
  • payload:object

For example::

POST /db/container/@batch [{
    "method": "POST",
    "endpoint": "path/to/object/@sharing",
    "payload": {
        "prinperm": [{
            "principal": "user1",
            "permission": "guillotina.AccessContent",
            "setting": "AllowSingle"
        }]
    }
},{
    "method": "POST",
    "endpoint": "path/to/object2/@sharing",
    "payload": {
        "prinperm": [{
            "principal": "user1",
            "permission": "guillotina.AccessContent",
            "setting": "AllowSingle"
        }]
    }
}]

Limitations

It won't work with streamed responses.

6.0.0 (2020-06-12)

  • Moved to guillotina 6 and python 3.8 [lferran]

5.0.3 (2019-12-02)

  • Fix bug: individual errors are returned separately instead of making main request fail. [lferran]

5.0.2 (2019-11-05)

  • Add request body validation
  • Add request and responses swagger description
  • Black and isort
  • Fix travis

[lferran]

5.0.1 (2019-11-01)

  • Be able to import types

5.0.0 (2019-08-30)

  • Upgrade to g5

1.2.1 (2019-06-18)

  • restrict compat version

1.2.0 (2019-05-13)

  • Provide new max_batch_size setting and default it to 200 [vangheem]

1.1.0 (2019-03-11)

  • Retry requests automatically on ConflictError (with eager-commit=True) [masipcat]

1.0.5 (2018-11-19)

  • Added GET param eager-commit [masipcat]

1.0.4 (2018-07-06)

  • Copy future object from batch request to request

1.0.3 (2018-06-27)

  • Including parent request's security in batched view [lferran]

1.0.2 (2018-06-27)

  • try again

1.0.1 (2018-06-13)

  • markdown fix

1.0.0 (2018-06-11)

  • Initial release [vangheem]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

guillotina_batch-6.0.0.tar.gz (9.1 kB view hashes)

Uploaded Source

Built Distribution

guillotina_batch-6.0.0-py3-none-any.whl (9.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page