---
title: Programming interface
url: https://docs.apify.com/actors/development/programming-interface.md
parents:
  - [Apify documentation](https://docs.apify.com/llms.txt)
  - [Actors](https://docs.apify.com/actors.md)
  - [Development](https://docs.apify.com/actors/development.md)
children:
  - [Basic commands](https://docs.apify.com/actors/development/programming-interface/basic-commands.md)
  - [Environment variables](https://docs.apify.com/actors/development/programming-interface/environment-variables.md)
  - [Status messages](https://docs.apify.com/actors/development/programming-interface/status-messages.md)
  - [System events](https://docs.apify.com/actors/development/programming-interface/system-events.md)
  - [Container web server](https://docs.apify.com/actors/development/programming-interface/container-web-server.md)
  - [Metamorph](https://docs.apify.com/actors/development/programming-interface/metamorph.md)
  - [Standby mode](https://docs.apify.com/actors/development/programming-interface/standby.md)
previous: [Dynamic Actor memory](https://docs.apify.com/actors/development/actor-definition/dynamic-actor-memory.md)
next: [Basic commands](https://docs.apify.com/actors/development/programming-interface/basic-commands.md)
---

# Programming interface

This chapter will guide you through all the commands you need to build your first Actor. This interface is provided by [Apify SDKs](https://docs.apify.com/sdk.md). The chapter starts with basic commands and guides you through system events and environment variables that are available to your Actor both locally and when running on the Apify platform.

#### [Basic commands](https://docs.apify.com/actors/development/programming-interface/basic-commands.md)

[Learn how to provide your Actor with context that determines its behavior through a plethora of pre-defined environment variables offered by the Apify SDK.](https://docs.apify.com/actors/development/programming-interface/basic-commands.md)

#### [Environment variables](https://docs.apify.com/actors/development/programming-interface/container-web-server.md)

[Learn how to provide your Actor with context that determines its behavior through a plethora of pre-defined environment variables offered by the Apify SDK.](https://docs.apify.com/actors/development/programming-interface/container-web-server.md)

#### [Status messages](https://docs.apify.com/actors/development/programming-interface/status-messages.md)

[Use custom status messages to inform the user about the progress of your Actor run.](https://docs.apify.com/actors/development/programming-interface/status-messages.md)

#### [Status events](https://docs.apify.com/actors/development/programming-interface/status-messages.md)

[Learn about system events sent to your Actor and how to benefit from them.](https://docs.apify.com/actors/development/programming-interface/status-messages.md)

#### [Container web server](https://docs.apify.com/actors/development/programming-interface/container-web-server.md)

[Learn how to run a web server inside your Actor, which enables you to communicate with the outer world via UI and API.](https://docs.apify.com/actors/development/programming-interface/container-web-server.md)

#### [Metamorph](https://docs.apify.com/actors/development/programming-interface/metamorph.md)

[The metamorph operation transforms an Actor run into the run of another Actor with a new input.](https://docs.apify.com/actors/development/programming-interface/metamorph.md)

#### [Actor Standby](https://docs.apify.com/actors/development/programming-interface/standby.md)

[Learn how to use Actors in lightweight mode as a blazingly fast API server.](https://docs.apify.com/actors/development/programming-interface/standby.md)
