Remote system make callout in salesforce to create, retrieve, update, or delete records.
Solutions:
- SOAP & REST API (Best Solution):
Salesforce provides a SOAP/REST API that remote systems can use to:
- Publish events to notify your Salesforce org
- Query data in your org
- Create, update, and delete data
- Obtain metadata about your org
- Run utilities to perform administrative tasks
The client executing SOAP/REST API must have a valid login and obtain a session to perform any API calls. The API respects object-level and field-level security configured in Salesforce based on the logged in user’s profile.
For bulk data operations (more than 500,000 records), use the REST-based Bulk API.
- Custom API (SubOptimal Solution):
Apex can be used to expose rest/web(soap) services. Its not applicable for platform events.
For all Design Patterns, please refer this.