> For a complete index of all SignalWire documentation pages, fetch https://signalwire.com/docs/llms.txt

# get

> Retrieve a single message by SID.

Retrieve a single message by SID.

### Schema

```yaml
openapi: 3.1.0
info:
  title: API
  version: 1.0.0
paths:
  /Accounts/{AccountSid}/Messages/{Sid}:
    get:
      operationId: retrieve_message
      summary: Retrieve a Message
      description: >-
        Retrieve a single message.


        #### Permissions


        The API token used to authenticate must have the following scope(s)
        enabled to make a successful request: _Messaging_.


        [Learn more about API scopes](/docs/platform/your-signalwire-api-space).
      tags:
        - subpackage_messages
      parameters:
        - name: AccountSid
          in: path
          description: >-
            The unique identifier of the project that sent or received this
            message.
          required: true
          schema:
            $ref: '#/components/schemas/uuid'
        - name: Sid
          in: path
          description: A unique ID that identifies this specific message.
          required: true
          schema:
            $ref: '#/components/schemas/uuid'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MessageResponse'
        '400':
          description: >-
            The request was invalid or cannot be processed. Check the error
            details for more information.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CompatibilityErrorResponse'
        '401':
          description: Authentication failed. Please verify your credentials and try again.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CompatibilityErrorResponse'
        '404':
          description: >-
            The requested resource was not found. Please verify the resource
            identifier.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CompatibilityErrorResponse'
servers:
  - url: https://YOUR_SPACE.signalwire.com/api/laml/2010-04-01
    description: SignalWire Compatibility API
components:
  schemas:
    uuid:
      type: string
      format: uuid
      description: Universal Unique Identifier.
      title: uuid
    MessageDirection:
      type: string
      enum:
        - inbound
        - outbound-api
        - outbound-call
        - outbound-reply
      description: Message direction.
      title: MessageDirection
    MessageStatus:
      type: string
      enum:
        - queued
        - initiated
        - sent
        - failed
        - delivered
        - undelivered
        - received
      description: Message status.
      title: MessageStatus
    MessageSubresourceUris:
      type: object
      properties:
        media:
          type: string
          description: The URI for media.
      required:
        - media
      description: Message subresource URIs.
      title: MessageSubresourceUris
    MessageResponse:
      type: object
      properties:
        account_sid:
          $ref: '#/components/schemas/uuid'
          description: >-
            The unique identifier of the project that sent or received this
            message.
        api_version:
          type: string
          description: >-
            The version number of the SignalWire cXML REST API used to handle
            this message.
        body:
          type:
            - string
            - 'null'
          description: >-
            The text of the message. Up to 1600 characters long. May be null if
            filtered for spam.
        num_segments:
          type: integer
          description: The number of segments that make up the entire message.
        num_media:
          type: integer
          description: The number of media files that were included with the message.
        date_created:
          type: string
          description: The date and time the message was created in RFC 2822 format.
        date_sent:
          type:
            - string
            - 'null'
          description: >-
            The date and time the message was sent in RFC 2822 format, or null
            if not yet sent.
        date_updated:
          type: string
          description: The date and time the message was last updated in RFC 2822 format.
        direction:
          $ref: '#/components/schemas/MessageDirection'
          description: The direction of the message.
        error_code:
          type:
            - string
            - 'null'
          description: >-
            If an error has occurred on the message, the error code will give
            you a specific code, or null if no error.
        error_message:
          type:
            - string
            - 'null'
          description: >-
            A human readable description of the error that occurred, or null if
            no error.
        from:
          type: string
          description: The phone number in E.164 format that sent the message.
        price:
          type:
            - string
            - 'null'
          title: float
          description: >-
            The cost of the individual message billed to your project, or null
            if not yet calculated.
        price_unit:
          type: string
          description: The currency in which `price` is charged as.
        sid:
          $ref: '#/components/schemas/uuid'
          description: A unique ID that identifies this specific message.
        status:
          $ref: '#/components/schemas/MessageStatus'
          description: Current status of the message.
        to:
          type: string
          description: The phone number in E.164 format that received the message.
        messaging_service_sid:
          oneOf:
            - $ref: '#/components/schemas/uuid'
            - type: 'null'
          description: >-
            If a number group was used when sending an outbound message, the
            number group's ID will be present, or null otherwise.
        uri:
          type: string
          description: The URI of this particular message.
        subresource_uris:
          $ref: '#/components/schemas/MessageSubresourceUris'
          description: The URIs for any subresources associated with this message.
      required:
        - account_sid
        - api_version
        - body
        - num_segments
        - num_media
        - date_created
        - date_sent
        - date_updated
        - direction
        - error_code
        - error_message
        - from
        - price
        - price_unit
        - sid
        - status
        - to
        - messaging_service_sid
        - uri
        - subresource_uris
      description: Response containing a single message.
      title: MessageResponse
    CompatibilityErrorResponse:
      type: object
      properties:
        code:
          type: integer
          description: Error code.
        message:
          type: string
          description: Error message.
        more_info:
          type: string
          description: URL for more information about the error.
        status:
          type: integer
          description: HTTP status code.
      required:
        - code
        - message
        - more_info
        - status
      description: Error response model.
      title: CompatibilityErrorResponse

```

## **Response Example**

### Response (200)

```json
{
  "account_sid": "ea108133-d6b3-407c-9536-9fad8a929a6a",
  "api_version": "2010-04-01",
  "body": "Hello World!",
  "num_segments": 1,
  "num_media": 1,
  "date_created": "Mon, 13 Aug 2018 21:38:46 +0000",
  "date_sent": "Mon, 13 Aug 2018 21:38:46 +0000",
  "date_updated": "Mon, 13 Aug 2018 21:38:46 +0000",
  "direction": "inbound",
  "error_code": "30001",
  "error_message": "Queue overflow",
  "from": "+15551234567",
  "price": 0.005,
  "price_unit": "USD",
  "sid": "0a059168-ead0-41af-9d1f-343dae832527",
  "status": "queued",
  "to": "+15557654321",
  "messaging_service_sid": "b3877c40-da60-4998-90ad-b792e98472ms",
  "uri": "/api/laml/2010-04-01/Accounts/ea108133-d6b3-407c-9536-9fad8a929a6a/Messages/0a059168-ead0-41af-9d1f-343dae832527.json",
  "subresource_uris": {
    "media": "/api/laml/2010-04-01/Accounts/ea108133-d6b3-407c-9536-9fad8a929a6a/Messages/0a059168-ead0-41af-9d1f-343dae832527/Media.json"
  }
}
```

## **Example**

```python {9}
from signalwire.rest import RestClient

client = RestClient(
    project="your-project-id",
    token="your-api-token",
    host="your-space.signalwire.com",
)

message = client.compat.messages.get("SM...")
```