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

# Recieve MMS Messages

> Handle inbound MMS multimedia messages on a Plivo phone number

## Overview

This guide shows how to receive MMS messages on a Plivo phone number.

You can start receiving MMS messages either by using our PHLO visual workflow builder or our APIs. Follow the instructions in one of the tabs below.

<Tabs>
  <Tab title="Using API">
    Here’s how to use Plivo APIs to receive MMS multimedia messages.

    <h2 id="api-how-it-works">How it works</h2>

    <Frame>
      <img src="https://mintcdn.com/plivo/7-odxN9fJG_Dg1dt/images/receive-mms-api.jpg?fit=max&auto=format&n=7-odxN9fJG_Dg1dt&q=85&s=1acf1d91ec85934808b313f0c7f1e40f" alt="Receive MMS" width="1446" height="774" data-path="images/receive-mms-api.jpg" />
    </Frame>

    <h2 id="api-prerequisites">Prerequisites</h2>

    To get started, you need a Plivo account —  [sign up](https://cx.plivo.com/signup) with your work email address if you don’t have one already. To receive incoming messages, you must have a Plivo phone number that supports MMS; you can rent numbers from the [Numbers](https://cx.plivo.com/phone-numbers) page of the Plivo console or by using the [Numbers API](/docs/numbers/). If this is your first time using Plivo APIs, follow our instructions to set up a Java development environment.

    <h2 id="api-create-a-spring-application-to-receive-messages">Create a Spring application to receive MMS messages</h2>

    Use [Spring Initializr](https://start.spring.io/) to create a boilerplate project called `Plivo MMS`. Open the file `PlivoMmsApplication` and paste into it this code.

    ```java theme={null}
    package com.example.Plivo.SMS;

    import com.plivo.api.exceptions.PlivoXmlException;
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RestController;

    @RestController
    @SpringBootApplication
    public class PlivoMmsApplication {

    	public static void main(String[] args) {
    		SpringApplication.run(PlivoMmsApplication.class, args);
    	}
    	
    	@GetMapping(value = "/reply_mms/")
    	public String getBody(String From, String To, String Text, String media_url) throws PlivoXmlException {
    		System.out.println(From + " " + To + " " + Text+ " " + media_url);
    		return "message received";
    	}
    }

    ```

    <h2 id="api-create-a-plivo-application-to-receive-messages">Create a Plivo application to receive messages</h2>

    Associate the controller you created with Plivo by creating a Plivo application. Visiting Messaging > [Applications](https://cx.plivo.com/xml-applications) and click **Add New Application**. You can also use Plivo's [Application API](/docs/account/api/application/#create-an-application).

    Give your application a name — we called ours `Receive MMS`. Enter the server URL you want to use (for example `https://<yourdomain>.com/receive_mms/`) in the `Message URL` field and set the method to `POST`. Click **Create Application** to save your application.

    <Frame>
      <img src="https://mintcdn.com/plivo/Ac6PoKJHHxDx1U63/images/create_mms_app.png?fit=max&auto=format&n=Ac6PoKJHHxDx1U63&q=85&s=554cde1afc81c04a1566d4e1201f3d71" alt="Create Application" width="2852" height="1602" data-path="images/create_mms_app.png" />
    </Frame>

    <h2 id="api-assign-a-plivo-number-to-your-application">Assign a Plivo number to your application</h2>

    Navigate to the [Numbers](https://cx.plivo.com/phone-numbers) page and select the phone number you want to use for this application.

    From the Application Type drop-down, select `XML Application`.

    From the Plivo Application drop-down, select `Receive MMS` (the name we gave the application).

    Click **Update Number** to save.

    <Frame>
      <img src="https://mintcdn.com/plivo/Ac6PoKJHHxDx1U63/images/assign_MMS_app.png?fit=max&auto=format&n=Ac6PoKJHHxDx1U63&q=85&s=4f86e1a1baff28cd0204d90913f665ee" alt="Assign Phone Number to Receive MMS App" width="2856" height="1606" data-path="images/assign_MMS_app.png" />
    </Frame>

    <h2 id="api-test">Test</h2>

    Send a text message with an image, video, or audio attachment to the Plivo number you specified using any phone.
  </Tab>
</Tabs>
