# This is the Pony Mail (Foal) field mapping data for setting up new indices.
# It is used solely by setup.py during the setup process, and should not be
# edited prior to installation.
account:
  properties:
    cid:
      type: keyword
    credentials:
      properties:
        altemail:
          type: object
        email:
          type: keyword
        name:
          type: keyword
        uid:
          type: keyword
    internal:
      properties:
        oauth_provider:
          type: keyword
        oauth_data:
          type: object
    request_id:
      type: keyword
attachment:
  properties:
    source:
      type: binary
mailinglist:
  properties:
    description:
      type: keyword
    list:
      type: keyword
    name:
      type: keyword
mbox:
  properties:
    attachments:
      properties:
        content_type:
          type: keyword
        filename:
          type: keyword
        hash:
          type: keyword
        size:
          type: long
    body:
      type: text
    cc:
      type: text
    date:
      format: yyyy/MM/dd HH:mm:ss
      store: true
      type: date
    dbid:
      type: keyword
    epoch:
      type: long
    forum:
      type: keyword
    from:
      type: text
    from_raw:
      type: keyword
    html_as_source:
      type: boolean
    in-reply-to:
      type: keyword
    list:
      type: text
    list_raw:
      type: keyword
    message-id:
      type: keyword
    mid:
      type: keyword
    permalinks:
      type: keyword
    previous:
      type: keyword
    private:
      type: boolean
    references:
      type: text
    size:
      type: long
    subject:
      fielddata: true
      type: text
    thread:
      type: keyword
    to:
      type: text
    top:
      type: boolean
    _notes:
      type: text
    _archived_at:
      type: long
notification:
  properties:
    date:
      format: yyyy/MM/dd HH:mm:ss
      store: true
      type: date
    epoch:
      type: long
    from:
      type: text
    in-reply-to:
      type: keyword
    list:
      type: text
    message-id:
      type: keyword
    mid:
      type: text
    private:
      type: boolean
    recipient:
      type: keyword
    seen:
      type: long
    subject:
      type: keyword
    to:
      type: text
    type:
      type: keyword
session:
  properties:
    cookie:
      type: keyword
    updated:
      type: long
    cid:
      type: keyword
source:
  properties:
    message-id:
      type: keyword
    mid:
      type: keyword
    permalink:
      type: keyword
    source:
      type: binary
auditlog:
  properties:
    date:
      format: yyyy/MM/dd HH:mm:ss
      store: true
      type: date
    author:
      type: keyword
    remote:
      type: keyword
    action:
      type: keyword
    target:
      type: keyword
    lid:
      type: keyword
    log:
      type: text
