> ## Documentation Index
> Fetch the complete documentation index at: https://docs.superoffice.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get E Mail As Eml Stream

> Get an inbox e-mail (by its EmailItemId) serialized as an Outlook-openable RFC822 (.

eml) stream. Works for both IMAP and Graph/Exchange-Online mailboxes because it serializes the loaded entity instead of re-fetching the raw message by server id.
NsApiSlow threshold: 5000 ms.
<para />## Online Restricted: ## The EMail agent is not available in Online by default. Access must be requested specifically when app is registered.



## OpenAPI

````yaml /openapi/agent/openapi-v3-EMailAgent.json post /api/v1/Agents/EMail/GetEMailAsEmlStream
openapi: 3.0.0
info:
  version: v1-Agents
  title: SuperOffice Agent API v1
  description: SuperOffice Agent API - EMailAgent
  contact:
    name: SuperOffice DevNet
    url: https://docs.superoffice.com/en/api/index.html
    email: sdk@superoffice.com
servers:
  - url: http://localhost:56350
  - url: https://localhost:56350
security: []
tags: []
externalDocs:
  description: >-
    The SuperOffice DevNet Community has more documentation, examples, and
    discussion forums.
  url: https://community.superoffice.com/en/developer/
paths:
  /api/v1/Agents/EMail/GetEMailAsEmlStream:
    post:
      tags:
        - EMail_Agent
      summary: Get E Mail As Eml Stream
      description: "Get an inbox e-mail (by its EmailItemId) serialized as an Outlook-openable RFC822 (.\n\neml) stream. Works for both IMAP and Graph/Exchange-Online mailboxes because it serializes the loaded entity instead of re-fetching the raw message by server id.\r\nNsApiSlow threshold: 5000 ms.\r\n<para />## Online Restricted: ## The EMail agent is not available in Online by default. Access must be requested specifically when app is registered."
      operationId: v1EMailAgent_GetEMailAsEmlStream
      parameters:
        - name: $select
          in: query
          description: >-
            Optional comma separated list of properties to include in the
            result. Other fields are then nulled out to reduce payload size:
            "Name,department,category". Default = show all fields.
          required: false
          schema:
            type: string
        - name: Accept-Language
          in: header
          description: >-
            Convert string references and multi-language values into a specified
            language (iso2) code.
          required: false
          schema:
            type: string
        - name: SO-Language
          in: header
          description: >-
            Convert string references and multi-language values into a specified
            language (iso2) code. Overrides Accept-Language value.
          required: false
          schema:
            type: string
        - name: SO-Culture
          in: header
          description: >-
            Number, date formatting in a specified culture (iso2 language) code.
            Partially overrides SO-Language/Accept-Language value. Ignored if no
            Language set.
          required: false
          schema:
            type: string
        - name: SO-TimeZone
          in: header
          description: >-
            Specify the timezone code that you would like date/time responses
            converted to.
          required: false
          schema:
            type: string
        - name: SO-AppToken
          in: header
          description: >-
            The application token that identifies the partner app. Used when
            calling Online WebAPI from a server.
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/SuperOffice.WebApi.v1.Carriers.EMailCarriers.GetEMailAsEmlStreamRequest
          text/json:
            schema:
              $ref: >-
                #/components/schemas/SuperOffice.WebApi.v1.Carriers.EMailCarriers.GetEMailAsEmlStreamRequest
          application/xml:
            schema:
              $ref: >-
                #/components/schemas/SuperOffice.WebApi.v1.Carriers.EMailCarriers.GetEMailAsEmlStreamRequest
          text/xml:
            schema:
              $ref: >-
                #/components/schemas/SuperOffice.WebApi.v1.Carriers.EMailCarriers.GetEMailAsEmlStreamRequest
          application/x-www-form-urlencoded:
            schema:
              $ref: >-
                #/components/schemas/SuperOffice.WebApi.v1.Carriers.EMailCarriers.GetEMailAsEmlStreamRequest
          application/json-patch+json:
            schema:
              $ref: >-
                #/components/schemas/SuperOffice.WebApi.v1.Carriers.EMailCarriers.GetEMailAsEmlStreamRequest
          application/merge-patch+json:
            schema:
              $ref: >-
                #/components/schemas/SuperOffice.WebApi.v1.Carriers.EMailCarriers.GetEMailAsEmlStreamRequest
        description: EmailItemId, IncludeAttachments
        required: true
      responses:
        '200':
          description: OK
          content:
            application/octet-stream:
              schema:
                format: binary
                type: string
            application/pdf:
              schema:
                format: binary
                type: string
            text/plain:
              schema:
                format: binary
                type: string
            text/html:
              schema:
                format: binary
                type: string
            multipart/related:
              schema:
                format: binary
                type: string
      security:
        - SuperOffice_Password: []
          SuperId_Authentication: []
components:
  schemas:
    SuperOffice.WebApi.v1.Carriers.EMailCarriers.GetEMailAsEmlStreamRequest:
      description: >-
        GetEMailAsEmlStream: Get an inbox e-mail (by its EmailItemId) serialized
        as an Outlook-openable RFC822 (.eml) stream. Works for both IMAP and
        Graph/Exchange-Online mailboxes because it serializes the loaded entity
        instead of re-fetching the raw message by server id.
      type: object
      properties:
        EmailItemId:
          format: int32
          type: integer
        IncludeAttachments:
          type: boolean

````

## Related topics

- [SuperOffice.WebApi.Data.EMail GetEMailAsEmlStreamRequest](/en/api/reference/webapi/SuperOffice.WebApi.Data.EMail_GetEMailAsEmlStreamRequest.md)
- [SuperOffice.WebApi.Agents.EMailAgent](/en/api/reference/webapi/SuperOffice.WebApi.Agents.EMailAgent.md)
- [SuperOffice.WebApi.Agents.IEMailAgent](/en/api/reference/webapi/SuperOffice.WebApi.Agents.IEMailAgent.md)
- [WebAPI changes in SuperOffice 12.2](/release-notes/12/api/changes-webapi-12.2.2072.0.md)
- [Get E Mail As Stream](/en/api/reference/restful/agent/email_agent/get-e-mail-as-stream.md)
- [Get E Mail As Stream From Server Identifier](/en/api/reference/restful/agent/email_agent/get-e-mail-as-stream-from-server-identifier.md)
