docs: def _from_dict(cls, _dict):
          """Initialize a SourceOptions object from a json dictionary."""
          args = {}
          if 'folders' in _dict:
              args['folders'] = [
                  SourceOptionsFolder._from_dict(x)
                  for x in (_dict.get('folders'))
              ]
          if 'objects' in _dict:
              args['objects'] = [
                  SourceOptionsObject._from_dict(x)
                  for x in (_dict.get('objects'))
              ]
          if 'site_collections' in _dict:
              args['site_collections'] = [
                  SourceOptionsSiteColl._from_dict(x)
                  for x in (_dict.get('site_collections'))
              ]
          if 'urls' in _dict:
              args['urls'] = [
                  SourceOptionsWebCrawl._from_dict(x) for x in (_dict.get('urls'))
              ]
          if 'buckets' in _dict:
              args['buckets'] = [
                  SourceOptionsBuckets._from_dict(x)
                  for x in (_dict.get('buckets'))
              ]
          if 'crawl_all_buckets' in _dict:
              args['crawl_all_buckets'] = _dict.get('crawl_all_buckets')
          return cls(**args)