When using the API and calling:
One can add the same URL infinitely, with no errors. New database entries are created.
Unless I'm missing some reason one would want to have multiple site entries with the same URL, this should be considered a bug.
It would convenient if the method just returned the existing record, perhaps?
There may be use cases (e.g., split a/b testing, aggregating multiple sites), where a site might have more than one id associated with a URL.