---
title: Recipes overview
description: Every recipe on this site, a complete program for one job, with the time it takes, its APIs and languages, and when it was last verified.
canonical: https://developers.coevera.com/recipes/overview/
section: recipes
verification: behaviour
lastVerified: 2026-10-15
publisher: Coevera
---

# Recipes overview

**Answer:** A recipe is a complete program for one job, in cURL, TypeScript and Python, for REST and GraphQL unless it says it uses one API. Every program is tested and reads its results back. This overview shows each recipe's time, APIs, languages and last verification.

Each recipe does one job from start to finish, in numbered steps. Every step shows its request,
taken from the recipe's tested program, and the response it returns. Pick
REST or GraphQL and your language once, on any sample: every recipe follows that choice. A
recipe that uses one API says so at the top and has no REST/GraphQL toggle.

## Recipes

- [Create an account with contacts](/recipes/create-account-with-contacts/): Create an account, add its contacts in one batch with per-item results, and read them back, in REST or GraphQL, in cURL, TypeScript or Python.

  _10 min | REST and GraphQL | cURL · TypeScript · Python | Verified in the docs sandbox on 2026-10-15_

- [Create an opportunity](/recipes/create-opportunity/): Create an opportunity in the first step of a pipeline, linked to an account and a contact, set a custom field, and read the errors of a refused write, in REST or GraphQL.

  _20 min | REST and GraphQL | cURL · TypeScript · Python | Verified in the docs sandbox on 2026-10-15_

- [Products and line items](/recipes/products-and-line-items/): Create a product category and a product, set its list price, and add it to an opportunity as a line item with a price and a quantity, in REST or GraphQL.

  _20 min | REST and GraphQL | cURL · TypeScript · Python | Verified in the docs sandbox on 2026-10-15_

- [Attach a document](/recipes/attach-document/): Upload a file as base64 and attach it to an account, in two calls through CloudObjects or in one through CloudObjectRelations, in REST or GraphQL.

  _10 min | REST and GraphQL | cURL · TypeScript · Python | Verified in the docs sandbox on 2026-10-15_

- [Merge duplicates](/recipes/merge-duplicates/): Merge a duplicate account into the record you keep, choose the field values that win, and see what happens to the secondary record and its relations, in REST or GraphQL.

  _15 min | REST and GraphQL | cURL · TypeScript · Python | Verified in the docs sandbox on 2026-10-15_

## Integrations

Programs that connect Coevera to another system: a web form, a second contact list, a webhook
receiver, a report.

- [Lead from a web form](/recipes/lead-from-web-form/): Turn a form submission into a lead from your own server, with the visitor's details in the quick fields, an owner and a lead source, in REST or GraphQL.

  _10 min | REST and GraphQL | cURL · TypeScript · Python | Verified in the docs sandbox on 2026-10-15_

- [Two-way contact sync](/recipes/two-way-contact-sync/): Push contacts from another system with a webhook skip key, pull every contact changed since the last round, deletions included, and tell people's edits from integration writes.

  _20 min | REST and GraphQL | cURL · TypeScript · Python | Verified in the docs sandbox on 2026-10-15_

- [Build a webhook receiver](/recipes/webhook-receiver/): A webhook receiver in TypeScript or Python that verifies signatures, answers fast, skips duplicates and survives retries, with a self-test and a cURL script to send it deliveries.

  _20 min | REST only | cURL · TypeScript · Python | Verified in the docs sandbox on 2026-10-15_

- [Pipeline report](/recipes/pipeline-report/): Read every opportunity in a pipeline with filters, expand and cursor pagination together, and total the value and weighted value per step, in REST or GraphQL.

  _10 min | REST and GraphQL | cURL · TypeScript · Python | Verified in the docs sandbox on 2026-10-15_

- [Lead lifecycle (GraphQL)](/recipes/lead-lifecycle/): Create a lead, qualify it into an opportunity, move the opportunity to the next step and change its owner, with the GraphQL actions that REST does not have.

  _15 min | GraphQL only | cURL · TypeScript · Python | Verified in the docs sandbox on 2026-10-15_

## Before you run one

- You need an API application and its credentials: see the [quickstart](/get-started/quickstart/#get-api-credentials)
  and [authentication](/get-started/authentication/). Each recipe's **Before you start** lists the
  [permissions](/get-started/permissions-and-scopes/) it needs.
- Recipes write records. Run them in a space without production data, and use each recipe's
  **Clean up** section afterwards.
- Set your region and space ID in the context bar: every sample fills them in.

## Limits

- Recipes use the standard entities and fields. Your custom fields and custom entities are in your
  space's own spec ([data model](/concepts/data-model/#your-own-fields-and-entities)).
- The dates show when each recipe was last verified. Responses in your space carry your own ids
  and values.
