Skip to content
RoughFigure

How to send leads to monday CRM with the API

monday CRM uses a GraphQL API. Create an item on your leads board for each website enquiry and add the details as an update. Token, board ID and queries.

RoughFigure2 min read
Illustration of a contact card in a CRM
On this page
  1. Get your token and board ID
  2. Create the item
  3. Add the details as an update
  4. monday reports errors in a 200
  5. Also watch for
  6. Doing it in RoughFigure
  7. Questions

To send leads to monday CRM, copy your API token from Developers, find your leads board ID in the board’s web address, and send a GraphQL create_item mutation to https://api.monday.com/v2 for each lead. Add the job details with a second create_update call, so they’re on the item for anyone who picks it up.

Get your token and board ID

  1. In monday.com, click your profile picture, choose Developers, then API token → Show, and copy it.
  2. Open your leads board. The long number at the end of its web address is the board ID.

Create the item

monday’s API is GraphQL: one address, and you say what you want in the request body.

POST https://api.monday.com/v2
Authorization: <your API token>
Content-Type: application/json

{
  "query": "mutation($board: ID!, $name: String!) { create_item(board_id: $board, item_name: $name) { id } }",
  "variables": { "board": "1234567890", "name": "Emma Hughes" }
}

Add the details as an update

{
  "query": "mutation($item: ID!, $body: String!) { create_update(item_id: $item, body: $body) { id } }",
  "variables": {
    "item": "9876543210",
    "body": "Patio cleaning, about 40 m². Estimate £280–£360. Phone +447700900111."
  }
}

An update is the easiest way to get everything in front of your team without matching every column. If you do want columns filled (email, phone, status), pass column_values on create_item as a JSON string keyed by each column’s ID.

monday reports errors in a 200

Unlike most APIs, monday often replies with status 200 and an errors array when something’s wrong, such as a board ID you can’t reach. Check the body, not just the status, or you’ll think leads arrived when they didn’t.

Also watch for

  • Complexity limits. monday budgets API usage by query complexity. One lead at a time is well inside it.
  • Retries after the item exists. If creating the item worked but adding the update failed, don’t retry the whole thing, or you’ll get two items for one customer.

Doing it in RoughFigure

In RoughFigure we’ve built monday CRM in as a direct connection. Choose monday CRM under Integrations → Send leads to your CRM, paste your API token and board ID, and click Connect. We check we can see the board, then every lead arrives as an item named after the customer, with their answers, contact details and price range in an update. See the monday CRM integration.

Questions

Does this work with ordinary monday.com boards, not just monday CRM?

Yes. The API is the same for any board you can see. monday CRM just comes with boards set up for leads and deals.

Where do I find a column’s ID?

Turn on Developer mode in monday’s Monday Labs, and column IDs show in each column’s menu.

Can I put the lead into a group like “New leads”?

Yes. Add group_id to create_item. The group ID is in the group’s menu when developer mode is on.

Keep reading

Give your next customer a rough figure tonight.

14 days free · No card needed · Set up for you, free