A conversation with a model is sent as a list of messages, each with a role: system instruction, user, assistant, sometimes tool. The model keeps no memory between two calls; the history must be sent with every request for it to take the context into account.
Example
[{"role":"system","content":"Answer in English."},{"role":"user","content":"Define an API."}]