Records that the rep picks this carrier. Lanesurf takes the load off the market (it goes inactive) and
stops looking. The load becomes covered with covered_by: lanesurf and winner set.Lanesurf does not contact the carrier or send a rate confirmation: the broker reaches out to the winner
(contact_email / contact_phone on winner) to book, and sends the rate confirmation from their own TMS.
Lanesurf also emails the brokerage’s reps (the load’s CC list, else the brokerage’s CC list, plus the rep who
posted it) the carrier’s details. Confirm with the
person before calling this.
Accepting the same offer again is safe: you get the same answer.
Send the offer’s rate that the person agreed to. If the carrier changed its rate since, nothing is
accepted and you get 409 offer_changed with current_rate: ask the person again.
409 already_covered: another offer was already accepted, or the load was marked covered
(POST /v1/loads/{id}/covered) or deleted. A load can’t be both accepted and marked covered.
409 offer_changed: the offer’s rate isn’t the one sent (the carrier changed it, or the rate sent was
wrong); current_rate has it and error names both. Nothing was accepted.
A declined offer can still be accepted later. An offer on a paused load can be accepted too; the load
becomes covered. Reopening a covered load puts it back to sourcing, even if it was paused before.
400 invalid_request: no rate was sent, or this carrier hasn’t named a usable rate yet.
sourcing: Lanesurf is reaching carriers.
stalled: the load is open, but no carrier has been contacted 15 minutes after posting (sourcing may
not be switched on for this brokerage), or the brokerage signed up through the API and carrier
outreach starts after Lanesurf's review. status_reason says which.
covered: done; see covered_by.
inactive: the load is no longer active and wasn't covered through this API.
deleted: the load was deleted.
The email and phone to put on the load wherever it is advertised, so carrier replies reach Lanesurf. Only set when Lanesurf has set a posting email and phone for the key; keys made by signing in from an AI app don't have one yet.
What was posted, as stored. On GET /v1/loads/{id} and every change (edit, pause, resume, reopen, delete, accept, decline, covered).
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Lanesurf Agent API","description":"Let any AI agent get a freight load covered, or get a truck loaded, through Lanesurf.","colors":{"primary":"#2563EB","light":"#60A5FA","dark":"#1D4ED8"},"logo":{"light":"https://mintcdn.com/lanesurf-d98c59ed/XupxBXiERw20rl0s/logo/light.svg?fit=max\u0026auto=format\u0026n=XupxBXiERw20rl0s\u0026q=85\u0026s=e7e783e919601573a03ed1dcf02233f8","dark":"https://mintcdn.com/lanesurf-d98c59ed/XupxBXiERw20rl0s/logo/dark.svg?fit=max\u0026auto=format\u0026n=XupxBXiERw20rl0s\u0026q=85\u0026s=9c19154496fe52a5616ae0d98c489570","href":"/"},"favicon":"https://mintcdn.com/lanesurf-d98c59ed/XupxBXiERw20rl0s/favicon.png?fit=max\u0026auto=format\u0026n=XupxBXiERw20rl0s\u0026q=85\u0026s=f2c5b6e71d9aaa614f7f04cfa13d3e21","navbar":{"links":[{"href":"mailto:support@lanesurf.com","label":"Support"},{"href":"https://www.lanesurf.com","label":"lanesurf.com"}]},"footer":{"socials":{"website":"https://www.lanesurf.com"}},"contextual":{"options":["copy","view","chatgpt","claude","grok","perplexity","download-spec"],"display":"header"},"markdown":{"instructions":["You are reading the Lanesurf Agent API docs. Start with /for-ai-agents.md for the rules an agent must follow.","The API is at https://agent.lanesurf.com and the MCP server at https://agent.lanesurf.com/mcp. Lanesurf doesn't send webhooks: poll.","Limits: /rate-limits.md. Keys: /api-keys.md. Safe retries: /idempotency.md. Every route on one page: /api-reference.md.","Always confirm with the person before accepting a carrier offer or bidding on a load. Never reveal an API key, and never show broker contact details to a carrier.","The full contract is at /openapi.yaml.","Sign up with POST /v1/signup (carrier or broker, a work email, an MC and/or DOT number), then POST /v1/signup/{signup_id}/verify. Follow next_step on every signup answer."]},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"lanesurf-d98c59ed","hasAudioNarration":false,"actualSubdomain":"lanesurf-d98c59ed","customDomains":["docs.lanesurf.com"],"gitSource":{"type":"github","owner":"lanesurf-org","repo":"agent-ai-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ae61b0caf08fdd71062c1a8","collectionId":"8fd05299-2b32-4bca-b0a0-35925c6f2e50","liveDeploymentHistoryId":"6ae61b0caf08fdd71062c1a8","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae61b0caf08fdd71062c1a8","clientVersion":"0.0.4043","searchFilterCounts":[{"language":"default","tag":"Carriers","count":22},{"language":"default","tag":"Brokers","count":18},{"language":"default","tag":"Reference","count":14},{"language":"default","tag":"Loads API","count":12},{"language":"default","tag":"Get started","count":10},{"language":"default","tag":"Guides","count":9},{"language":"default","tag":"Trucks API","count":6},{"language":"default","tag":"Loads and bids API","count":5},{"language":"default","tag":"Sign-up API","count":3},{"language":"default","tag":"Lanes API","count":3}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".nav-logo{height:34px!important}"}],"page":{"pagePath":"api-reference/broker-loads/accept-a-carriers-offer","slug":"/api-reference/broker-loads/accept-a-carriers-offer","pageMetadata":{"title":"Accept an offer","description":"Pick this carrier. Lanesurf stops looking.","deprecated":null,"version":null,"sidebarTitle":"Accept an offer","openapi":"/openapi.yaml post /v1/loads/{id}/offers/{session_id}/accept","href":"/api-reference/broker-loads/accept-a-carriers-offer","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Pick this carrier. Lanesurf stops looking.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components};return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Records that the rep picks this carrier. Lanesurf takes the load off the market (it goes inactive) and\nstops looking. The load becomes `,_jsx(_components.code,{children:`covered`}),` with `,_jsx(_components.code,{children:`covered_by: lanesurf`}),` and `,_jsx(_components.code,{children:`winner`}),` set.`]}),`\n`,_jsxs(_components.p,{children:[`Lanesurf does `,_jsx(_components.strong,{children:`not`}),` contact the carrier or send a rate confirmation: the broker reaches out to the winner\n(`,_jsx(_components.code,{children:`contact_email`}),` / `,_jsx(_components.code,{children:`contact_phone`}),` on `,_jsx(_components.code,{children:`winner`}),`) to book, and sends the rate confirmation from their own TMS.\nLanesurf also emails the brokerage’s reps (the load’s CC list, else the brokerage’s CC list, plus the rep who\nposted it) the carrier’s details. Confirm with the\nperson before calling this.`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`Accepting the same offer again is safe: you get the same answer.\nSend the offer’s `,_jsx(_components.code,{children:`rate`}),` that the person agreed to. If the carrier changed its rate since, nothing is\naccepted and you get `,_jsx(_components.code,{children:`409 offer_changed`}),` with `,_jsx(_components.code,{children:`current_rate`}),`: ask the person again.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`409 already_covered`}),`: another offer was already accepted, or the load was marked covered\n(`,_jsx(_components.code,{children:`POST /v1/loads/{id}/covered`}),`) or deleted. A load can’t be both accepted and marked covered.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`409 offer_changed`}),`: the offer’s rate isn’t the one sent (the carrier changed it, or the rate sent was\nwrong); `,_jsx(_components.code,{children:`current_rate`}),` has it and `,_jsx(_components.code,{children:`error`}),` names both. Nothing was accepted.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`A declined offer can still be accepted later. An offer on a paused load can be accepted too; the load\nbecomes covered. Reopening a covered load puts it back to sourcing, even if it was paused before.`}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`400 invalid_request`}),`: no `,_jsx(_components.code,{children:`rate`}),` was sent, or this carrier hasn’t named a usable rate yet.`]}),`\n`]}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Accept an offer","description":"Pick this carrier. Lanesurf stops looking.","deprecated":null,"version":null,"sidebarTitle":"Accept an offer","openapi":"/openapi.yaml post /v1/loads/{id}/offers/{session_id}/accept","href":"/api-reference/broker-loads/accept-a-carriers-offer","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Broker loads"],"summary":"Accept a carrier's offer","operationId":"acceptOffer","x-mint":{"metadata":{"title":"Accept an offer","sidebarTitle":"Accept an offer","description":"Pick this carrier. Lanesurf stops looking."},"content":"Records that the rep picks this carrier. Lanesurf takes the load off the market (it goes inactive) and\nstops looking. The load becomes `covered` with `covered_by: lanesurf` and `winner` set.\n\nLanesurf does **not** contact the carrier or send a rate confirmation: the broker reaches out to the winner\n(`contact_email` / `contact_phone` on `winner`) to book, and sends the rate confirmation from their own TMS.\nLanesurf also emails the brokerage's reps (the load's CC list, else the brokerage's CC list, plus the rep who\nposted it) the carrier's details. Confirm with the\nperson before calling this.\n\n- Accepting the same offer again is safe: you get the same answer.\nSend the offer's `rate` that the person agreed to. If the carrier changed its rate since, nothing is\naccepted and you get `409 offer_changed` with `current_rate`: ask the person again.\n\n- `409 already_covered`: another offer was already accepted, or the load was marked covered\n (`POST /v1/loads/{id}/covered`) or deleted. A load can't be both accepted and marked covered.\n- `409 offer_changed`: the offer's rate isn't the one sent (the carrier changed it, or the rate sent was\n wrong); `current_rate` has it and `error` names both. Nothing was accepted.\n- A declined offer can still be accepted later. An offer on a paused load can be accepted too; the load\n becomes covered. Reopening a covered load puts it back to sourcing, even if it was paused before.\n- `400 invalid_request`: no `rate` was sent, or this carrier hasn't named a usable rate yet.\n"},"description":"Pick this carrier. Lanesurf stops looking.","requestBody":"1bb81079-6a81-4518-b063-00a15da37221","responses":{"200":"b4f8c030-dcff-45fe-a5a8-680415b435be","400":"df3bfdcc-d673-4a1e-b2c1-ee7ce31d06c1","401":"3555250b-47a0-4903-934c-3b4aacdda4f0","403":"79e88208-6b64-4042-8673-9c1aa5f7908d","404":"440db855-a0c2-48af-aa25-5a1da7a08083","409":"656494ad-8043-41ce-a7f8-6ee09e2a4dfa","429":"696c05ae-b861-4d44-b084-0db77c41227e","500":"331e8b97-a1db-4ad7-9f33-7bc1868fce20","502":"6c00168c-b3de-48c2-baaf-21214491299e","503":"5e956edb-d51a-4265-86f6-b3c1e5a3393e"},"method":"post","type":"path","servers":["23a3a396-6c85-4043-970f-44c0c809dd8e"],"security":["6035daa8-0518-463a-af69-0d34b5a6d06e"],"path":"/v1/loads/{id}/offers/{session_id}/accept","baseUrlOptions":["https://agent.lanesurf.com"],"title":"Accept a carrier's offer","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"744fb71a-079a-4741-83e8-df27523f1380":{"name":"id","in":"path","required":true,"description":"The load's `load_id`, or its `tms_id`, from `POST /v1/loads`.","schema":{"type":"string","example":"3f2a9c4e-1d7b-4c55-8a7e-0b9d6e5f1234","isRequired":true,"description":"The load's `load_id`, or its `tms_id`, from `POST /v1/loads`.","uniqueKey":"","typeLabel":"string"}},"351bad01-acc1-42ba-a662-396d052b3064":{"name":"session_id","in":"path","required":true,"description":"The offer's `session_id` from `GET /v1/loads/{id}`.","schema":{"type":"string","format":"uuid","isRequired":true,"description":"The offer's `session_id` from `GET /v1/loads/{id}`.","uniqueKey":"","typeLabel":"string\u003cuuid>"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["rate"],"properties":{"rate":{"type":"number","description":"The offer's rate in USD as `GET /v1/loads/{id}` showed it and the person agreed to.","example":1850,"isRequired":true,"uniqueKey":"rate","typeLabel":"number"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"rate":1850}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"b4f8c030-dcff-45fe-a5a8-680415b435be":{"description":"Updated status, with `winner` set.","content":{"application/json":{"schema":{"type":"object","required":["load_id","status","offers","outreach","next_step"],"properties":{"load_id":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"load_id","typeLabel":"string\u003cuuid>"},"status":{"type":"string","enum":["sourcing","stalled","covered","inactive","deleted"],"description":"`sourcing`: Lanesurf is reaching carriers.\n`stalled`: the load is open, but no carrier has been contacted 15 minutes after posting (sourcing may\nnot be switched on for this brokerage), or the brokerage signed up through the API and carrier\noutreach starts after Lanesurf's review. `status_reason` says which.\n`covered`: done; see `covered_by`.\n`inactive`: the load is no longer active and wasn't covered through this API.\n`deleted`: the load was deleted.\n","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"offers":{"type":"array","description":"Carriers that named a rate, cheapest first.","items":{"type":"object","required":["session_id","rate"],"properties":{"session_id":{"type":"string","format":"uuid","description":"Use it to accept or decline.","isRequired":true,"uniqueKey":"offers.items.[INDEX].session_id","typeLabel":"string\u003cuuid>"},"rate":{"type":"number","description":"The carrier's rate (always above 0).","isRequired":true,"uniqueKey":"offers.items.[INDEX].rate","typeLabel":"number"},"channel":{"type":"string","description":"How the carrier was reached, e.g. `email` or `call`.","example":"email","uniqueKey":"offers.items.[INDEX].channel","typeLabel":"string"},"status":{"type":"string","description":"Lanesurf's raw outreach status for this carrier, as on the broker's board. Show it, don't branch\non it. Examples: `NEGOTIATION_LOGGED | WITHIN_RANGE`, `NEGOTIATION_LOGGED | OUT_OF_RANGE`,\n`BID_LOGGED | WE_ASKED_FIRST`.\n","example":"NEGOTIATION_LOGGED | WITHIN_RANGE","uniqueKey":"offers.items.[INDEX].status","typeLabel":"string"},"carrier_name":{"type":"string","uniqueKey":"offers.items.[INDEX].carrier_name","typeLabel":"string"},"carrier_mc":{"type":"string","uniqueKey":"offers.items.[INDEX].carrier_mc","typeLabel":"string"},"carrier_dot":{"type":"string","uniqueKey":"offers.items.[INDEX].carrier_dot","typeLabel":"string"},"contact":{"type":"string","description":"The carrier's email, or phone if there's no email.","uniqueKey":"offers.items.[INDEX].contact","typeLabel":"string"},"contact_email":{"type":"string","description":"The carrier's email, when known.","uniqueKey":"offers.items.[INDEX].contact_email","typeLabel":"string"},"contact_phone":{"type":"string","description":"The carrier's phone, when known.","uniqueKey":"offers.items.[INDEX].contact_phone","typeLabel":"string"},"decision":{"type":"string","enum":["accepted","declined"],"description":"The rep's choice, if any.","uniqueKey":"offers.items.[INDEX].decision","typeLabel":"enum\u003cstring>"},"updated_at":{"type":"string","description":"When the carrier conversation started (ISO 8601).","uniqueKey":"offers.items.[INDEX].updated_at","typeLabel":"string"}},"uniqueKey":"offers.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"offers","typeLabel":"object[]"},"outreach":{"type":"object","required":["sessions","bids"],"properties":{"sessions":{"type":"integer","description":"Carrier conversations on this load (calls, emails and inbound bids).","isRequired":true,"uniqueKey":"outreach.sessions","typeLabel":"integer"},"bids":{"type":"integer","description":"How many carriers named a rate (the length of `offers`).","isRequired":true,"uniqueKey":"outreach.bids","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"outreach","typeLabel":"object"},"next_step":{"type":"string","description":"For the agent. Exactly what to do next and which MCP tool to call (REST path in brackets).","isRequired":true,"uniqueKey":"next_step","typeLabel":"string"},"agreed_rate":{"type":"number","description":"Once an offer is accepted: its rate (what was booked at).","uniqueKey":"agreed_rate","typeLabel":"number"},"max_rate":{"type":"number","uniqueKey":"max_rate","typeLabel":"number"},"status_reason":{"type":"string","description":"Why, when the status alone would mislead. Set for `stalled`.","example":"No carrier has been contacted 15 minutes after posting. Sourcing may not be switched on for this brokerage; contact Lanesurf.","uniqueKey":"status_reason","typeLabel":"string"},"covered_by":{"type":"string","enum":["lanesurf","rep"],"description":"`lanesurf`: the rep accepted an offer here. `rep`: the rep marked it covered elsewhere.","uniqueKey":"covered_by","typeLabel":"enum\u003cstring>"},"winner":{"type":"object","description":"The accepted offer, once there is one.","required":["session_id","rate"],"properties":{"session_id":{"type":"string","format":"uuid","description":"Use it to accept or decline.","isRequired":true,"uniqueKey":"winner.session_id","typeLabel":"string\u003cuuid>"},"rate":{"type":"number","description":"The carrier's rate (always above 0).","isRequired":true,"uniqueKey":"winner.rate","typeLabel":"number"},"channel":{"type":"string","description":"How the carrier was reached, e.g. `email` or `call`.","example":"email","uniqueKey":"winner.channel","typeLabel":"string"},"status":{"type":"string","description":"Lanesurf's raw outreach status for this carrier, as on the broker's board. Show it, don't branch\non it. Examples: `NEGOTIATION_LOGGED | WITHIN_RANGE`, `NEGOTIATION_LOGGED | OUT_OF_RANGE`,\n`BID_LOGGED | WE_ASKED_FIRST`.\n","example":"NEGOTIATION_LOGGED | WITHIN_RANGE","uniqueKey":"winner.status","typeLabel":"string"},"carrier_name":{"type":"string","uniqueKey":"winner.carrier_name","typeLabel":"string"},"carrier_mc":{"type":"string","uniqueKey":"winner.carrier_mc","typeLabel":"string"},"carrier_dot":{"type":"string","uniqueKey":"winner.carrier_dot","typeLabel":"string"},"contact":{"type":"string","description":"The carrier's email, or phone if there's no email.","uniqueKey":"winner.contact","typeLabel":"string"},"contact_email":{"type":"string","description":"The carrier's email, when known.","uniqueKey":"winner.contact_email","typeLabel":"string"},"contact_phone":{"type":"string","description":"The carrier's phone, when known.","uniqueKey":"winner.contact_phone","typeLabel":"string"},"decision":{"type":"string","enum":["accepted","declined"],"description":"The rep's choice, if any.","uniqueKey":"winner.decision","typeLabel":"enum\u003cstring>"},"updated_at":{"type":"string","description":"When the carrier conversation started (ISO 8601).","uniqueKey":"winner.updated_at","typeLabel":"string"}},"uniqueKey":"winner","typeLabel":"object"},"post_with":{"type":"object","description":"The email and phone to put on the load wherever it is advertised, so carrier replies reach Lanesurf. Only set when Lanesurf has set a posting email and phone for the key; keys made by signing in from an AI app don't have one yet.","properties":{"email":{"type":"string","format":"email","uniqueKey":"post_with.email","typeLabel":"string\u003cemail>"},"phone":{"type":"string","uniqueKey":"post_with.phone","typeLabel":"string"}},"uniqueKey":"post_with","typeLabel":"object"},"load":{"type":"object","description":"What was posted, as stored. On `GET /v1/loads/{id}` and every change (edit, pause, resume, reopen, delete, accept, decline, covered).","required":["origins","destinations"],"properties":{"origins":{"type":"array","items":{"type":"any","uniqueKey":"load.origins.items.[INDEX]","typeLabel":"any"},"isRequired":true,"uniqueKey":"load.origins","typeLabel":"any[]"},"destinations":{"type":"array","items":{"type":"any","uniqueKey":"load.destinations.items.[INDEX]","typeLabel":"any"},"isRequired":true,"uniqueKey":"load.destinations","typeLabel":"any[]"},"reference_number":{"type":"string","uniqueKey":"load.reference_number","typeLabel":"string"},"equipment_type":{"type":"string","uniqueKey":"load.equipment_type","typeLabel":"string"},"driver_requirements":{"type":"string","enum":["team"],"uniqueKey":"load.driver_requirements","typeLabel":"enum\u003cstring>"},"weight_lbs":{"type":"integer","uniqueKey":"load.weight_lbs","typeLabel":"integer"},"commodity":{"type":"string","uniqueKey":"load.commodity","typeLabel":"string"},"rate_min":{"type":"number","description":"The posted rate.","uniqueKey":"load.rate_min","typeLabel":"number"},"rate_max":{"type":"number","uniqueKey":"load.rate_max","typeLabel":"number"},"currency":{"type":"string","uniqueKey":"load.currency","typeLabel":"string"},"explicit_special_instructions":{"type":"string","uniqueKey":"load.explicit_special_instructions","typeLabel":"string"}},"uniqueKey":"load","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"load_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","status":"sourcing","offers":[{"session_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","rate":123,"channel":"email","status":"NEGOTIATION_LOGGED | WITHIN_RANGE","carrier_name":"\u003cstring>","carrier_mc":"\u003cstring>","carrier_dot":"\u003cstring>","contact":"\u003cstring>","contact_email":"\u003cstring>","contact_phone":"\u003cstring>","decision":"accepted","updated_at":"\u003cstring>"}],"outreach":{"sessions":123,"bids":123},"next_step":"\u003cstring>","agreed_rate":123,"max_rate":123,"status_reason":"No carrier has been contacted 15 minutes after posting. Sourcing may not be switched on for this brokerage; contact Lanesurf.","covered_by":"lanesurf","winner":{"session_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","rate":123,"channel":"email","status":"NEGOTIATION_LOGGED | WITHIN_RANGE","carrier_name":"\u003cstring>","carrier_mc":"\u003cstring>","carrier_dot":"\u003cstring>","contact":"\u003cstring>","contact_email":"\u003cstring>","contact_phone":"\u003cstring>","decision":"accepted","updated_at":"\u003cstring>"},"post_with":{"email":"jsmith@example.com","phone":"\u003cstring>"},"load":{"origins":["\u003cunknown>"],"destinations":["\u003cunknown>"],"reference_number":"\u003cstring>","equipment_type":"\u003cstring>","driver_requirements":"team","weight_lbs":123,"commodity":"\u003cstring>","rate_min":123,"rate_max":123,"currency":"\u003cstring>","explicit_special_instructions":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"df3bfdcc-d673-4a1e-b2c1-ee7ce31d06c1":{"description":"`invalid_request`: the request is malformed or a value is invalid. The message says which. Don't retry unchanged.","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string","description":"A message for people.","example":"invalid API key","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine-readable code. Branch on this, not on `error`.","enum":["missing_api_key","invalid_api_key","wrong_role","verification_required","invalid_request","missing_fields","not_found","already_covered","invalid_state","already_bid","bid_decided","idempotency_in_progress","idempotency_key_reused","idempotency_key_required","load_rejected","offer_changed","bid_update_limit","existing_customer","already_redeemed","rate_limited","invalid_code","signup_expired","broker_name_taken","broker_name_mismatch","unavailable","upstream_error","internal"],"example":"invalid_api_key","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"missing":{"type":"array","description":"`missing_fields` only: exact field names or paths still needed.","items":{"type":"string","uniqueKey":"missing.items.[INDEX]","typeLabel":"string"},"uniqueKey":"missing","typeLabel":"string[]"},"next_step":{"type":"string","description":"On signup errors and on every broker load tool's errors (`list_loads`, `post_load`, `get_load`, `load_outreach`, accept, decline, covered).","uniqueKey":"next_step","typeLabel":"string"},"current_rate":{"type":"number","description":"`offer_changed` only: the offer's rate now.","uniqueKey":"current_rate","typeLabel":"number"},"request_id":{"type":"string","description":"This request's id (also the `X-Request-Id` response header). Quote it to Lanesurf support.","example":"req_0192f3a4-7b1c-7d2e-9f00-1a2b3c4d5e6f","uniqueKey":"request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid API key","code":"invalid_api_key","missing":["\u003cstring>"],"next_step":"\u003cstring>","current_rate":123,"request_id":"req_0192f3a4-7b1c-7d2e-9f00-1a2b3c4d5e6f"}}},"exampleType":"generated"}},"exampleType":"generated"},"3555250b-47a0-4903-934c-3b4aacdda4f0":{"description":"`missing_api_key` (no `Authorization` header) or `invalid_api_key` (wrong, malformed or revoked key).","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string","description":"A message for people.","example":"invalid API key","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine-readable code. Branch on this, not on `error`.","enum":["missing_api_key","invalid_api_key","wrong_role","verification_required","invalid_request","missing_fields","not_found","already_covered","invalid_state","already_bid","bid_decided","idempotency_in_progress","idempotency_key_reused","idempotency_key_required","load_rejected","offer_changed","bid_update_limit","existing_customer","already_redeemed","rate_limited","invalid_code","signup_expired","broker_name_taken","broker_name_mismatch","unavailable","upstream_error","internal"],"example":"invalid_api_key","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"missing":{"type":"array","description":"`missing_fields` only: exact field names or paths still needed.","items":{"type":"string","uniqueKey":"missing.items.[INDEX]","typeLabel":"string"},"uniqueKey":"missing","typeLabel":"string[]"},"next_step":{"type":"string","description":"On signup errors and on every broker load tool's errors (`list_loads`, `post_load`, `get_load`, `load_outreach`, accept, decline, covered).","uniqueKey":"next_step","typeLabel":"string"},"current_rate":{"type":"number","description":"`offer_changed` only: the offer's rate now.","uniqueKey":"current_rate","typeLabel":"number"},"request_id":{"type":"string","description":"This request's id (also the `X-Request-Id` response header). Quote it to Lanesurf support.","example":"req_0192f3a4-7b1c-7d2e-9f00-1a2b3c4d5e6f","uniqueKey":"request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"invalid API key","code":"invalid_api_key"},"examples":{"Example":{"title":"Example","value":{"error":"invalid API key","code":"invalid_api_key"}}},"exampleType":"examples"}},"exampleType":"examples"},"79e88208-6b64-4042-8673-9c1aa5f7908d":{"description":"`wrong_role`: this key's role can't use this route (a carrier key on a broker route, or the reverse).","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string","description":"A message for people.","example":"invalid API key","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine-readable code. Branch on this, not on `error`.","enum":["missing_api_key","invalid_api_key","wrong_role","verification_required","invalid_request","missing_fields","not_found","already_covered","invalid_state","already_bid","bid_decided","idempotency_in_progress","idempotency_key_reused","idempotency_key_required","load_rejected","offer_changed","bid_update_limit","existing_customer","already_redeemed","rate_limited","invalid_code","signup_expired","broker_name_taken","broker_name_mismatch","unavailable","upstream_error","internal"],"example":"invalid_api_key","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"missing":{"type":"array","description":"`missing_fields` only: exact field names or paths still needed.","items":{"type":"string","uniqueKey":"missing.items.[INDEX]","typeLabel":"string"},"uniqueKey":"missing","typeLabel":"string[]"},"next_step":{"type":"string","description":"On signup errors and on every broker load tool's errors (`list_loads`, `post_load`, `get_load`, `load_outreach`, accept, decline, covered).","uniqueKey":"next_step","typeLabel":"string"},"current_rate":{"type":"number","description":"`offer_changed` only: the offer's rate now.","uniqueKey":"current_rate","typeLabel":"number"},"request_id":{"type":"string","description":"This request's id (also the `X-Request-Id` response header). Quote it to Lanesurf support.","example":"req_0192f3a4-7b1c-7d2e-9f00-1a2b3c4d5e6f","uniqueKey":"request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"this API key can't use broker routes","code":"wrong_role"},"examples":{"Example":{"title":"Example","value":{"error":"this API key can't use broker routes","code":"wrong_role"}}},"exampleType":"examples"}},"exampleType":"examples"},"440db855-a0c2-48af-aa25-5a1da7a08083":{"description":"`not_found`: no such load, offer, truck, lane or signup for this key.","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string","description":"A message for people.","example":"invalid API key","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine-readable code. Branch on this, not on `error`.","enum":["missing_api_key","invalid_api_key","wrong_role","verification_required","invalid_request","missing_fields","not_found","already_covered","invalid_state","already_bid","bid_decided","idempotency_in_progress","idempotency_key_reused","idempotency_key_required","load_rejected","offer_changed","bid_update_limit","existing_customer","already_redeemed","rate_limited","invalid_code","signup_expired","broker_name_taken","broker_name_mismatch","unavailable","upstream_error","internal"],"example":"invalid_api_key","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"missing":{"type":"array","description":"`missing_fields` only: exact field names or paths still needed.","items":{"type":"string","uniqueKey":"missing.items.[INDEX]","typeLabel":"string"},"uniqueKey":"missing","typeLabel":"string[]"},"next_step":{"type":"string","description":"On signup errors and on every broker load tool's errors (`list_loads`, `post_load`, `get_load`, `load_outreach`, accept, decline, covered).","uniqueKey":"next_step","typeLabel":"string"},"current_rate":{"type":"number","description":"`offer_changed` only: the offer's rate now.","uniqueKey":"current_rate","typeLabel":"number"},"request_id":{"type":"string","description":"This request's id (also the `X-Request-Id` response header). Quote it to Lanesurf support.","example":"req_0192f3a4-7b1c-7d2e-9f00-1a2b3c4d5e6f","uniqueKey":"request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid API key","code":"invalid_api_key","missing":["\u003cstring>"],"next_step":"\u003cstring>","current_rate":123,"request_id":"req_0192f3a4-7b1c-7d2e-9f00-1a2b3c4d5e6f"}}},"exampleType":"generated"}},"exampleType":"generated"},"656494ad-8043-41ce-a7f8-6ee09e2a4dfa":{"description":"`already_covered`: the load can't take this decision. Another offer was already accepted, the load was\nmarked covered, or it was deleted. A load can't be both accepted and marked covered. Read the load again.\n","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string","description":"A message for people.","example":"invalid API key","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine-readable code. Branch on this, not on `error`.","enum":["missing_api_key","invalid_api_key","wrong_role","verification_required","invalid_request","missing_fields","not_found","already_covered","invalid_state","already_bid","bid_decided","idempotency_in_progress","idempotency_key_reused","idempotency_key_required","load_rejected","offer_changed","bid_update_limit","existing_customer","already_redeemed","rate_limited","invalid_code","signup_expired","broker_name_taken","broker_name_mismatch","unavailable","upstream_error","internal"],"example":"invalid_api_key","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"missing":{"type":"array","description":"`missing_fields` only: exact field names or paths still needed.","items":{"type":"string","uniqueKey":"missing.items.[INDEX]","typeLabel":"string"},"uniqueKey":"missing","typeLabel":"string[]"},"next_step":{"type":"string","description":"On signup errors and on every broker load tool's errors (`list_loads`, `post_load`, `get_load`, `load_outreach`, accept, decline, covered).","uniqueKey":"next_step","typeLabel":"string"},"current_rate":{"type":"number","description":"`offer_changed` only: the offer's rate now.","uniqueKey":"current_rate","typeLabel":"number"},"request_id":{"type":"string","description":"This request's id (also the `X-Request-Id` response header). Quote it to Lanesurf support.","example":"req_0192f3a4-7b1c-7d2e-9f00-1a2b3c4d5e6f","uniqueKey":"request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"an offer on this load is already accepted","code":"already_covered"},"examples":{"Example":{"title":"Example","value":{"error":"an offer on this load is already accepted","code":"already_covered"}}},"exampleType":"examples"}},"exampleType":"examples"},"696c05ae-b861-4d44-b084-0db77c41227e":{"description":"`rate_limited`: too many requests. Signup has limits per contact, per carrier and per IP (the 300 per 10 minutes\nlimit groups IPv6 addresses by /64). Every authenticated `/v1` route is limited to 120 requests per minute\nper API key, counted on each Lanesurf server. Wait `Retry-After`\nseconds, then retry.\n","headers":{"Retry-After":{"description":"Seconds to wait before trying again.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string","description":"A message for people.","example":"invalid API key","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine-readable code. Branch on this, not on `error`.","enum":["missing_api_key","invalid_api_key","wrong_role","verification_required","invalid_request","missing_fields","not_found","already_covered","invalid_state","already_bid","bid_decided","idempotency_in_progress","idempotency_key_reused","idempotency_key_required","load_rejected","offer_changed","bid_update_limit","existing_customer","already_redeemed","rate_limited","invalid_code","signup_expired","broker_name_taken","broker_name_mismatch","unavailable","upstream_error","internal"],"example":"invalid_api_key","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"missing":{"type":"array","description":"`missing_fields` only: exact field names or paths still needed.","items":{"type":"string","uniqueKey":"missing.items.[INDEX]","typeLabel":"string"},"uniqueKey":"missing","typeLabel":"string[]"},"next_step":{"type":"string","description":"On signup errors and on every broker load tool's errors (`list_loads`, `post_load`, `get_load`, `load_outreach`, accept, decline, covered).","uniqueKey":"next_step","typeLabel":"string"},"current_rate":{"type":"number","description":"`offer_changed` only: the offer's rate now.","uniqueKey":"current_rate","typeLabel":"number"},"request_id":{"type":"string","description":"This request's id (also the `X-Request-Id` response header). Quote it to Lanesurf support.","example":"req_0192f3a4-7b1c-7d2e-9f00-1a2b3c4d5e6f","uniqueKey":"request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"too many requests for this API key; slow down","code":"rate_limited"},"examples":{"Example":{"title":"Example","value":{"error":"too many requests for this API key; slow down","code":"rate_limited"}}},"exampleType":"examples"}},"exampleType":"examples"},"331e8b97-a1db-4ad7-9f33-7bc1868fce20":{"description":"`internal`: unexpected error. Safe to retry later.","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string","description":"A message for people.","example":"invalid API key","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine-readable code. Branch on this, not on `error`.","enum":["missing_api_key","invalid_api_key","wrong_role","verification_required","invalid_request","missing_fields","not_found","already_covered","invalid_state","already_bid","bid_decided","idempotency_in_progress","idempotency_key_reused","idempotency_key_required","load_rejected","offer_changed","bid_update_limit","existing_customer","already_redeemed","rate_limited","invalid_code","signup_expired","broker_name_taken","broker_name_mismatch","unavailable","upstream_error","internal"],"example":"invalid_api_key","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"missing":{"type":"array","description":"`missing_fields` only: exact field names or paths still needed.","items":{"type":"string","uniqueKey":"missing.items.[INDEX]","typeLabel":"string"},"uniqueKey":"missing","typeLabel":"string[]"},"next_step":{"type":"string","description":"On signup errors and on every broker load tool's errors (`list_loads`, `post_load`, `get_load`, `load_outreach`, accept, decline, covered).","uniqueKey":"next_step","typeLabel":"string"},"current_rate":{"type":"number","description":"`offer_changed` only: the offer's rate now.","uniqueKey":"current_rate","typeLabel":"number"},"request_id":{"type":"string","description":"This request's id (also the `X-Request-Id` response header). Quote it to Lanesurf support.","example":"req_0192f3a4-7b1c-7d2e-9f00-1a2b3c4d5e6f","uniqueKey":"request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid API key","code":"invalid_api_key","missing":["\u003cstring>"],"next_step":"\u003cstring>","current_rate":123,"request_id":"req_0192f3a4-7b1c-7d2e-9f00-1a2b3c4d5e6f"}}},"exampleType":"generated"}},"exampleType":"generated"},"6c00168c-b3de-48c2-baaf-21214491299e":{"description":"`upstream_error`: a Lanesurf system behind the API failed. Safe to retry later.","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string","description":"A message for people.","example":"invalid API key","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine-readable code. Branch on this, not on `error`.","enum":["missing_api_key","invalid_api_key","wrong_role","verification_required","invalid_request","missing_fields","not_found","already_covered","invalid_state","already_bid","bid_decided","idempotency_in_progress","idempotency_key_reused","idempotency_key_required","load_rejected","offer_changed","bid_update_limit","existing_customer","already_redeemed","rate_limited","invalid_code","signup_expired","broker_name_taken","broker_name_mismatch","unavailable","upstream_error","internal"],"example":"invalid_api_key","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"missing":{"type":"array","description":"`missing_fields` only: exact field names or paths still needed.","items":{"type":"string","uniqueKey":"missing.items.[INDEX]","typeLabel":"string"},"uniqueKey":"missing","typeLabel":"string[]"},"next_step":{"type":"string","description":"On signup errors and on every broker load tool's errors (`list_loads`, `post_load`, `get_load`, `load_outreach`, accept, decline, covered).","uniqueKey":"next_step","typeLabel":"string"},"current_rate":{"type":"number","description":"`offer_changed` only: the offer's rate now.","uniqueKey":"current_rate","typeLabel":"number"},"request_id":{"type":"string","description":"This request's id (also the `X-Request-Id` response header). Quote it to Lanesurf support.","example":"req_0192f3a4-7b1c-7d2e-9f00-1a2b3c4d5e6f","uniqueKey":"request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"a Lanesurf system behind the API failed; try again later","code":"upstream_error"},"examples":{"Example":{"title":"Example","value":{"error":"a Lanesurf system behind the API failed; try again later","code":"upstream_error"}}},"exampleType":"examples"}},"exampleType":"examples"},"5e956edb-d51a-4265-86f6-b3c1e5a3393e":{"description":"`unavailable`: Lanesurf couldn't check the API key right now (the key may be fine; don't ask for a new one): wait `Retry-After` (30) seconds and send the same request again.","headers":{"Retry-After":{"description":"Seconds to wait before trying again.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string","description":"A message for people.","example":"invalid API key","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine-readable code. Branch on this, not on `error`.","enum":["missing_api_key","invalid_api_key","wrong_role","verification_required","invalid_request","missing_fields","not_found","already_covered","invalid_state","already_bid","bid_decided","idempotency_in_progress","idempotency_key_reused","idempotency_key_required","load_rejected","offer_changed","bid_update_limit","existing_customer","already_redeemed","rate_limited","invalid_code","signup_expired","broker_name_taken","broker_name_mismatch","unavailable","upstream_error","internal"],"example":"invalid_api_key","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"missing":{"type":"array","description":"`missing_fields` only: exact field names or paths still needed.","items":{"type":"string","uniqueKey":"missing.items.[INDEX]","typeLabel":"string"},"uniqueKey":"missing","typeLabel":"string[]"},"next_step":{"type":"string","description":"On signup errors and on every broker load tool's errors (`list_loads`, `post_load`, `get_load`, `load_outreach`, accept, decline, covered).","uniqueKey":"next_step","typeLabel":"string"},"current_rate":{"type":"number","description":"`offer_changed` only: the offer's rate now.","uniqueKey":"current_rate","typeLabel":"number"},"request_id":{"type":"string","description":"This request's id (also the `X-Request-Id` response header). Quote it to Lanesurf support.","example":"req_0192f3a4-7b1c-7d2e-9f00-1a2b3c4d5e6f","uniqueKey":"request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid API key","code":"invalid_api_key","missing":["\u003cstring>"],"next_step":"\u003cstring>","current_rate":123,"request_id":"req_0192f3a4-7b1c-7d2e-9f00-1a2b3c4d5e6f"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"6035daa8-0518-463a-af69-0d34b5a6d06e":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"ls_live_\u003ckey>","description":"One key per broker rep or per carrier signup. Keep it secret.","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"23a3a396-6c85-4043-970f-44c0c809dd8e":{"url":"https://agent.lanesurf.com","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"ls_live_\u003ckey>","description":"One key per broker rep or per carrier signup. Keep it secret.","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"One key per broker rep or per carrier signup. Keep it secret.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"openapi.yaml"},"subdomain":"lanesurf-d98c59ed","siteName":"Lanesurf Agent API","title":"Accept an offer - Lanesurf Agent API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-31T16:24:09.652Z","originalFileLocation":"api-reference/broker-loads/accept-a-carriers-offer.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Pick this carrier. Lanesurf stops looking.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Lanesurf Agent API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/lanesurf-d98c59ed/aDfoxgMnpA3AXS2W/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/lanesurf-d98c59ed/aDfoxgMnpA3AXS2W/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/lanesurf-d98c59ed/aDfoxgMnpA3AXS2W/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/lanesurf-d98c59ed/aDfoxgMnpA3AXS2W/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/lanesurf-d98c59ed/aDfoxgMnpA3AXS2W/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/lanesurf-d98c59ed/aDfoxgMnpA3AXS2W/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/lanesurf-d98c59ed/aDfoxgMnpA3AXS2W/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/lanesurf-d98c59ed/aDfoxgMnpA3AXS2W/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/lanesurf-d98c59ed/aDfoxgMnpA3AXS2W/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Accept an offer - Lanesurf Agent API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Pick this carrier. Lanesurf stops looking.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Lanesurf Agent API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.lanesurf.com/api-reference/broker-loads/accept-a-carriers-offer\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://lanesurf-d98c59ed.mintlify.app/_mintlify/api/og/v2?division=Loads+API\u0026amp;title=Accept+an+offer\u0026amp;description=Pick+this+carrier.+Lanesurf+stops+looking.\u0026amp;theme=0b87e052751a04850cc4f191\u0026amp;signature=1d100927c9b1de48cefb27797fb59ccf349d6f3fb66bae17b8323f3ea2b2ad3f\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Accept an offer - Lanesurf Agent API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Pick this carrier. Lanesurf stops looking.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://lanesurf-d98c59ed.mintlify.app/_mintlify/api/og/v2?division=Loads+API\u0026amp;title=Accept+an+offer\u0026amp;description=Pick+this+carrier.+Lanesurf+stops+looking.\u0026amp;theme=0b87e052751a04850cc4f191\u0026amp;signature=1d100927c9b1de48cefb27797fb59ccf349d6f3fb66bae17b8323f3ea2b2ad3f\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/lanesurf-d98c59ed/aDfoxgMnpA3AXS2W/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Lanesurf Agent API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2563EB\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.lanesurf.com/api-reference/broker-loads/accept-a-carriers-offer\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/broker-loads/accept-a-carriers-offer.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.lanesurf.com/#organization\",\"name\":\"Lanesurf Agent API\",\"url\":\"https://docs.lanesurf.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/lanesurf-d98c59ed/XupxBXiERw20rl0s/logo/light.svg?fit=max\u0026auto=format\u0026n=XupxBXiERw20rl0s\u0026q=85\u0026s=e7e783e919601573a03ed1dcf02233f8\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.lanesurf.com#website\",\"name\":\"Lanesurf Agent API\",\"url\":\"https://docs.lanesurf.com\",\"publisher\":{\"@id\":\"https://docs.lanesurf.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.lanesurf.com/api-reference/broker-loads/accept-a-carriers-offer#webpage\",\"url\":\"https://docs.lanesurf.com/api-reference/broker-loads/accept-a-carriers-offer\",\"name\":\"Accept an offer\",\"description\":\"Pick this carrier. Lanesurf stops looking.\",\"dateModified\":\"2026-10-31T16:24:09.652Z\",\"isPartOf\":{\"@id\":\"https://docs.lanesurf.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.lanesurf.com/api-reference/broker-loads/accept-a-carriers-offer#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.lanesurf.com/api-reference/broker-loads/accept-a-carriers-offer#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Loads API\",\"item\":\"https://docs.lanesurf.com/api-reference/broker-loads/list-your-loads\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Accept an offer\",\"item\":\"https://docs.lanesurf.com/api-reference/broker-loads/accept-a-carriers-offer\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.lanesurf.com/api-reference/broker-loads/accept-a-carriers-offer#apireference\",\"headline\":\"Accept an offer\",\"name\":\"Accept an offer\",\"description\":\"Pick this carrier. Lanesurf stops looking.\",\"url\":\"https://docs.lanesurf.com/api-reference/broker-loads/accept-a-carriers-offer\",\"mainEntityOfPage\":{\"@id\":\"https://docs.lanesurf.com/api-reference/broker-loads/accept-a-carriers-offer#webpage\"},\"dateModified\":\"2026-10-31T16:24:09.652Z\",\"publisher\":{\"@id\":\"https://docs.lanesurf.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.lanesurf.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Lanesurf Agent API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Lanesurf Agent API","nav":{"global":null,"tabs":[{"tab":"Get started","icon":"rocket","pages":[{"title":"Get started","href":""}]},{"tab":"Brokers","icon":"truck-fast","groups":[{"group":"Guides","pages":[{"title":"Sign up your brokerage","icon":"key","href":"/brokers/get-a-key"},{"title":"Cover a load","icon":"truck-fast","href":"/brokers/cover-a-load"},{"title":"Load status and offers","sidebarTitle":"Status and offers","icon":"list-check","href":"/brokers/load-status"},{"title":"Manage a load","sidebarTitle":"Manage a load","icon":"pen-to-square","href":"/brokers/manage-a-load"}]},{"group":"Sign-up and setup API","pages":[{"title":"Start signup","deprecated":null,"version":null,"sidebarTitle":"Start signup","openapi":"/openapi.yaml post /v1/signup","href":"/api-reference/authentication/start-signup-carrier-or-broker"},{"title":"Verify the code","deprecated":null,"version":null,"sidebarTitle":"Verify the code","openapi":"/openapi.yaml post /v1/signup/{signup_id}/verify","href":"/api-reference/authentication/finish-signup-with-the-code"},{"title":"Get brokerage setup","deprecated":null,"version":null,"sidebarTitle":"Get setup","openapi":"/openapi.yaml get /v1/broker/setup","href":"/api-reference/broker-setup/your-brokerages-setup"},{"title":"Update brokerage setup","deprecated":null,"version":null,"sidebarTitle":"Update setup","openapi":"/openapi.yaml patch /v1/broker/setup","href":"/api-reference/broker-setup/change-your-brokerages-setup"},{"title":"Who am I","deprecated":null,"version":null,"sidebarTitle":"Who am I","openapi":"/openapi.yaml get /v1/me","href":"/api-reference/authentication/who-this-key-belongs-to"}]},{"group":"Loads API","pages":[{"title":"List your loads","deprecated":null,"version":null,"sidebarTitle":"List your loads","openapi":"/openapi.yaml get /v1/loads","href":"/api-reference/broker-loads/list-your-loads"},{"title":"Post a load","deprecated":null,"version":null,"sidebarTitle":"Post a load","openapi":"/openapi.yaml post /v1/loads","href":"/api-reference/broker-loads/post-a-load"},{"title":"Get load status","deprecated":null,"version":null,"sidebarTitle":"Get load status","openapi":"/openapi.yaml get /v1/loads/{id}","href":"/api-reference/broker-loads/load-status-and-carrier-offers"},{"title":"Edit a load","deprecated":null,"version":null,"sidebarTitle":"Edit load","openapi":"/openapi.yaml patch /v1/loads/{id}","href":"/api-reference/broker-loads/edit-a-load"},{"title":"Delete a load","deprecated":null,"version":null,"sidebarTitle":"Delete load","openapi":"/openapi.yaml delete /v1/loads/{id}","href":"/api-reference/broker-loads/delete-a-load"},{"title":"Load outreach","description":"Every carrier on a load, as the dashboard lists them.","deprecated":null,"version":null,"sidebarTitle":"Load outreach","openapi":"/openapi.yaml get /v1/loads/{id}/outreach","href":"/api-reference/broker-loads/who-was-contacted-on-a-load"},{"title":"Accept an offer","deprecated":null,"version":null,"sidebarTitle":"Accept an offer","openapi":"/openapi.yaml post /v1/loads/{id}/offers/{session_id}/accept","href":"/api-reference/broker-loads/accept-a-carriers-offer"},{"title":"Decline an offer","description":"Record that the rep passes on this offer.","deprecated":null,"version":null,"sidebarTitle":"Decline an offer","openapi":"/openapi.yaml post /v1/loads/{id}/offers/{session_id}/decline","href":"/api-reference/broker-loads/decline-a-carriers-offer"},{"title":"Mark covered","deprecated":null,"version":null,"sidebarTitle":"Mark covered","openapi":"/openapi.yaml post /v1/loads/{id}/covered","href":"/api-reference/broker-loads/mark-the-load-covered-elsewhere"},{"title":"Pause a load","deprecated":null,"version":null,"sidebarTitle":"Pause load","openapi":"/openapi.yaml post /v1/loads/{id}/pause","href":"/api-reference/broker-loads/pause-a-load"},{"title":"Resume a load","deprecated":null,"version":null,"sidebarTitle":"Resume load","openapi":"/openapi.yaml post /v1/loads/{id}/resume","href":"/api-reference/broker-loads/resume-a-load"},{"title":"Reopen a covered load","deprecated":null,"version":null,"sidebarTitle":"Reopen load","openapi":"/openapi.yaml post /v1/loads/{id}/reopen","href":"/api-reference/broker-loads/reopen-a-covered-load"}]}]},{"tab":"Carriers","icon":"truck","pages":[{"title":"Carriers","href":"/carriers/sign-up"}]},{"tab":"Reference","icon":"book","pages":[{"title":"Reference","href":"/api-reference"}]}]},"basePath":"","title":"Accept an offer - Lanesurf Agent API","buildId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","deploymentId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-B7XKH4J3.js","utils-lOYzL7z-.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DF6jUUIM.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dpsj5f7C.js","snippetPresets-CYeiDe8v.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CUFz1YZ_.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-D8H_iLS4.js","shallow-DdluZBHX.js","getApiPlaygroundDisplay-B9922vev.js","CodeSnippet-CMoRNGYs.js","CodeSnippets-DwyrPHuw.js","Page-DSVu9Ucl.js","getPastedJson-G-zIvlHh.js","icon-B03fnEy0.js","MethodPill-CW7teklc.js","DuplicateIcon-CtO8eekd.js","createIcon-DZTKdM_A.js","DynamicMarkdown-D5M2At0B.js","SectionHeading-C_2NaA2U.js","axios-vUo_bRtp.js","Markdown-D7QRHV3m.js","clsx-D1Z-ELXV.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-lvhuD9Du.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-CKfC4ywL.js"]}