aid: spark-platform url: https://raw.githubusercontent.com/api-evangelist/spark-platform/refs/heads/main/apis.yml name: Spark Platform kind: company description: >- Spark Platform is the MLS data platform built by FBS, a 100% employee-owned company in Fargo, North Dakota that has served the US Multiple Listing Service industry for over 30 years and operates the Flexmls MLS system for more than 120 MLS organizations. Spark sits in the distribution layer of US residential real estate: it takes MLS content out of Flexmls and exposes it to third-party developers through two documented interfaces — the proprietary Spark API (https://sparkapi.com/v1, SparkQL filtering, listings, contacts, saved searches, market statistics, portals/VOW accounts) and a RESO Web API implementation at the /Reso/OData endpoint (https://replication.sparkapi.com/Version/3/Reso/OData/) serving Property, Member, Office, Media, OpenHouse, Room, Unit, GreenVerification, PowerProduction and Lookup resources against the RESO Data Dictionary. FBS is a RESO Certified technology provider (Unique Organization Identifier T00000052, status "Certified Current") and appears as the certifying provider on RESO Web API Core 2.0.0 and Data Dictionary 1.7 / 2.0 endorsements for 138 MLS organizations plus one commercial board in the public RESO organizations feed; FBS itself additionally holds RESO webhooks 1.0.0 and RESO Common Format 2.0 endorsements. The API posture must be stated honestly: the documentation is genuinely public and unusually complete, developer registration is a free public form, and the endpoints are live — but they are not open. Every probed data endpoint, including the OData $metadata document, returns HTTP 401 "Invalid API key and/or request signed improperly" anonymously. Real data requires a Developer Agreement with FBS, an MLS-approved data plan purchased through the Spark Datamart under an IDX, VOW or Private role, and a per-MLS fee. Certification here is real and verifiable; reachability is licensed. Home market is the United States. image: https://www.sparkapi.io/wp-content/uploads/2023/07/cropped-Spark_Pin_Favicon-192x192.png tags: - Real Estate - United States - MLS - RESO - Property Listings - IDX - PropTech - Listing Data Infrastructure - OData created: '2026-07-26' modified: '2026-07-26' specificationVersion: '0.19' apis: - aid: spark-platform:spark-api name: Spark API description: >- FBS's proprietary REST API over Flexmls MLS content. Documented services include Listings (plus photos, documents, floor plans, videos, virtual tours, open houses, rooms, units, history and rules), Contacts, Saved Searches, Listing Carts, Portals/VOW accounts, Market Statistics, Overlays, Standard Fields and custom field metadata, System Info, and a Developers service for keys, roles, domains, authorizations and usage. Filtering uses SparkQL. Authentication is a Bearer access token obtained through OAuth 2 or an MLS-issued non-expiring token; anonymous requests return HTTP 401. humanURL: https://sparkplatform.com/docs/overview/api baseURL: https://sparkapi.com/v1 tags: - MLS - Property Listings - Real Estate - IDX properties: - type: Documentation url: https://sparkplatform.com/docs - type: APIReference url: https://sparkplatform.com/docs/api_services/read_first - type: Documentation url: https://sparkplatform.com/docs/api_services/listings - type: Documentation url: https://sparkplatform.com/docs/api_services/market_statistics - type: Documentation url: https://sparkplatform.com/docs/supporting_documentation/sparkql_grammar - type: Documentation url: https://sparkplatform.com/docs/supporting_documentation/search_and_paging_syntax - type: Authentication url: https://sparkplatform.com/docs/authentication/access_token - type: ErrorCatalog url: errors/spark-platform-error-codes.yml - type: Conventions url: conventions/spark-platform-conventions.yml - type: Examples url: examples/spark-platform-request-examples.yml - type: SignUp url: https://sparkplatform.com/register/developers - type: TermsOfService url: https://sparkplatform.com/docs/terms_of_use/developer_agreement_and_terms_of_use - aid: spark-platform:spark-reso-web-api name: Spark RESO Web API description: >- Spark's implementation of the RESO Web API, exposed as an OData service at the /Reso/OData endpoint and serving data shaped by the RESO Data Dictionary. Version 3 is the recommended service root; versions 2 endpoints remain documented. Resources are Property, Member, Office, Media, OpenHouse, Room, Unit, Green Verification, Power Production and Lookup. The OData $metadata document at https://replication.sparkapi.com/Version/3/Reso/OData/$metadata is the machine-readable contract, but it is not anonymously retrievable — it returned HTTP 401 on 2026-07-26. The same API keys used for the Spark API authorize this endpoint. humanURL: https://sparkplatform.com/docs/reso/overview baseURL: https://replication.sparkapi.com/Version/3/Reso/OData/ tags: - RESO - OData - MLS - Property Listings - Real Estate properties: - type: Documentation url: https://sparkplatform.com/docs/reso/overview - type: APIReference url: https://sparkplatform.com/docs/reso/properties - type: Documentation url: https://sparkplatform.com/docs/reso/request_parameters - type: Documentation url: https://sparkplatform.com/docs/reso/reso_replication - type: Documentation url: https://sparkplatform.com/docs/supporting_documentation/reso_dictionary - type: Authentication url: https://sparkplatform.com/docs/authentication/access_token - type: DataModel url: data-model/spark-platform-data-model.yml - type: Conformance url: conformance/spark-platform-conformance.yml - type: Examples url: examples/spark-platform-request-examples.yml - aid: spark-platform:spark-webhooks name: Spark Webhooks description: >- Outbound webhook delivery from the Spark platform. When a Property, Member or Office record changes in an upstream MLS, Spark POSTs a RESO Web API Entity Event payload over HTTPS to a subscriber URL, signed with an HMAC-SHA256 signature in a Signature header, with up to 3 retries, exponential backoff and a roughly 2-second response timeout. Subscriptions are filtered by MLS and resource type and support catch-up replay. FBS holds a RESO webhooks 1.0.0 certification endorsement for this surface. Subscriptions are arranged with FBS rather than self-provisioned. humanURL: https://sparkplatform.com/docs/webhooks/webhooks baseURL: https://replication.sparkapi.com/v1 tags: - Webhooks - RESO - MLS - Real Estate properties: - type: Documentation url: https://sparkplatform.com/docs/webhooks/webhooks - type: Webhooks url: asyncapi/spark-platform-webhooks.yml common: - type: DomainSecurity url: security/spark-platform-domain-security.yml - type: Website url: https://www.sparkapi.io/ - type: DeveloperPortal url: https://sparkplatform.com/docs - type: Documentation url: https://sparkplatform.com/docs - type: APIReference url: https://sparkplatform.com/docs/api_services/read_first - type: GettingStarted url: https://sparkplatform.com/docs/overview/set_up_access - type: Support url: https://www.sparkapi.io/contact/ - type: Blog url: https://www.sparkapi.io/blog/ - type: BlogRSS url: https://www.sparkapi.io/feed/ - type: SignUp url: https://sparkplatform.com/register/developers - type: Login url: https://sparkplatform.com/ticket - type: GitHubOrganization url: https://github.com/sparkapi - type: Authentication url: https://sparkplatform.com/docs/authentication/authentication - type: Authentication url: authentication/spark-platform-authentication.yml - type: OAuthScopes url: scopes/spark-platform-scopes.yml - type: OpenIDConnectDiscovery url: authentication/spark-platform-openid-configuration.json - type: JSONWebKeySet url: authentication/spark-platform-openid-jwks.json - type: WellKnown url: well-known/spark-platform-well-known.yml - type: Packages url: packages/spark-platform-packages.yml - type: SDKs url: packages/spark-platform-packages.yml - type: Postman url: https://documenter.getpostman.com/view/25548936/2s935snM26 - type: PostmanCollection url: postman/spark-platform-spark-web-api-queries.postman_collection.json - type: Examples url: examples/spark-platform-request-examples.yml - type: Conventions url: conventions/spark-platform-conventions.yml - type: ErrorCatalog url: errors/spark-platform-error-codes.yml - type: RateLimits url: rate-limits/spark-platform-rate-limits.yml - type: Lifecycle url: lifecycle/spark-platform-lifecycle.yml - type: DataModel url: data-model/spark-platform-data-model.yml - type: Components url: components/spark-platform-components.yml - type: Webhooks url: asyncapi/spark-platform-webhooks.yml - type: Conformance url: conformance/spark-platform-conformance.yml - type: Compliance url: https://services.reso.org/orgs?showStats=true&showEndorsements=true - type: LLMsTxt url: llms/spark-platform-llms.txt - type: TermsOfService url: https://sparkplatform.com/docs/terms_of_use/developer_agreement_and_terms_of_use - type: PrivacyPolicy url: https://sparkplatform.com/docs/terms_of_use/privacy - type: Pricing url: https://www.sparkapi.io/developers/ - type: Certification url: https://services.reso.org/orgs?showStats=true&showEndorsements=true maintainers: - FN: Kin Lane email: kin@apievangelist.com