---
title: Linq Sandbox
description: "Meta description:\nLearn how to set up, test, and go live with the Linq Partner API sandbox — including credentials, the inbound-first messaging rule, rate limits, and best practices."
---

[Skip to content](https://help.linqapp.com/linq-sandbox#main-content)

English

Show submenu for translations

[![Cube-Linq-w](https://help.linqapp.com/hs-fs/hubfs/Cube-Linq-w.png?width=200&height=89&name=Cube-Linq-w.png)](https://linqapp.com/?hsLang=en)

Open main navigation

Close main navigation

- English
  
  Show submenu for translations
- [Go to linqapp.com](https://linqapp.com/)

[Go to linqapp.com](https://linqapp.com/?hsLang=en)

 How can we help?

- There are no suggestions because the search field is empty.

1. [Help Center](https://help.linqapp.com/?hsLang=en)
2. [API](https://help.linqapp.com/api?hsLang=en)

September 17, 2026

# Linq Sandbox

## The Linq sandbox lets you build and test your iMessage integration against the real API — for free — before going live. You get a real phone line, full API access, and 7 days to validate your integration.

What Is the Sandbox?

The Linq Sandbox is a free trial period where you can test out iMessage and how it works for 7 days before committing to a subscription. In no way is a sandbox meant for full production accounts.

Getting Started

1. Fill out the signup form (name, business email, phone, company) and tap **Get Started**
   
   **![Screenshot 2026-09-17 at 11.52.41 AM](https://help.linqapp.com/hs-fs/hubfs/Screenshot%202026-09-17%20at%2011.52.41%20AM.png?width=327&height=455&name=Screenshot%202026-09-17%20at%2011.52.41%20AM.png)**
2. Complete the 4-step onboarding walkthrough  
   ![Screenshot 2026-09-17 at 11.53.44 AM](https://help.linqapp.com/hs-fs/hubfs/Screenshot%202026-09-17%20at%2011.53.44%20AM.png?width=382&height=415&name=Screenshot%202026-09-17%20at%2011.53.44%20AM.png)![Screenshot 2026-09-17 at 11.53.51 AM](https://help.linqapp.com/hs-fs/hubfs/Screenshot%202026-09-17%20at%2011.53.51%20AM.png?width=382&height=407&name=Screenshot%202026-09-17%20at%2011.53.51%20AM.png)  
   ![Screenshot 2026-09-17 at 11.54.00 AM](https://help.linqapp.com/hs-fs/hubfs/Screenshot%202026-09-17%20at%2011.54.00%20AM.png?width=353&height=406&name=Screenshot%202026-09-17%20at%2011.54.00%20AM.png)![Screenshot 2026-09-17 at 11.54.05 AM](https://help.linqapp.com/hs-fs/hubfs/Screenshot%202026-09-17%20at%2011.54.05%20AM.png?width=342&height=398&name=Screenshot%202026-09-17%20at%2011.54.05%20AM.png)

> **Your credentials:**

| Token | Purpose |
| --- | --- |
| Partner API token | Every `/v3` call — send as `Authorization: Bearer <token>` |
| Sandbox signup token | Completes signup only; expires in 1 hour, cannot call the API |
| Web session token | Signs you into the web app; not an API credential |

> **Note:** No token yet? Your phone line hasn't been assigned. It appears automatically once a line is allocated — no action needed.

The One Rule That Will Surprise You

In sandbox, **you cannot start a conversation.** You can only reply to someone who has already messaged your line first.

**Before your first API call:** text your sandbox number from your own phone. That inbound message unlocks replies to that number.

Sending to a number that hasn't messaged you returns:

```
HTTP 403  {"code": 2008, "message": "Recipient not allowed"}
```

**Important notes:**

- For group chats, every participant must have messaged your line first — one unknown number fails the whole request
- No time limit — any inbound message, however old, qualifies that number permanently
- The rule applies when adding participants too, not just on initial send

```
What You Can Test
```

Sandbox messages are real — sent to real devices. Test with your own number or a colleague's.

- Inbound messages
- Replies, webhooks & real-time event logs
- Read receipts & typing indicators
- Tapback reactions

```
Rate Limits
```

Sandbox has two additional account-wide caps that production accounts do not:

| Limit | Value |
| --- | --- |
| Messages per minute (all lines) | 30 |
| Messages per day (all lines) | 7,000 — resets midnight UTC |

Exceeding either returns `HTTP 429` with a `Retry-After` header. Use exponential backoff. Only sends count — reads do not.

```
Trial & Going Live
```

The 7-day trial starts when your phone line is assigned — not when you sign up. At expiry, your token stops working and every call returns `HTTP 401`. Your account and history are not deleted.

> **Note:** Webhook subscriptions are removed shortly before expiry. If deliveries go quiet slightly before your end date, that's expected — not a delivery fault.

**Going live is simple — nothing breaks:**

- Your API token stays the same
- The inbound-first rule is lifted
- Sandbox rate limits are removed
- Your phone number and message history carry over

**One thing to redo:** Re-register your webhook subscriptions pointing at your production endpoints.

```
Frequently Asked Questions
```

**Why can't I send a message to a new number?** In sandbox you can only reply — not initiate. Text your sandbox line from that number first, then try again.

**Why do I have no API token?** Your phone line hasn't been assigned yet. It will appear automatically — usually within minutes of signup.

**Everything is returning 401. What's wrong?** Your trial has likely expired. Your account and data are intact — upgrade to production to restore access.

**I'm hitting 429 sooner than expected. Why?** The 30/min cap is account-wide, not per line. Sends across multiple lines share the limit.

**Does going live require new credentials?** No. Your API token stays the same — sandbox restrictions are simply lifted from it.

**Issues not covered here?** Contact support@linqapp.com.

- [Linq Blue](https://help.linqapp.com/linq-blue?hsLang=en#main-content)

    - [Linq Blue Subscription](https://help.linqapp.com/linq-blue?hsLang=en#linq-blue-subscription)
    - [Linq Zero](https://help.linqapp.com/linq-blue?hsLang=en#linq-zero)
    - [Integration: GHL](https://help.linqapp.com/linq-blue?hsLang=en#integration-ghl)
    - [Integration: Salesforce](https://help.linqapp.com/linq-blue?hsLang=en#integration-salesforce)
    - [Integration: HubSpot](https://help.linqapp.com/linq-blue?hsLang=en#integration-hubspot)
- [Linq One](https://help.linqapp.com/linq-one?hsLang=en#main-content)

    - [FAQs](https://help.linqapp.com/linq-one?hsLang=en#faqs)
    - [Linq App](https://help.linqapp.com/linq-one?hsLang=en#linq-app)
    - [Admin Dashboard](https://help.linqapp.com/linq-one?hsLang=en#admin-dashboard)
    - [Products](https://help.linqapp.com/linq-one?hsLang=en#products)
    - [Troubleshooting](https://help.linqapp.com/linq-one?hsLang=en#troubleshooting)
- [API](https://help.linqapp.com/api?hsLang=en#main-content)

    - [Sandbox](https://help.linqapp.com/api?hsLang=en#sandbox)
    - [API Resources](https://help.linqapp.com/api?hsLang=en#api-resources)

[![Cube-Linq-w](https://help.linqapp.com/hs-fs/hubfs/Cube-Linq-w.png?width=197&height=88&name=Cube-Linq-w.png "Cube-Linq-w")](https://linqapp.com/?hsLang=en)

linqapp.com Help Center

Copyright © 2025, Linq