# Troubleshooting connections

What to do when a connection doesn’t work as expected.

## Apps and coding agents

| What you see | Why | What to do |
|---|---|---|
| No browser opens | The client did not start the sign-in. | Run the client’s login command: `codex mcp login threadpage`, or `/mcp` in Claude Code. |
| Two connections after signing in again | The connect command ran twice. | Disconnect the older connection in **Settings → Connections**. |
| New tools don’t appear | The client keeps its old tool list. | Start a new chat; in ChatGPT, choose **Refresh** in its Plugins settings. |
| **Reconnect required** | The sign-in ended, or your password changed. | Connect the app or the coding agent again. |
| **Paused** | You paused the connection. | Choose **Resume**. Notes you sent it meanwhile reach it then. |

## AI models

| What you see | Why | What to do |
|---|---|---|
| **Key not accepted** | The provider refused the key: revoked, mistyped or out of credit. | Check the key with the provider, then choose **Replace key…**. |
| No answer for the rest of the day | The daily token limit was reached. | Raise the limit in the model’s details, or wait until tomorrow. |
| It doesn’t answer in a shared thread | You haven’t allowed it there. | Choose **Allow here** in that thread. |

## Tokens

| What you see | Why | What to do |
|---|---|---|
| `401` | The token is wrong, replaced or revoked, its term ended, it went unused for 90 days, or your password changed. | Create a new token in **Settings → Connections**, or **Renew** a token before it stops. |
| `403 …_not_allowed` | The level doesn’t allow the call. | Raise the level in **Manage access**, or use the link the call returned. |
| `400` for a token in the address | The token was sent in the query string. | Send it in the `Authorization` header. |
| Calls from a web page fail | The API sends no CORS headers. | Call it from a server or a script. |

## Note updates and workflows

| What you see | Why | What to do |
|---|---|---|
| Nothing arrives | A connection never hears its own changes, and changes made through other connections or by people you share with come only when you add them. | Change a note yourself in ThreadPage, or choose **Send test**. |
| **Paused** | Your URL answered `401` or `403`. | Fix the URL’s check, then choose **Resume**. |
| **Failed: no answer in 15 seconds** | Your URL answered too late. | Answer at once and do slow work afterwards. |
| **Failed: certificate not trusted** | The URL’s certificate is not valid for its host or not from a trusted authority. | Use a certificate from a public authority. |
| **Paused until tomorrow** | Your account reached about 20,000 deliveries today. | They resume after midnight UTC. |
| A local URL is refused | ThreadPage delivers only to public `https` addresses. | Use an HTTPS tunnel while you develop. |

## Adding notes from another app

| What you see | Why | What to do |
|---|---|---|
| `404` | The URL was replaced or deleted, or the connection was disconnected. | Copy the current URL into the app. |
| `401` | The signature is missing, wrong or older than 5 minutes. | Check the secret and the app’s clock. |
| `409` or **Not added** | The thread is in Trash, archived or outside the connection’s access. | Restore the thread or change the connection’s access. |

## Inbox

| What you see | Why | What to do |
|---|---|---|
| Notes don’t arrive | They wait for the browser that collects your Inbox. | Open ThreadPage in that browser, or choose **Collect here** in this one. |
| `inbox_full` | 1,000 notes or 20 MB are waiting. | Open ThreadPage in the browser that collects them. |

## Notes you send with @

| What you see | Why | What to do |
|---|---|---|
| `already_claimed` | Another run of your worker has the request. | Let that run finish; don’t start a second. |
| **Ready to receive** doesn’t appear | The worker hasn’t answered the **Test request** yet. | Check that it claims and answers requests. |
| **Result unknown** | A run stopped after it may have acted. | Check the result yourself, then send the request again if needed. |

## Still stuck?

Write to [support@thread.page](mailto:support@thread.page) or [contact us](https://thread.page/contact?type=question&source=help_article&page=help_connections), and include the `diagnostic_id` from the error.
