> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rhinestone.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Submitting the intent

> Submit the signed operations to the Orchestrator

Once you've [signed](./signing) the intent operations, you can submit them to the Orchestrator for execution.

Use the `/intent-operations` endpoint:

```ts Submit Intent theme={null}
const baseUrl = "https://v1.orchestrator.rhinestone.dev";
const endpoint = `${baseUrl}/intent-operations`;
const apiKey = "YOUR_RHINESTONE_API_KEY";

const payload = {
  signedIntentOp: {
    ...intentOp,
    originSignatures,
    destinationSignature,
  },
};

const res = await fetch(endpoint, {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "x-api-key": apiKey,
    Accept: "application/json",
  },
  body: JSON.stringify(payload, (_, value) =>
    typeof value === "bigint" ? value.toString() : value,
  ),
});

if (!res.ok) {
  const errorBody = await res.text().catch(() => "");
  throw new Error(
    `Request failed: ${res.status} ${res.statusText}${errorBody ? ` - ${errorBody}` : ""}`
  );
}

const data = await res.json();
console.log("Result:", data);
```

The response includes an operation ID. Use it to track execution status.

<Card title="Tracking intents" icon="radar" href="./tracking-intents">
  Poll for status and understand the full intent lifecycle.
</Card>
