Courier

The Courier API is rooted at /api/v1/courier and provides a general "inbox"-like landing zone for sending data to Data Fabric.

There are various "inboxes", organized by system or data type, and each can have unique security access controls (if necessary).

                         Data Fabric
                     .--------------------------------------------------------------------.
                    |                                                       .---------.    |
                    |                             api/v1/courier/inbox/abc |           |   |
                    |                           +------------------------->|'---------'|   |
                    |                           |                          | inbox-abc |   |
                    |                           |                           '---------'    |
                    |                           |                           .---------.    |
  .--------.        |      .-------------.      | api/v1/courier/inbox/def |           |   |
  |        +------------> / Courier API /-------+------------------------->|'---------'|   |
  |        |        |    '-------------'        |                          | inbox-def |   |
  +--------+        |                           |                           '---------'    |
 /// ____ \\\       |                           |                           .---------.    |
'------------'      |                           | api/v1/courier/inbox/xyz |           |   |
    Client          |                           +------------------------->|'---------'|   |
                    |                                                      | inbox-xyz |   |
                    |                                                       '---------'    |
                     '--------------------------------------------------------------------'

The inboxes listed above are (obviously) for example only.

Purpose

The inboxes are a simple means for dropping data off to Data Fabric. This can be useful for ad-hoc data ingestion, or simply "parking" data that has no other ICD mechanism.

Each inbox is "write-only", though you can read the current contents of an inbox.

Once data is submitted to an inbox, it may be ingested and/or moved by Data Fabric (depending on the data).

Endpoints

| Operation | Endpoint | Description | |-----------|-------------------------------|------------------------------------------------------------------------| | GET | /api/v1/courier/inbox | List the available inboxes | | HEAD | /api/v1/courier/inbox/{inbox} | Get the meta info (only) about an inbox, without all of the items. | | GET | /api/v1/courier/inbox/{inbox} | List the contents of an inbox. | | POST | /api/v1/courier/inbox/{inbox} | Upload data to an inbox. | | HEAD | /api/v1/courier/inbox/{inbox}/items/{item} | Get the meta info (only) about an item, without the full file content. | | GET | /api/v1/courier/inbox/{inbox}/items/{item} | Get an item from an inbox. |