The best way to send emails from Marketing Cloud(MC) would be to have data in MC, build the audience there and trigger the emails in MC, but that works only when you have something like a daily send. If you are using data that is hosted outside of MC or you have a dynamic trigger, like immediately after a client clicks a button, then you will need to use an API Call to trigger the send.
To do this is pretty easy. You don't need to create the email or the journey/campaign using the MC APIs, you can use an MC Team (Developers, Consultants, Designers, etc.) to do all this for you and will tell you more about how to trigger the email send action using the APIs. Your only job should be implementing the code for the email trigger.
You have two main ways/endpoints for triggering an email send (there are other ways but these ones from REST API are the easiest to use):
- Transactional API
- Fire Event API
The Transactional API is used for sending transactional emails only, while the Fire Event API is used to start a Journey that can have multiple activities.
To trigger either of them is simple, you need to authenticate first to get the Access Token and using that Token you can start triggering email sends. For both APIs you will need the DefinitionKey of the Journey (this is mapped to the email that you want to send and will be provided by MC developers), the unique identifier of the customer (based on whatever ID is your system using: an email address, a GUID, a auto-number, etc.), the email address to which you want to send that email and the personalization data used in the email body (First Name, OrderId, etc.)
The exact API that you need to use for the triggering of the email: the endpoint, a payload example and response examples can be found in the MC Documentation.
For Transactional API Single Recipient
For Transactional API Multiple Recipients
For Fire Event API Single Recipient
For Fire Event API Multiple Recipients
I would recommend the use of the Multiple Recipients version to avoid hitting the MC recommendation/limit for the number of API Calls per minute, but this is something that needs to be decided based on your business requirements and needs.
To sum it up, to trigger an email sent from an external system
- You need to have an email and a journey created in MC
- You need to authenticate first and obtain the Access Token (valid for 20min, so it should be reused)
- Use the Token and the Transactional API or the Fire Event API endpoint (based on your needs) to trigger an email send.
There are a lot of things that should be taken into consideration aside from what is written here, but the best idea would be to work with your MC Team and have them guide and support you in this implementation.