A network data center comprising: a cloud-based services exchange point comprising a network, the cloud-based services exchange point operated by a cloud exchange provider that operates the network data center; and a programmable network platform comprising at least one programmable processor configured to: receive a service request, for an end-to-end service, that includes a service definition according to a data model, wherein the service definition specifies a plurality of cloud services provided by respective cloud service provider networks operated by respective cloud service providers, wherein the service definition specifies each of the plurality of cloud services according to a common micro-service definition that specifies: a first endpoint of the cloud-based services exchange point, wherein the first endpoint identifies a first cloud service provider and specifies first endpoint-specific data that specifies at least one of a port, data center, and metro location for the first endpoint within the cloud-based services exchange point; and a second endpoint of the cloud-based services exchange point, wherein the second endpoint identifies one of a customer and a second cloud service provider and specifies second endpoint-specific data that specifies at least one of a port, data center, and metro location for the second endpoint within the cloud-based services exchange point, wherein each of the cloud service provider networks is co-located within the data center and is coupled to the cloud-based services exchange point by an aggregation link, wherein the service request further specifies a topology for the plurality of cloud services; and provision, responsive to the service request, the cloud-based services exchange point to forward service traffic for the end-to-end service along a sequence of the plurality of cloud services applied by the respective cloud service provider networks to the service traffic according to the topology for the plurality of cloud services. a cloud-based services exchange point comprising a network, the cloud-based services exchange point operated by a cloud exchange provider that operates the network data center; and a programmable network platform comprising at least one programmable processor configured to: receive a service request, for an end-to-end service, that includes a service definition according to a data model, wherein the service definition specifies a plurality of cloud services provided by respective cloud service provider networks operated by respective cloud service providers, wherein the service definition specifies each of the plurality of cloud services according to a common micro-service definition that specifies: a first endpoint of the cloud-based services exchange point, wherein the first endpoint identifies a first cloud service provider and specifies first endpoint-specific data that specifies at least one of a port, data center, and metro location for the first endpoint within the cloud-based services exchange point; and a second endpoint of the cloud-based services exchange point, wherein the second endpoint identifies one of a customer and a second cloud service provider and specifies second endpoint-specific data that specifies at least one of a port, data center, and metro location for the second endpoint within the cloud-based services exchange point, wherein each of the cloud service provider networks is co-located within the data center and is coupled to the cloud-based services exchange point by an aggregation link, wherein the service request further specifies a topology for the plurality of cloud services; and provision, responsive to the service request, the cloud-based services exchange point to forward service traffic for the end-to-end service along a sequence of the plurality of cloud services applied by the respective cloud service provider networks to the service traffic according to the topology for the plurality of cloud services. a first endpoint of the cloud-based services exchange point, wherein the first endpoint identifies a first cloud service provider and specifies first endpoint-specific data that specifies at least one of a port, data center, and metro location for the first endpoint within the cloud-based services exchange point; and a second endpoint of the cloud-based services exchange point, wherein the second endpoint identifies one of a customer and a second cloud service provider and specifies second endpoint-specific data that specifies at least one of a port, data center, and metro location for the second endpoint within the cloud-based services exchange point, wherein each of the cloud service provider networks is co-located within the data center and is coupled to the cloud-based services exchange point by an aggregation link, wherein the service request further specifies a topology for the plurality of cloud services; and provision, responsive to the service request, the cloud-based services exchange point to forward service traffic for the end-to-end service along a sequence of the plurality of cloud services applied by the respective cloud service provider networks to the service traffic according to the topology for the plurality of cloud services.