ds_protocol_graphql_py_lib.serde ================================ .. py:module:: ds_protocol_graphql_py_lib.serde .. autoapi-nested-parse:: **File:** ``__init__.py`` **Region:** ``ds_protocol_graphql_py_lib/serde`` Serialization and deserialization utilities for GraphQL protocol. .. rubric:: Example >>> from ds_protocol_graphql_py_lib.serde import GraphqlDeserializer >>> deserializer = GraphqlDeserializer() Submodules ---------- .. toctree:: :maxdepth: 1 /autoapi/ds_protocol_graphql_py_lib/serde/deserializer/index Classes ------- .. autoapisummary:: ds_protocol_graphql_py_lib.serde.GraphqlDeserializer Package Contents ---------------- .. py:class:: GraphqlDeserializer Bases: :py:obj:`ds_resource_plugin_py_lib.common.serde.deserialize.PandasDeserializer` Deserializer for GraphQL API responses. Handles various GraphQL response patterns: - Direct arrays: {"data": {"users": [...]}} - Relay connections: {"data": {"users": {"edges": [{"node": {...}}]}}} - Single objects: {"data": {"user": {...}}} - Introspection queries: {"data": {"__type": {"fields": [...]}}} .. py:method:: deserialize_graphql(data: Any) -> pandas.DataFrame Deserialize GraphQL response to pandas DataFrame. :param data: GraphQL response dict or raw data :returns: DataFrame containing the extracted data .. py:method:: _parse_graphql_data(data: Any) -> pandas.DataFrame Parse GraphQL data structure into DataFrame. Handles nested structures and various GraphQL response patterns. :param data: The data portion of the GraphQL response :returns: DataFrame with the extracted data .. py:method:: _handle_nested_dict(nested_value: dict[str, Any]) -> pandas.DataFrame Handle nested dict - determine if it's a pure array container or single object. :param nested_value: The nested dictionary to analyze :returns: DataFrame with appropriate data extraction .. py:method:: _extract_relay_nodes(data: dict[str, Any]) -> pandas.DataFrame Extract nodes from Relay-style pagination structure. :param data: Dict containing "edges" key with Relay pagination structure :returns: DataFrame with nodes extracted from edges