All articles

How to make an API product demo video developers can follow

Plan an API demo around a request, its response, and the application result. Show asynchronous work, readable payloads, and a useful next step.

An API product demo has an awkward job: much of what makes the product useful happens somewhere the viewer can't see. A terminal full of JSON proves that something happened, but it doesn't necessarily explain why a developer would add the API to their application.

I'd build the video around one request and follow its consequences. The viewer should understand what their application sends, what comes back, and what they still need to handle. That gives you a way to choose between code, a diagram, and an application screen without turning the video into a quickstart read aloud.

Choose an application outcome before choosing the endpoint

Imagine a fictional document-processing API that accepts a PDF and returns extracted invoice fields. A developer evaluating it wants to know how an uploaded invoice becomes data their application can review. Starting with that question is more useful than opening on a list of endpoints or a diagram of every service behind the API.

For this hypothetical video, show an invoice with a supplier name, invoice number, and total. Then show the application receiving those same fields. Keep the example small enough that viewers can compare the two without pausing to read a whole document. The technical detail earns its place because it explains that transformation.

Write down what the API does and what your sample application does separately. If your app supplies the review screen, don't imply that the API includes that interface. A short label such as 'Example application' can make the distinction clear while leaving room to show a useful end-to-end result.

Give each view a specific job

Use the application view to explain the user's task, the request view to explain the integration, and the response view to explain the contract. You don't need all three visible throughout. Keeping a tiny application beside a tiny code editor usually makes both harder to understand.

In the request scene, emphasize the method, endpoint, and the fields that matter to this example. An authorization header can be present without displaying a real credential. Use a visibly fake token or a named environment variable, and check the recording for unrelated secrets before handing it over for editing.

If you simplify the payload for readability, label it as an excerpt. Don't delete a required field and then present the snippet as runnable. The complete sample belongs in the linked documentation; the video can focus on the lines that explain the relationship.

Keep acceptance, processing, and completion separate

An accepted request isn't always a finished job. HTTP 202 means the request has been accepted for processing, which may not have completed. If your API uses that status, a green check immediately followed by the finished invoice can hide the most important part of the integration.

Show the job identifier, then show how the application learns that work is complete. That might be polling or a webhook, depending on the actual product. Use the same identifier across the scenes so the viewer can follow one job instead of trying to connect several unrelated responses.

You can shorten a long wait, but label the cut where it happens. 'Processing time shortened' explains the edit without inventing a speed claim. If you show an elapsed duration instead, record it from the actual run and identify the example conditions rather than presenting one run as a general benchmark.

HTTP semantics: 202 Accepted

A worked brief for the invoice API

This is a fictional brief, not a description of an Impractical feature or an integration we've tested. The timings are a starting point for planning; the request and result should stay visible as long as they need to be readable.

Audience: developers evaluating invoice extraction for an existing application.
Opening: show a sample invoice beside empty review fields. Explain that the application needs structured values.
Request: show the PDF being submitted to the fictional API. Highlight the endpoint and file reference, using a fake credential.
Processing: show the accepted job and its identifier. Label any removed waiting time.
Result: show the completed response, then the same supplier, invoice number, and total in an example application's review screen.
Boundary: identify the review screen as application code, not part of the API.
Next step: open the matching quickstart with the complete request and completion-handling example.

Include the error that changes the integration decision

You don't need a catalogue of error codes in a short overview. Pick the condition that would change how someone builds the integration. For the invoice example, that could be an unsupported document or a result that needs human review, provided those states exist in the actual product.

Show what the application receives and what the developer is expected to do next. A generic red error card gives less information than the real response field and a clearly labeled recovery step. Don't invent retry behavior, automatic corrections, or confidence scores to make the demonstration feel more complete.

If the failure path needs a longer explanation, end the main demo with the working request and link a separate technical walkthrough. Keeping the overview focused is reasonable; making it appear that the integration never encounters uncertain or incomplete results isn't helpful.

Review the recording as a developer would use it

Ask a teammate unfamiliar with the script to identify the input, completion signal, and final result. If they can't tell whether the job finished or merely entered a queue, fix that sequence before adding more visual polish. Check that identifiers, field names, and values remain consistent across every crop.

Then run the complete sample linked below the video against the supported environment. This validates the material you are asking someone to try, rather than assuming a polished recording makes the instructions reproducible. Keep version and setup notes with the sample so someone can tell whether it applies to their account.

The final link should take the viewer to that specific starting point. A broad homepage leaves them to rediscover the endpoint and example they just watched. The video has done its job when they understand both what the API provides and where to begin checking it for their own application.