{"items":[{"type":"link","label":"Member Discovery API v2","link":"/member-discovery/openapi","routeSlug":"/member-discovery/openapi","content":{"contentType":"overview","meta":{"name":"Member Discovery API v2"},"children":[{"nodeType":"container","panels":[{"title":"Download OpenAPI description","titleTranslationKey":"download.description.title","children":[{"kind":"download","label":"openapi.json","url":"/_bundle/member-discovery/openapi.json?download"},{"kind":"download","label":"openapi.yaml","url":"/_bundle/member-discovery/openapi.yaml?download"}]},{"title":"Overview","titleTranslationKey":"info.title","children":[]},{"title":"Languages","titleTranslationKey":"languages.title","children":[{"kind":"languages","options":[{"key":"curl","title":"curl","lang":"curl"},{"key":"javascript","title":"JavaScript","lang":"JavaScript"},{"key":"node","title":"Node.js","lang":"Node.js"},{"key":"python","title":"Python","lang":"Python"},{"key":"java","title":"Java","lang":"Java"},{"key":"csharp","title":"C#","lang":"C#"},{"key":"php","title":"PHP","lang":"PHP"},{"key":"go","title":"Go","lang":"Go"},{"key":"ruby","title":"Ruby","lang":"Ruby"},{"key":"r","title":"R","lang":"R"},{"key":"payload","title":"Payload","lang":"Payload"}]}]},{"title":"Servers","titleTranslationKey":"servers.title","children":[{"kind":"servers","servers":[{"url":"/_mock/member-discovery/openapi","description":"Mock server","isMockServer":true},{"url":"https://azdevgateway.loadlink.ca/member-discovery","description":"Dev"}],"mode":"default"}]}],"children":[{"nodeType":"overview-section-wrapper","children":[{"nodeType":"header","level":1,"label":"Member Discovery API v2 (v2)","showPageActions":true},{"nodeType":"overview-section-wrapper","children":[{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Loadlink Member Discovery API — v2"},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Find carriers or brokers active on a lane, ranked by posting volume."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"New here?"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"/access"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Check your access →"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"All endpoints require a bearer token — call "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /v2/authorize"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"organization's integration email and org token to get one. Your Salesforce account"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"admin provisions the org token; it is shared across every sub-account in your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"organization."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Errors"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":": 400 responses follow RFC 9457 ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"ProblemDetails"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") with a structured"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"errors[]"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" array of "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{name, reason}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" pairs. 401 responses have no body."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"429 (rate limit exceeded) includes "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"X-RateLimit-*"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" headers and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Retry-After"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Example payloads"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":": every operation below has a sample request/response for"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"illustration only — cities, tokens, rates, etc. are made up. Substitute your own"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"valid values both in \"Try it\" and in real integration code; nothing about the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"example values themselves is required or enforced."},"children":[]}]}]}]}],"sectionId":"/member-discovery/openapi"}],"sectionId":"/member-discovery/openapi"}]}]}},{"type":"group","label":"Authorize","link":"/member-discovery/openapi/authorize","routeSlug":"/member-discovery/openapi/authorize","items":[{"label":"Exchange an org token for a bearer","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/member-discovery/openapi/authorize/authorize","routeSlug":"/member-discovery/openapi/authorize/authorize","metadata":{"seo":{"title":"Exchange an org token for a bearer","description":"Resolves the given email against your organization, validates the org-level integration token, and — if your organization has the Integration API feature provisioned — returns a bearer token to use as Authorization: Bearer <token> on every other endpoint. Tokens expire after 5 minutes; call this endpoint again to get a new one."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"Authorize","name":"Exchange an org token for a bearer","isWebhook":false,"pointer":"/paths/~1v2~1authorize/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Exchange an org token for a bearer","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Resolves the given email against your organization, validates the org-level integration token, and — if your organization has the Integration API feature provisioned — returns a bearer token to use as "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" on every other endpoint. Tokens expire after 5 minutes; call this endpoint again to get a new one."},"children":[]}]}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/AuthorizeRequest"}},"schemaId":"components/schemas/AuthorizeRequest","pointer":"/paths/~1v2~1authorize/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/v2/authorize","servers":[{"url":"/_mock/member-discovery/openapi","description":"Mock server","isMockServer":true},{"url":"https://azdevgateway.loadlink.ca/member-discovery","description":"Dev"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[],"requestBody":{"application/json":{"schemaId":"components/schemas/AuthorizeRequest"}},"responseCodes":["200","400","401","403","404","503"],"pointer":"/v2/authorize","href":"authorize/authorize","openApiOperationId":"Authorize","summary":"Exchange an org token for a bearer"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/member-discovery/openapi","description":"Mock server","isMockServer":true},{"url":"https://azdevgateway.loadlink.ca/member-discovery","description":"Dev"}],"schemaId":"components/schemas/AuthorizeRequest","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/AuthorizeRequest"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Bearer issued","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/AuthorizeResponse","exampleIds":["paths/~1v2~1authorize/post/responses/200/content/application~1json/example"]}},"schemaId":"components/schemas/AuthorizeResponse","exampleIds":["paths/~1v2~1authorize/post/responses/200/content/application~1json/example"]},{"code":"400","description":"Bad Request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"components/schemas/ProblemDetails"}},"schemaId":"components/schemas/ProblemDetails"},{"code":"401","description":"Org token does not match"},{"code":"403","description":"Account does not have the Integration API feature provisioned"},{"code":"404","description":"No user for that email, no account, or no org token provisioned yet"},{"code":"503","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Identity is temporarily unreachable — retry shortly"},"children":[]}]}]}]}],"pointer":"/paths/~1v2~1authorize/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"components/schemas/AuthorizeResponse","exampleIds":["paths/~1v2~1authorize/post/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/AuthorizeResponse","exampleIds":["paths/~1v2~1authorize/post/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"components/schemas/ProblemDetails","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"components/schemas/ProblemDetails"}}},{"code":"401"},{"code":"403"},{"code":"404"},{"code":"503"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/authorize/authorize"}],"panels":[]}]},"httpPath":"/v2/authorize"}],"content":{"contentType":"group","meta":{"name":"Authorize"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Authorize","showPageActions":true}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/v2/authorize","summary":"Exchange an org token for a bearer","prefix":{"name":"post","color":"post"},"badges":[],"link":"/authorize/authorize","deprecated":false}]}]}]}]}},{"type":"group","label":"Reference","link":"/member-discovery/openapi/reference","routeSlug":"/member-discovery/openapi/reference","items":[{"label":"Get all vehicle types","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/member-discovery/openapi/reference/getvehicletypes","routeSlug":"/member-discovery/openapi/reference/getvehicletypes","metadata":{"seo":{"title":"Get all vehicle types","description":"Get all vehicle types"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"GetVehicleTypes","name":"Get all vehicle types","isWebhook":false,"pointer":"/paths/~1v2~1reference~1vehicle-types/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Get all vehicle types","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"security","requirements":[{"schemes":[{"name":"OrgTokenBearer","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Bearer token from POST /v2/authorize — exchange your org token for one, then use it here."},"children":[]}]}]}]}]}]}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/v2/reference/vehicle-types","servers":[{"url":"/_mock/member-discovery/openapi","description":"Mock server","isMockServer":true},{"url":"https://azdevgateway.loadlink.ca/member-discovery","description":"Dev"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"OrgTokenBearer","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["200","204","401","403"],"pointer":"/v2/reference/vehicle-types","href":"reference/getvehicletypes","openApiOperationId":"GetVehicleTypes","summary":"Get all vehicle types"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/member-discovery/openapi","description":"Mock server","isMockServer":true},{"url":"https://azdevgateway.loadlink.ca/member-discovery","description":"Dev"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Vehicle types","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_25","exampleIds":["paths/~1v2~1reference~1vehicle-types/get/responses/200/content/application~1json/example"]}},"schemaId":"schema_25","exampleIds":["paths/~1v2~1reference~1vehicle-types/get/responses/200/content/application~1json/example"]},{"code":"204","description":"No types found"},{"code":"401","description":"Unauthorized"},{"code":"403","description":"Forbidden"}],"pointer":"/paths/~1v2~1reference~1vehicle-types/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_25","exampleIds":["paths/~1v2~1reference~1vehicle-types/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_25","exampleIds":["paths/~1v2~1reference~1vehicle-types/get/responses/200/content/application~1json/example"]}}},{"code":"204"},{"code":"401"},{"code":"403"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/reference/getvehicletypes"}],"panels":[]}]},"httpPath":"/v2/reference/vehicle-types"}],"content":{"contentType":"group","meta":{"name":"Reference"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Reference","showPageActions":true}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/v2/reference/vehicle-types","summary":"Get all vehicle types","prefix":{"name":"get","color":"get"},"badges":[],"link":"/reference/getvehicletypes","deprecated":false}]}]}]}]}},{"type":"group","label":"member-discovery","link":"/member-discovery/openapi/member-discovery","routeSlug":"/member-discovery/openapi/member-discovery","items":[{"label":"Find carriers or brokers active on a lane","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/member-discovery/openapi/member-discovery/freightmatchingapiendpointsmemberdiscoverypostmemberdiscoveryendpoint","routeSlug":"/member-discovery/openapi/member-discovery/freightmatchingapiendpointsmemberdiscoverypostmemberdiscoveryendpoint","metadata":{"seo":{"title":"Find carriers or brokers active on a lane","description":"Returns a ranked list of companies (the opposite role from RequestingRole) active on the given lane in the last TimeframeDays (max 365) days, ranked by posting volume. Both OriginCity/OriginProvince and DestinationCity/DestinationProvince are required."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"FreightMatchingApiEndpointsMemberDiscoveryPostMemberDiscoveryEndpoint","name":"Find carriers or brokers active on a lane","isWebhook":false,"pointer":"/paths/~1v2~1member-discovery/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Find carriers or brokers active on a lane","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":"Returns a ranked list of companies (the opposite role from RequestingRole) active on the given lane in the last TimeframeDays (max 365) days, ranked by posting volume. Both OriginCity/OriginProvince and DestinationCity/DestinationProvince are required."},{"nodeType":"security","requirements":[{"schemes":[{"name":"OrgTokenBearer","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Bearer token from POST /v2/authorize — exchange your org token for one, then use it here."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/MemberDiscoveryRequest"}},"schemaId":"components/schemas/MemberDiscoveryRequest","pointer":"/paths/~1v2~1member-discovery/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/v2/member-discovery","servers":[{"url":"/_mock/member-discovery/openapi","description":"Mock server","isMockServer":true},{"url":"https://azdevgateway.loadlink.ca/member-discovery","description":"Dev"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"OrgTokenBearer","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/MemberDiscoveryRequest"}},"responseCodes":["200","400","401","403"],"pointer":"/v2/member-discovery","href":"member-discovery/freightmatchingapiendpointsmemberdiscoverypostmemberdiscoveryendpoint","openApiOperationId":"FreightMatchingApiEndpointsMemberDiscoveryPostMemberDiscoveryEndpoint","summary":"Find carriers or brokers active on a lane"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/member-discovery/openapi","description":"Mock server","isMockServer":true},{"url":"https://azdevgateway.loadlink.ca/member-discovery","description":"Dev"}],"schemaId":"components/schemas/MemberDiscoveryRequest","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/MemberDiscoveryRequest"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Companies active on the lane (empty Items if none meet the threshold)","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/MemberDiscoveryResponse"}},"schemaId":"components/schemas/MemberDiscoveryResponse"},{"code":"400","description":"Missing/invalid input or city not found"},{"code":"401","description":"Unauthorized"},{"code":"403","description":"Forbidden"}],"pointer":"/paths/~1v2~1member-discovery/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"components/schemas/MemberDiscoveryResponse","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/MemberDiscoveryResponse"}}},{"code":"400"},{"code":"401"},{"code":"403"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/member-discovery/freightmatchingapiendpointsmemberdiscoverypostmemberdiscoveryendpoint"}],"panels":[]}]},"httpPath":"/v2/member-discovery"}],"content":{"contentType":"group","meta":{"name":"member-discovery"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"member-discovery","showPageActions":true}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/v2/member-discovery","summary":"Find carriers or brokers active on a lane","prefix":{"name":"post","color":"post"},"badges":[],"link":"/member-discovery/freightmatchingapiendpointsmemberdiscoverypostmemberdiscoveryendpoint","deprecated":false}]}]}]}]}}],"store":{"schemaStore":{"components/schemas/VehicleTypeResponse":{"id":"components/schemas/VehicleTypeResponse","kind":"json-schema","title":"VehicleTypeResponse","data":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"integer","description":"Unique row identifier for this vehicle type.","format":"int32"},"vehicleTypeId":{"type":"integer","description":"Broader category grouping several vehicle types together (e.g. Van, Straight Truck, and Container all share the same category).","format":"int32"},"detail":{"type":"string","description":"Human-readable name (e.g. \"Van\", \"Reefer\", \"Flatbed\")."},"value":{"type":"integer","description":"Bit-flag value for this vehicle type (a power of two). Postings encode their accepted vehicle types as a bitwise combination of these values.","format":"int64"},"code":{"type":"string","description":"Single-letter code for this vehicle type (e.g. \"V\" for Van, \"R\" for Reefer). This is the character used in a posting's VehicleType string."}}}},"components/schemas/MemberDiscoveryResponse":{"id":"components/schemas/MemberDiscoveryResponse","kind":"json-schema","title":"MemberDiscoveryResponse","data":{"type":"object","additionalProperties":false,"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/MemberDiscoveryResultResponse"}},"effectiveFromDate":{"type":"string","format":"date-time"},"effectiveToDate":{"type":"string","format":"date-time"},"effectiveMinimumActivityThreshold":{"type":"integer","format":"int32"}}}},"components/schemas/MemberDiscoveryResultResponse":{"id":"components/schemas/MemberDiscoveryResultResponse","kind":"json-schema","title":"MemberDiscoveryResultResponse","data":{"type":"object","additionalProperties":false,"properties":{"custCd":{"type":"string","nullable":true},"customerName":{"type":"string","nullable":true},"companyName":{"type":"string","nullable":true},"companyEmail":{"type":"string","nullable":true},"phoneNumber":{"type":"string","nullable":true},"extension":{"type":"string","nullable":true},"preferredEmail":{"type":"string","nullable":true},"street":{"type":"string","nullable":true},"city":{"type":"string","nullable":true},"province":{"type":"string","nullable":true},"postalCode":{"type":"string","nullable":true},"hoursOfOperation":{"type":"string","nullable":true},"durationWithLoadlink":{"type":"string","nullable":true},"dba":{"type":"string","nullable":true},"companyType":{"type":"string","nullable":true},"website":{"type":"string","nullable":true},"accountStatus":{"type":"string","nullable":true},"mcIccNumber":{"type":"integer","format":"int32","nullable":true},"usdotNumber":{"type":"integer","format":"int32","nullable":true},"ontarioCvor":{"type":"string","nullable":true},"pqNir":{"type":"string","nullable":true},"nscNumber":{"type":"string","nullable":true},"creditScoreBand":{"type":"string","nullable":true},"postingVolume":{"type":"integer","format":"int32"},"lastActiveDate":{"type":"string","format":"date-time"},"source":{"type":"string"}}}},"components/schemas/MemberDiscoveryRequest":{"id":"components/schemas/MemberDiscoveryRequest","kind":"json-schema","title":"MemberDiscoveryRequest","data":{"type":"object","additionalProperties":false,"required":["originCity","originProvince","destinationCity","destinationProvince"],"properties":{"requestingRole":{"type":"string"},"originCity":{"type":"string","maxLength":50,"minLength":0,"nullable":false},"originProvince":{"type":"string","maxLength":2,"minLength":2,"nullable":false},"originRadius":{"type":"integer","format":"int32","minimum":0},"destinationCity":{"type":"string","maxLength":50,"minLength":0,"nullable":false},"destinationProvince":{"type":"string","maxLength":2,"minLength":2,"nullable":false},"destinationRadius":{"type":"integer","format":"int32","minimum":0},"timeframeDays":{"type":"integer","format":"int32","maximum":365,"minimum":1},"truckLoadSize":{"type":"string"},"vehicleTypes":{"type":"string","nullable":true},"vehicleAttributes":{"type":"string","nullable":true},"minimumActivityThreshold":{"type":"integer","format":"int32","minimum":0},"source":{"type":"string"}}}},"components/schemas/AuthorizeResponse":{"id":"components/schemas/AuthorizeResponse","kind":"json-schema","title":"AuthorizeResponse","data":{"type":"object","additionalProperties":false,"properties":{"accessToken":{"type":"string"},"tokenType":{"type":"string"},"expiresIn":{"type":"integer","format":"int32"}}}},"components/schemas/AuthorizeRequest":{"id":"components/schemas/AuthorizeRequest","kind":"json-schema","title":"AuthorizeRequest","data":{"type":"object","example":{"email":"dispatch@example.com","orgToken":"ll_example-org-token"},"additionalProperties":false,"required":["email","orgToken"],"properties":{"email":{"type":"string","format":"email","minLength":1,"pattern":"^[^@]+@[^@]+$","nullable":false,"example":"dispatch@example.com"},"orgToken":{"type":"string","maxLength":100,"minLength":0,"nullable":false,"example":"ll_example-org-token"}}}},"components/schemas/ProblemDetails":{"id":"components/schemas/ProblemDetails","kind":"json-schema","title":"ProblemDetails","data":{"type":"object","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"RFC9457 compatible problem details/ error response class. this can be used by configuring startup like so:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"app.UseFastEndpoints(c => c.Errors.UseProblemDetails())"},"children":[]}]}]}],"additionalProperties":false,"properties":{"type":{"type":"string","default":"https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1"},"title":{"type":"string","default":"One or more validation errors occurred."},"status":{"type":"integer","format":"int32","default":400},"instance":{"type":"string","default":"/api/route"},"traceId":{"type":"string","default":"0HMPNHL0JHL76:00000001"},"detail":{"type":"string","description":"the details of the error","nullable":true},"errors":{"type":"array","items":{"$ref":"#/components/schemas/ProblemDetails_Error"}}}}},"components/schemas/ProblemDetails_Error":{"id":"components/schemas/ProblemDetails_Error","kind":"json-schema","title":"ProblemDetails_Error","data":{"type":"object","description":"the error details object","additionalProperties":false,"properties":{"name":{"type":"string","description":"the name of the error or property of the dto that caused the error","default":"Error or field name"},"reason":{"type":"string","description":"the reason for the error","default":"Error reason"},"code":{"type":"string","description":"the code of the error","nullable":true},"severity":{"type":"string","description":"the severity of the error","nullable":true}}}},"schema_25":{"kind":"json-schema","data":{"type":"array","items":{"$ref":"#/components/schemas/VehicleTypeResponse"}},"id":"schema_25"}},"exampleStore":{"paths/~1v2~1authorize/post/responses/200/content/application~1json/example":{"value":{"accessToken":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...","tokenType":"Bearer","expiresIn":300},"id":"paths/~1v2~1authorize/post/responses/200/content/application~1json/example"},"paths/~1v2~1reference~1vehicle-types/get/responses/200/content/application~1json/example":{"value":[{"id":1,"vehicleTypeId":1,"detail":"Van","value":1,"code":"V"},{"id":2,"vehicleTypeId":2,"detail":"Reefer","value":2,"code":"R"}],"id":"paths/~1v2~1reference~1vehicle-types/get/responses/200/content/application~1json/example"}},"securitySchemeStore":{"OrgTokenBearer":{"id":"OrgTokenBearer","type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Bearer token from POST /v2/authorize — exchange your org token for one, then use it here."},"children":[]}]}]}]}},"servers":[{"url":"/_mock/member-discovery/openapi","isMockServer":true,"description":"Mock server"},{"url":"https://azdevgateway.loadlink.ca/member-discovery","description":"Dev"}]},"options":{"hideSidebar":true,"mockServer":{"url":"/_mock/member-discovery/openapi","position":"first","description":"Mock server"},"disableRouter":true,"downloadUrls":[{"url":"/_bundle/member-discovery/openapi.json?download"},{"url":"/_bundle/member-discovery/openapi.yaml?download"}],"excludeFromSearch":false,"specType":"openapi","markdocOptions":{"tags":{},"nodes":{},"components":{}},"metadata":{"title":"Member Discovery API v2","description":"Loadlink Member Discovery API — v2\n\nFind carriers or brokers active on a lane, ranked by posting volume.\n\n**New here?** [Check your access →](/access)\n\nAll endpoints require a bearer token — call `POST /v2/authorize` with your\norganization's integration email and org token to get one. Your Salesforce account\nadmin provisions the org token; it is shared across every sub-account in your\norganization.\n\n**Errors**: 400 responses follow RFC 9457 (`ProblemDetails`) with a structured\n`errors[]` array of `{name, reason}` pairs. 401 responses have no body.\n429 (rate limit exceeded) includes `X-RateLimit-*` headers and `Retry-After`.\n\n**Example payloads**: every operation below has a sample request/response for\nillustration only — cities, tokens, rates, etc. are made up. Substitute your own\nvalid values both in \"Try it\" and in real integration code; nothing about the\nexample values themselves is required or enforced."}},"baseSlug":"/member-discovery/openapi","routesMapping":{}}