Protected_ endpoints
_endpoints : { getColonies : { path : "characters/{characterId}/planets" ; method : "GET" ; requiresAuth : true ; pathParams : readonly [ "characterId" ] ; responseSchema : ZodArray < ZodObject < { solar_system_id : ZodNumber ; planet_id : ZodNumber ; planet_type : ZodType < | string & {} | "temperate" | "barren" | "oceanic" | "ice" | "gas" | "lava" | "storm" | "plasma" , unknown , $ZodTypeInternals < | string & {} | "temperate" | "barren" | "oceanic" | "ice" | "gas" | "lava" | "storm" | "plasma" , unknown , > , > ; owner_id : ZodNumber ; last_update : ZodString ; upgrade_level : ZodNumber ; num_pins : ZodNumber ; } , $loose , > , > ; } ; getColonyLayout : { path : "characters/{characterId}/planets/{planetId}" ; method : "GET" ; requiresAuth : true ; pathParams : readonly [ "characterId" , "planetId" ] ; responseSchema : ZodObject < { links : ZodArray < ZodObject < { source_pin_id : ZodNumber ; destination_pin_id : ZodNumber ; link_level : ZodNumber ; } , $loose , > , > ; pins : ZodArray < ZodObject < { pin_id : ZodNumber ; type_id : ZodNumber ; latitude : ZodNumber ; longitude : ZodNumber ; schematic_id : ZodOptional < ZodNumber > ; extractor_details : ZodOptional < ZodObject < { heads : ZodArray < (...)> ; product_type_id : ZodOptional < (...)> ; cycle_time : ZodOptional < (...)> ; head_radius : ZodOptional < (...)> ; qty_per_cycle : ZodOptional < (...)> ; } , $loose , > , > ; factory_details : ZodOptional < ZodObject < { schematic_id : ZodNumber } , $loose > , > ; contents : ZodOptional < ZodArray < ZodObject < { type_id : ...; amount : ... } , $loose > > , > ; install_time : ZodOptional < ZodString > ; expiry_time : ZodOptional < ZodString > ; last_cycle_start : ZodOptional < ZodString > ; } , $loose , > , > ; routes : ZodArray < ZodObject < { route_id : ZodNumber ; source_pin_id : ZodNumber ; destination_pin_id : ZodNumber ; content_type_id : ZodNumber ; quantity : ZodNumber ; waypoints : ZodOptional < ZodArray < ZodNumber > > ; } , $loose , > , > ; } , $loose , > ; } ; getCorporationCustomsOffices : { path : "corporations/{corporationId}/customs_offices" ; method : "GET" ; requiresAuth : true ; pathParams : readonly [ "corporationId" ] ; responseSchema : ZodArray < ZodObject < { office_id : ZodNumber ; system_id : ZodNumber ; reinforce_exit_start : ZodNumber ; reinforce_exit_end : ZodNumber ; allow_access_with_standings : ZodBoolean ; allow_alliance_access : ZodBoolean ; alliance_tax_rate : ZodOptional < ZodNumber > ; corporation_tax_rate : ZodOptional < ZodNumber > ; standing_level : ZodOptional < ZodString > ; terrible_standing_tax_rate : ZodOptional < ZodNumber > ; bad_standing_tax_rate : ZodOptional < ZodNumber > ; neutral_standing_tax_rate : ZodOptional < ZodNumber > ; good_standing_tax_rate : ZodOptional < ZodNumber > ; excellent_standing_tax_rate : ZodOptional < ZodNumber > ; type_id : ZodOptional < ZodNumber > ; } , $loose , > , > ; } ; getSchematicInformation : { path : "universe/schematics/{schematicId}" ; method : "GET" ; requiresAuth : false ; pathParams : readonly [ "schematicId" ] ; responseSchema : ZodObject < { schematic_name : ZodString ; cycle_time : ZodNumber } , $loose , > ; } ; }
The base of the custom domain clients: an endpoint map turned into methods, plus the
stream*/fetchAll*page helpers andwithMetadata/withSafeMode. Extend it for a custom domain client of your own.