Rogii Solo.Papi.Base¶
attribute DEFAULT_OFFSET |
Constant parameter equaled to 0 |
attribute DEFAULT_LIMIT |
Constant parameter equaled to 100 |
attribute LIMIT_MAX |
Constant parameter equaled to 200 |
attribute DATETIME_FORMAT |
Constant parameter equaled to ‘%Y-%m-%dT%H:%M:%SZ’ |
attribute papi_url |
PAPI url |
attribute token_url |
Token url |
attribute papi_client_id |
PAPI client id |
attribute papi_client_secret |
PAPI client secret |
attribute solo_username |
Solo username |
attribute solo_password |
Solo password |
attribute headers |
Headers |
attribute proxies |
Proxies |
property session |
Get the session object for the PAPI client. |
method fetch_projects(offset, limit, query, headers) |
Fetch a list of projects from the PAPI service. |
method fetch_virtual_projects(offset, limit, query, headers) |
Fetch a list of virtual projects from the PAPI service. |
method fetch_project_raw_wells(project_id, offset, limit, query, headers) |
Fetch a list of raw well data for a specific project. |
method fetch_raw_well(well_id, headers) |
Fetch raw data for a specific well. |
method fetch_well_raw_trajectory(well_id, headers) |
Fetch raw trajectory data for a specific well. |
method fetch_well_raw_interpretations(well_id, offset, limit, query, headers) |
Fetch raw interpretation data for a specific well. |
method fetch_interpretation_horizons(interpretation_id, offset, limit, query, headers) |
Fetch horizons for a specific interpretation. |
method fetch_interpretation_horizons_data(interpretation_id, md_step, headers) |
Fetch horizon data points for a specific interpretation. |
method fetch_interpretation_assembled_segments(interpretation_id, headers) |
Fetch assembled segments for a specific interpretation. |
method fetch_interpretation_starred_horizons(interpretation_id, headers) |
Fetch IDs of starred horizons for a specific interpretation. |
method fetch_interpretation_earth_models(interpretation_id, offset, limit, headers) |
Fetch earth models for a specific interpretation. |
method fetch_earth_model_sections(earth_model_id, offset, limit, headers) |
Fetch sections for a specific earth model. |
method fetch_well_nested_wells(well_id, offset, limit, query, headers) |
Fetches well’ well plans |
method fetch_well_target_lines(well_id, offset, limit, headers) |
Fetches well target lines data |
method create_well_nested_well(well_id, name, operator, api, xsrf, ysrf, kb, tie_in_tvd, tie_in_ns, tie_in_ew, headers) |
Create a new well plan within an existing well. |
method replace_nested_well_trajectory(nested_well_id, md_uom, incl_uom, azi_uom, trajectory_stations, headers) |
Replace the trajectory of a well plan. |
method fetch_nested_well_raw_trajectory(nested_well_id, headers) |
Fetch raw trajectory data for a specific nested well. |
method fetch_well_logs(well_id, offset, limit, query, headers) |
Fetch logs for a specific well. |
method fetch_typewell_logs(typewell_id, offset, limit, headers) |
Fetch logs for a specific type well. |
method fetch_log_points(log_id, headers) |
Fetch data points for a specific log. |
method fetch_well_mudlogs(well_id, offset, limit, query, headers) |
Fetch mudlogs for a specific well. |
method fetch_typewell_mudlogs(typewell_id, offset, limit, query, headers) |
Fetch mudlogs for a specific type well. |
method fetch_mudlog_logs(mudlog_id, headers) |
Fetch log data for a specific mudlog. |
method fetch_project_typewells(project_id, offset, limit, query, headers) |
Fetch type wells for a specific project. |
method fetch_typewell_raw_trajectory(typewell_id, headers) |
Fetch raw trajectory data for a specific type well. |
method create_well_topset(well_id, name, headers) |
Create a new topset in a well. |
method create_typewell_topset(typewell_id, name, headers) |
Create a new topset in a type well. |
method create_nested_well_topset(nested_well_id, name, headers) |
Create a new topset in a nested well. |
method fetch_well_topsets(well_id, offset, limit, headers) |
Fetch topsets for a specific well. |
method fetch_typewell_topsets(typewell_id, offset, limit, headers) |
Fetch topsets for a specific type well. |
method fetch_nested_well_topsets(nested_well_id, offset, limit, headers) |
Fetch topsets for a specific nested well. |
method create_well_target_line(well_id, name, origin_x, origin_y, origin_z, target_x, target_y, target_z, headers) |
Create a new target line in a well. |
method create_topset_top(topset_id, name, md, headers) |
Create a new top in a topset. |
method fetch_topset_tops(topset_id, offset, limit, headers) |
Fetch tops for a specific topset. |
method fetch_topset_starred_tops(topset_id, headers) |
Fetch IDs of starred tops for a specific topset. |
method create_well_log(well_id, name, headers) |
Create a new log in a well. |
method replace_log(log_id, log_points, index_unit, value_unit, headers) |
Replace data points in a log. |
method update_log_meta(log_id, name, unit, headers) |
Update metadata for a log. |
method create_typewell_log(typewell_id, name, headers) |
Create a new log in a type well. |
method fetch_traces(headers) |
Fetch all available traces. |
method fetch_well_mapped_traces(well_id, trace_type, headers) |
Fetch mapped traces of a specific type for a well. |
method fetch_well_mapped_time_traces(well_id, headers) |
Fetch mapped time traces for a well. |
method fetch_well_mapped_calc_traces(well_id, headers) |
Fetch mapped calculated traces for a well. |
method fetch_well_time_trace(well_id, trace_id, time_from, time_to, trace_hash, limit, headers) |
Fetch mapped calculated traces for a well. |
method fetch_well_calc_trace(well_id, trace_id, time_from, time_to, trace_hash, headers) |
Fetch mapped calculated traces for a well. |
method update_well_meta(well_id, name, operator, api, xsrf, ysrf, kb, azimuth, convergence, tie_in_tvd, tie_in_ns, tie_in_ew, headers) |
Update the metadata of a well. |
method update_typewell_meta(well_id, name, operator, api, xsrf, ysrf, kb, convergence, tie_in_tvd, tie_in_ns, tie_in_ew, headers) |
Update the metadata of a type well. |
method update_nested_well_meta(well_id, name, operator, api, xsrf, ysrf, kb, tie_in_tvd, tie_in_ns, tie_in_ew, headers) |
Update the metadata of a well plan. |
method create_well(project_id, name, operator, api, convergence, azimuth, kb, tie_in_tvd, tie_in_ns, tie_in_ew, xsrf_real, ysrf_real, headers) |
Create a well in the project |
method create_typewell(project_id, name, operator, api, convergence, kb, tie_in_tvd, tie_in_ns, tie_in_ew, xsrf_real, ysrf_real, headers) |
Create a type well in the project |
method fetch_well_linked_typewells(well_id, offset, limit, headers) |
Fetches well linked typewells |
method fetch_well_comments(well_id, offset, limit, headers) |
Fetches well comments |
method fetch_well_attributes(well_id, headers) |
Fetches well attributes |
method replace_well_trajectory(well_id, md_uom, incl_uom, azi_uom, trajectory_stations, headers) |
Replace well trajectory |
method update_top_meta(top_id, name, md, headers) |
Update top metadata |
Module Contents¶
- class BasePapiClient(papi_url: str, papi_auth_url: str, papi_client_id: str, papi_client_secret: str, solo_username: str = None, solo_password: str = None, headers: Dict | None = None, proxies: Dict | None = None)¶
BasePapiClientis a base class for the PapiClient.- Example:
from rogii_solo.papi.base import BasePapiClient papi_client_id = ... # Input your client ID papi_client_secret = ... # Input your client secret papi_auth_url = ... # Input your papi auth url papi_url = ... # Input your papi url solo_username = ... # Input your solo username solo_password = ... # Input your solo password headers = ... # Input your headers or None proxies = ... # Input your proxy or None client = BasePapiClient( papi_client_id=papi_client_id, papi_client_secret=papi_client_secret, papi_auth_url=papi_auth_url, papi_url=papi_url, solo_username=solo_username, solo_password=solo_password, headers=headers, proxies=proxies )
- DEFAULT_OFFSET = 0¶
Constant parameter equaled to 0
- DEFAULT_LIMIT = 100¶
Constant parameter equaled to 100
- LIMIT_MAX = 200¶
Constant parameter equaled to 200
- DATETIME_FORMAT = '%Y-%m-%dT%H:%M:%SZ'¶
Constant parameter equaled to ‘%Y-%m-%dT%H:%M:%SZ’
- papi_url¶
PAPI url
- token_url¶
Token url
- papi_client_id¶
PAPI client id
- papi_client_secret¶
PAPI client secret
- solo_username¶
Solo username
- solo_password¶
Solo password
- headers¶
Headers
- proxies¶
Proxies
- property session¶
- Get the session object for the PAPI client.
- Returns:
The session object.
- Example:
from rogii_solo.papi.base import BasePapiClient papi_client_id = ... # Input your client ID papi_client_secret = ... # Input your client secret papi_auth_url = ... # Input your papi auth url papi_url = ... # Input your papi url solo_username = ... # Input your solo username solo_password = ... # Input your solo password headers = ... # Input your headers or None proxies = ... # Input your proxy or None client = BasePapiClient( papi_client_id=papi_client_id, papi_client_secret=papi_client_secret, papi_auth_url=papi_auth_url, papi_url=papi_url, solo_username=solo_username, solo_password=solo_password, headers=headers, proxies=proxies ) # Get Client's session session = client.session print(session)
- class PapiClient(papi_url: str, papi_auth_url: str, papi_client_id: str, papi_client_secret: str, solo_username: str = None, solo_password: str = None, headers: Dict | None = None, proxies: Dict | None = None)¶
Bases:
BasePapiClientPapiClientfor interacting with the Solo Platform API (PAPI). Provides low-level access to PAPI endpoints for data fetching and editing.- Example:
from rogii_solo.papi.base import PapiClient papi_client_id = ... # Input your client ID papi_client_secret = ... # Input your client secret papi_auth_url = ... # Input your papi auth url papi_url = ... # Input your papi url solo_username = ... # Input your solo username solo_password = ... # Input your solo password headers = ... # Input your headers or None proxies = ... # Input your proxy or None client = PapiClient( papi_client_id=papi_client_id, papi_client_secret=papi_client_secret, papi_auth_url=papi_auth_url, papi_url=papi_url, solo_username=solo_username, solo_password=solo_password, headers=headers, proxies=proxies ) # Fetch projects projects = client.fetch_projects() print(projects)
- fetch_projects(offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, query: str | None = None, headers: Dict | None = None)¶
Fetch a list of projects from the PAPI service.
- Parameters:
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
query – Optional filter query string.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing project data and pagination information.
- Example:
# Fetch first 100 projects projects = client.fetch_projects(offset=0, limit=100) # Fetch projects with a filter query filtered_projects = client.fetch_projects(query='Project1')
- fetch_virtual_projects(offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, query: str | None = None, headers: Dict | None = None)¶
Fetch a list of virtual projects from the PAPI service.
- Parameters:
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
query – Optional filter query string.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing virtual project data and pagination information.
- Example:
# Fetch first 100 virtual projects virtual_projects = client.fetch_virtual_projects(offset=0, limit=100) # Fetch virtual projects with a filter query filtered_projects = client.fetch_virtual_projects(query='Project1')
- fetch_project_raw_wells(project_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, query: str | None = None, headers: Dict | None = None)¶
Fetch a list of raw well data for a specific project.
- Parameters:
project_id – UUID of the project.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
query – Optional filter query string.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing well data and pagination information.
- Example:
# Fetch first 100 wells for a project wells = client.fetch_project_raw_wells( project_id='ProjectID', offset=0, limit=100 ) # Fetch wells with a filter query filtered_wells = client.fetch_project_raw_wells( project_id='ProjectUUID', query='Well1' )
- fetch_raw_well(well_id: str, headers: Dict | None = None)¶
Fetch raw data for a specific well.
- Parameters:
well_id – UUID of the well.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing well data.
- Example:
# Fetch data for a specific well well_data = client.fetch_raw_well(well_id='WellUUID')
- fetch_well_raw_trajectory(well_id: str, headers: Dict | None = None)¶
Fetch raw trajectory data for a specific well.
- Parameters:
well_id – UUID of the well.
headers – Optional additional HTTP headers.
- Returns:
List of trajectory points.
- Example:
# Fetch trajectory data for a well trajectory = client.fetch_well_raw_trajectory(well_id='WellUUID')
- fetch_well_raw_interpretations(well_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, query: str = None, headers: Dict | None = None)¶
Fetch raw interpretation data for a specific well.
- Parameters:
well_id – UUID of the well.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
query – Optional filter query string.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing interpretation data and pagination information.
- Example:
# Fetch first 100 interpretations for a well interpretations = client.fetch_well_raw_interpretations( well_id='WellUUID', offset=0, limit=100 ) # Fetch interpretations with a filter query filtered_interpretations = client.fetch_well_raw_interpretations( well_id='WellUUID', query='Interpretation1' )
- fetch_interpretation_horizons(interpretation_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, query: str = None, headers: Dict | None = None)¶
Fetch horizons for a specific interpretation.
- Parameters:
interpretation_id – UUID of the interpretation.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
query – Optional filter query string.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing horizon data and pagination information.
- Example:
# Fetch first 100 horizons for an interpretation horizons = client.fetch_interpretation_horizons( interpretation_id="interpretation_uuid", offset=0, limit=100 ) # Fetch horizons with a filter query filtered_horizons = client.fetch_interpretation_horizons( interpretation_id='InterpretationUUID', query='Horizon1' )
- fetch_interpretation_horizons_data(interpretation_id: str, md_step: int, headers: Dict | None = None)¶
Fetch horizon data points for a specific interpretation.
- Parameters:
interpretation_id – UUID of the interpretation.
md_step – Step size for measured depth sampling.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing horizon data points.
- Example:
# Fetch horizon data with 1-meter step horizon_data = client.fetch_interpretation_horizons_data( interpretation_id='InterpretationUUID', md_step=1 )
- fetch_interpretation_assembled_segments(interpretation_id: str, headers: Dict | None = None)¶
Fetch assembled segments for a specific interpretation.
- Parameters:
interpretation_id – UUID of the interpretation.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing assembled segments data.
- Example:
# Fetch assembled segments for an interpretation segments = client.fetch_interpretation_assembled_segments( interpretation_id='InterpretationUUID' )
- fetch_interpretation_starred_horizons(interpretation_id: str, headers: Dict | None = None) rogii_solo.papi.types.PapiStarredHorizons¶
Fetch IDs of starred horizons for a specific interpretation.
- Parameters:
interpretation_id – UUID of the interpretation.
headers – Optional additional HTTP headers.
- Returns:
PapiStarredHorizonscontaining starred horizon UUIDs.- Example:
# Fetch starred horizons for an interpretation starred = client.fetch_interpretation_starred_horizons( interpretation_id='InterpretationUUID' ) print(f'Top horizon: {starred.top}') print(f'Center horizon: {starred.center}') print(f'Bottom horizon: {starred.bottom}')
- fetch_interpretation_earth_models(interpretation_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, headers: Dict | None = None)¶
Fetch earth models for a specific interpretation.
- Parameters:
interpretation_id – UUID of the interpretation.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing earth model data and pagination information.
- Example:
# Fetch first 100 earth models for an interpretation earth_models = client.fetch_interpretation_earth_models( interpretation_id='InterpretationUUID', offset=0, limit=100 )
- fetch_earth_model_sections(earth_model_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, headers: Dict | None = None)¶
Fetch sections for a specific earth model.
- Parameters:
earth_model_id – UUID of the earth model.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing section data and pagination information.
- Example:
# Fetch first 100 sections for an earth model sections = client.fetch_earth_model_sections( earth_model_id='EarthModelUUID', offset=0, limit=100 )
- fetch_well_nested_wells(well_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, query: str = None, headers: Dict | None = None)¶
Fetches well’ well plans
- Parameters:
well_id – UUID of the well.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
query – Optional filter query string.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing well plan data and pagination information.
- Example:
# Fetch first 100 well plans well_plans = client.fetch_well_nested_wells( well_id='WellUUID', offset=0, limit=100, query='WellPlan1' )
- fetch_well_target_lines(well_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, headers: Dict | None = None)¶
Fetches well target lines data
- Parameters:
well_id – UUID of the well.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing target line data and pagination information.
- Example:
# Fetch first 100 well plans target_lines = client.fetch_well_target_lines( well_id='WellUUID', offset=0, limit=100, )
- create_well_nested_well(well_id: str, name: str, operator: str, api: str, xsrf: rogii_solo.papi.types.PapiVar, ysrf: rogii_solo.papi.types.PapiVar, kb: rogii_solo.papi.types.PapiVar, tie_in_tvd: rogii_solo.papi.types.PapiVar, tie_in_ns: rogii_solo.papi.types.PapiVar, tie_in_ew: rogii_solo.papi.types.PapiVar, headers: Dict | None = None) rogii_solo.papi.types.PapiObjectCreationResult¶
Create a new well plan within an existing well.
- Parameters:
well_id – UUID of the parent well.
name – Name of the well plan.
operator – Operator of the well plan.
api – API number of the well plan.
xsrf – Surface X coordinate as
PapiVar.ysrf – Surface Y coordinate as
PapiVar.kb – Kelly bushing elevation as
PapiVar.tie_in_tvd – Tie-in true vertical depth as
PapiVar.tie_in_ns – Tie-in North-South offset as
PapiVar.tie_in_ew – Tie-in East-West offset as
PapiVar.headers – Optional additional HTTP headers.
- Returns:
PapiObjectCreationResultcontaining the created object’s ID.- Example:
# Create a new well plan result = client.create_well_nested_well( well_id='WellUUID', name='WellPlan1', operator='Operator', api='12345', xsrf={'val': 100.0}, ysrf={'val': 200.0}, kb={'val': 1000.0}, tie_in_tvd={'val': 2000.0}, tie_in_ns={'val': 50.0}, tie_in_ew={'val': -30.0} ) print(f'Created well plan with ID: {result.id}')
- replace_nested_well_trajectory(nested_well_id: str, md_uom: str, incl_uom: str, azi_uom: str, trajectory_stations: rogii_solo.papi.types.PapiTrajectory, headers: Dict | None = None)¶
Replace the trajectory of a well plan.
- Parameters:
nested_well_id – UUID of the well plan.
md_uom – Unit of measure for measured depth.
incl_uom – Unit of measure for inclination.
azi_uom – Unit of measure for azimuth.
trajectory_stations – List of trajectory points as
PapiTrajectory.headers – Optional additional HTTP headers.
- Returns:
Response from the server.
- Example:
# Replace well plan trajectory trajectory = [ {'md': {'val': 0}, 'incl': {'val': 0}, 'azi': {'val': 0}}, {'md': {'val': 100}, 'incl': {'val': 5}, 'azi': {'val': 180}}, ] client.replace_nested_well_trajectory( nested_well_id='WellPlanUUID', md_uom='ft', incl_uom='deg', azi_uom='deg', trajectory_stations=trajectory )
- fetch_nested_well_raw_trajectory(nested_well_id: str, headers: dict = None)¶
Fetch raw trajectory data for a specific nested well.
- Parameters:
nested_well_id – UUID of the nested well.
headers – Optional additional HTTP headers.
- Returns:
List of trajectory points.
- Example:
# Fetch trajectory data for a well plan trajectory = client.fetch_nested_well_raw_trajectory( nested_well_id='WellPlanUUID' )
- fetch_well_logs(well_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, query: str = None, headers: Dict | None = None)¶
Fetch logs for a specific well.
- Parameters:
well_id – UUID of the well.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
query – Optional filter query string.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing log data and pagination information.
- Example:
# Fetch first 100 logs for a well logs = client.fetch_well_logs( well_id='WellUUID', offset=0, limit=100 ) # Fetch logs with a filter query filtered_logs = client.fetch_well_logs( well_id='WellUUID', query='Log1' )
- fetch_typewell_logs(typewell_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, headers: Dict | None = None)¶
Fetch logs for a specific type well.
- Parameters:
typewell_id – UUID of the type well.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing log data and pagination information.
- Example:
# Fetch first 100 logs for a type well logs = client.fetch_typewell_logs( typewell_id='TypeWellUUID', offset=0, limit=100 )
- fetch_log_points(log_id: str, headers: Dict | None = None)¶
Fetch data points for a specific log.
- Parameters:
log_id – UUID of the log.
headers – Optional additional HTTP headers.
- Returns:
List of log data points.
- Example:
# Fetch data points for a log points = client.fetch_log_points(log_id='LogUUID')
- fetch_well_mudlogs(well_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, query: str = None, headers: Dict | None = None)¶
Fetch mudlogs for a specific well.
- Parameters:
well_id – UUID of the well.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
query – Optional filter query string.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing mudlog data and pagination information.
- Example:
# Fetch first 100 mudlogs for a well mudlogs = client.fetch_well_mudlogs( well_id='WellUUID', offset=0, limit=100 ) # Fetch mudlogs with a filter query filtered_mudlogs = client.fetch_well_mudlogs( well_id='WellUUID', query='Mudlog1' )
- fetch_typewell_mudlogs(typewell_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, query: str = None, headers: Dict | None = None)¶
Fetch mudlogs for a specific type well.
- Parameters:
typewell_id – UUID of the type well.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
query – Optional filter query string.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing mudlog data and pagination information.
- Example:
# Fetch first 100 mudlogs for a type well mudlogs = client.fetch_typewell_mudlogs( typewell_id='TypeWellUUID', offset=0, limit=100 ) # Fetch mudlogs with a filter query filtered_mudlogs = client.fetch_typewell_mudlogs( typewell_id='TypeWellUUID', query='Mudlog1' )
- fetch_mudlog_logs(mudlog_id: str, headers: Dict | None = None)¶
Fetch log data for a specific mudlog.
- Parameters:
mudlog_id – UUID of the mudlog.
headers – Optional additional HTTP headers.
- Returns:
List of log data points.
- Example:
# Fetch log data for a mudlog log_data = client.fetch_mudlog_logs(mudlog_id='MudlogUUID')
- fetch_project_typewells(project_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, query: str = None, headers: Dict | None = None)¶
Fetch type wells for a specific project.
- Parameters:
project_id – UUID of the project.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
query – Optional filter query string.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing type well data and pagination information.
- Example:
# Fetch first 100 type wells for a project typewells = client.fetch_project_typewells( project_id='ProjectUUID', offset=0, limit=100 ) # Fetch type wells with a filter query filtered_typewells = client.fetch_project_typewells( project_id='ProjectUUID', query='TypeWell1' )
- fetch_typewell_raw_trajectory(typewell_id: str, headers: Dict | None = None)¶
Fetch raw trajectory data for a specific type well.
- Parameters:
typewell_id – UUID of the type well.
headers – Optional additional HTTP headers.
- Returns:
List of trajectory points.
- Example:
# Fetch trajectory data for a type well trajectory = client.fetch_typewell_raw_trajectory( typewell_id='TypeWellUUID' )
- create_well_topset(well_id: str, name: str, headers: Dict | None = None) rogii_solo.papi.types.PapiObjectCreationResult¶
Create a new topset in a well.
- Parameters:
well_id – UUID of the well.
name – Name of the topset.
headers – Optional additional HTTP headers.
- Returns:
PapiObjectCreationResultcontaining the created object’s ID.- Example:
# Create a new topset in a well result = client.create_well_topset( well_id='WellUUID', name='Topset1' ) print(f'Created topset with ID: {result.id}')
- create_typewell_topset(typewell_id: str, name: str, headers: Dict | None = None) rogii_solo.papi.types.PapiObjectCreationResult¶
Create a new topset in a type well.
- Parameters:
typewell_id – UUID of the type well.
name – Name of the topset.
headers – Optional additional HTTP headers.
- Returns:
PapiObjectCreationResultcontaining the created object’s ID.- Example:
# Create a new topset in a type well result = client.create_typewell_topset( typewell_id='TypeWellUUID', name='Topset1' ) print(f'Created topset with ID: {result.id}')
- create_nested_well_topset(nested_well_id: str, name: str, headers: Dict | None = None) rogii_solo.papi.types.PapiObjectCreationResult¶
Create a new topset in a nested well.
- Parameters:
nested_well_id – UUID of the nested well.
name – Name of the topset.
headers – Optional additional HTTP headers.
- Returns:
PapiObjectCreationResultcontaining the created object’s ID.- Example:
# Create a new topset in a nested well result = client.create_nested_well_topset( nested_well_id='NestedWellUUID', name='Topset1' ) print(f'Created topset with ID: {result.id}')
- fetch_well_topsets(well_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, headers: Dict | None = None)¶
Fetch topsets for a specific well.
- Parameters:
well_id – UUID of the well.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing topset data and pagination information.
- Example:
# Fetch first 100 topsets for a well topsets = client.fetch_well_topsets( well_id='WellUUID', offset=0, limit=100 )
- fetch_typewell_topsets(typewell_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, headers: Dict | None = None)¶
Fetch topsets for a specific type well.
- Parameters:
typewell_id – UUID of the type well.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing topset data and pagination information.
- Example:
# Fetch first 100 topsets for a type well topsets = client.fetch_typewell_topsets( typewell_id='TypeWellUUID', offset=0, limit=100 )
- fetch_nested_well_topsets(nested_well_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, headers: Dict | None = None)¶
Fetch topsets for a specific nested well.
- Parameters:
nested_well_id – UUID of the nested well.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing topset data and pagination information.
- Example:
# Fetch first 100 topsets for a nested well topsets = client.fetch_nested_well_topsets( nested_well_id='NestedWellUUID', offset=0, limit=100 )
- create_well_target_line(well_id: str, name: str, origin_x: rogii_solo.papi.types.PapiVar, origin_y: rogii_solo.papi.types.PapiVar, origin_z: rogii_solo.papi.types.PapiVar, target_x: rogii_solo.papi.types.PapiVar, target_y: rogii_solo.papi.types.PapiVar, target_z: rogii_solo.papi.types.PapiVar, headers: Dict | None = None) rogii_solo.papi.types.PapiObjectCreationResult¶
Create a new target line in a well.
- Parameters:
well_id – UUID of the well.
name – Name of the target line.
origin_x – X coordinate of the origin point as
PapiVar.origin_y – Y coordinate of the origin point as
PapiVar.origin_z – Z coordinate of the origin point as
PapiVar.target_x – X coordinate of the target point as
PapiVar.target_y – Y coordinate of the target point as
PapiVar.target_z – Z coordinate of the target point as
PapiVar.headers – Optional additional HTTP headers.
- Returns:
PapiObjectCreationResultcontaining the created object’s ID.- Example:
# Create a new target line result = client.create_well_target_line( well_id='WellUUID', name='TargetLine1', origin_x={'val': 100.0}, origin_y={'val': 200.0}, origin_z={'val': 300.0}, target_x={'val': 400.0}, target_y={'val': 500.0}, target_z={'val': 600.0} ) print(f'Created target line with ID: {result.id}')
- create_topset_top(topset_id: str, name: str, md: rogii_solo.papi.types.PapiVar, headers: Dict | None = None) rogii_solo.papi.types.PapiObjectCreationResult¶
Create a new top in a topset.
- Parameters:
topset_id – UUID of the topset.
name – Name of the top.
md – Measured depth of the top as
PapiVar.headers – Optional additional HTTP headers.
- Returns:
PapiObjectCreationResultcontaining the created object’s ID.- Example:
# Create a new top in a topset result = client.create_topset_top( topset_id='TopsetUUID', name='Top1', md={'val': 1000.0} ) print(f'Created top with ID: {result.id}')
- fetch_topset_tops(topset_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, headers: Dict | None = None)¶
Fetch tops for a specific topset.
- Parameters:
topset_id – UUID of the topset.
offset – Number of items to skip before starting to collect the result set.
limit – Maximum number of items to return.
headers – Optional additional HTTP headers.
- Returns:
Dictionary containing top data and pagination information.
- Example:
# Fetch first 100 tops for a topset tops = client.fetch_topset_tops( topset_id='TopsetUUID', offset=0, limit=100 )
- fetch_topset_starred_tops(topset_id: str, headers: Dict = None) rogii_solo.papi.types.PapiStarredTops¶
Fetch IDs of starred tops for a specific topset.
- Parameters:
topset_id – UUID of the topset.
headers – Optional additional HTTP headers.
- Returns:
PapiStarredTopscontaining starred top UUIDs.- Example:
# Fetch starred tops for a topset starred = client.fetch_topset_starred_tops( topset_id='TopsetUUID' ) print(f'Top: {starred.top}') print(f'Center: {starred.center}') print(f'Bottom: {starred.bottom}')
- create_well_log(well_id: str, name: str, headers: Dict | None = None) rogii_solo.papi.types.PapiObjectCreationResult¶
Create a new log in a well.
- Parameters:
well_id – UUID of the well.
name – Name of the log.
headers – Optional additional HTTP headers.
- Returns:
PapiObjectCreationResultcontaining the created object’s ID.- Example:
# Create a new log in a well result = client.create_well_log( well_id='WellUUID', name='Log1' ) print(f'Created log with ID: {result.id}')
- replace_log(log_id: str, log_points: List[rogii_solo.papi.types.PapiLogPoint], index_unit: str | None = None, value_unit: str | None = None, headers: Dict | None = None)¶
Replace data points in a log.
- Parameters:
log_id – UUID of the log.
log_points – List of log points as
PapiLogPoint.index_unit – Optional unit of measure for the index values.
value_unit – Optional unit of measure for the data values.
headers – Optional additional HTTP headers.
- Returns:
Response from the server.
- Example:
# Replace log data points points = [ {'index': {'val': 0}, 'value': {'val': 100}}, {'index': {'val': 1}, 'value': {'val': 200}}, ] client.replace_log( log_id='LogUUID', log_points=points, index_unit='ft', value_unit='API' )
- update_log_meta(log_id: str, name: str | None = None, unit: str | None = None, headers: Dict | None = None) bool¶
Update metadata for a log.
- Parameters:
log_id – UUID of the log.
name – Optional new name for the log.
unit – Optional new unit of measure for the log values.
headers – Optional additional HTTP headers.
- Returns:
True if the update was successful, False otherwise.
- Example:
# Update log metadata success = client.update_log_meta( log_id='LogUUID', name='Log1', unit='API' ) if success: print('Log metadata updated successfully')
- create_typewell_log(typewell_id: str, name: str, headers: Dict | None = None) rogii_solo.papi.types.PapiObjectCreationResult¶
Create a new log in a type well.
- Parameters:
typewell_id – UUID of the type well.
name – Name of the log.
headers – Optional additional HTTP headers.
- Returns:
PapiObjectCreationResultcontaining the created object’s ID.- Example:
# Create a new log in a type well result = client.create_typewell_log( typewell_id='TypewellUUID', name='Log1' ) print(f'Created log with ID: {result.id}')
- fetch_traces(headers: Dict | None = None)¶
Fetch all available traces.
- Parameters:
headers – Optional additional HTTP headers.
- Returns:
List of trace data.
- Example:
# Fetch all available traces traces = client.fetch_traces()
- fetch_well_mapped_traces(well_id: str, trace_type: rogii_solo.papi.types.TraceType, headers: Dict | None = None)¶
Fetch mapped traces of a specific type for a well.
- Parameters:
well_id – UUID of the well.
trace_type – Type of traces to fetch as
TraceType.headers – Optional additional HTTP headers.
- Returns:
List of mapped trace data.
- Example:
from rogii_solo.papi.types import TraceType # Fetch mapped traces for a well traces = client.fetch_well_mapped_traces( well_id="well_uuid", trace_type=TraceType.TIME )
- fetch_well_mapped_time_traces(well_id: str, headers: Dict | None = None)¶
Fetch mapped time traces for a well.
- Parameters:
well_id – UUID of the well.
headers – Optional additional HTTP headers.
- Returns:
List of mapped time trace data.
- Example:
# Fetch mapped time traces for a well traces = client.fetch_well_mapped_time_traces(well_id='WellUUID')
- fetch_well_mapped_calc_traces(well_id: str, headers: Dict | None = None)¶
Fetch mapped calculated traces for a well.
- Parameters:
well_id – UUID of the well.
headers – Optional additional HTTP headers.
- Returns:
List of mapped calculated trace data.
- Example:
# Fetch mapped calculated traces for a well traces = client.fetch_well_mapped_calc_traces(well_id='WellUUID')
- fetch_well_time_trace(well_id: str, trace_id: str, time_from: str | None = None, time_to: str | None = None, trace_hash: str | None = None, limit: int | None = None, headers: Dict | None = None)¶
Fetch mapped calculated traces for a well.
- Parameters:
well_id – UUID of the well.
trace_id – UUID of the trace.
time_from – Start time of the trace.
time_to – End time of the trace.
trace_hash – Hash of the trace.
limit – Limit the number of traces.
headers – Optional additional HTTP headers.
- Returns:
List of mapped calculated trace data.
- Example:
# Fetch time traces for a well traces = client.fetch_well_time_trace(well_id='WellUUID', trace_id='TraceUUID')
- fetch_well_calc_trace(well_id: str, trace_id: str, time_from: str | None = None, time_to: str | None = None, trace_hash: str | None = None, headers: Dict | None = None)¶
Fetch mapped calculated traces for a well.
- Parameters:
well_id – UUID of the well.
trace_id – UUID of the trace.
time_from – Start time of the trace.
time_to – End time of the trace.
trace_hash – Hash of the trace.
headers – Optional additional HTTP headers.
- Returns:
List of mapped calculated trace data.
- Example:
# Fetch calculated traces for a well traces = client.fetch_well_calc_trace(well_id='WellUUID', trace_id='TraceUUID')
- update_well_meta(well_id: str, name: str | None = None, operator: str | None = None, api: str | None = None, xsrf: rogii_solo.papi.types.PapiVar | None = None, ysrf: rogii_solo.papi.types.PapiVar | None = None, kb: rogii_solo.papi.types.PapiVar | None = None, azimuth: rogii_solo.papi.types.PapiVar | None = None, convergence: rogii_solo.papi.types.PapiVar | None = None, tie_in_tvd: rogii_solo.papi.types.PapiVar | None = None, tie_in_ns: rogii_solo.papi.types.PapiVar | None = None, tie_in_ew: rogii_solo.papi.types.PapiVar | None = None, headers: Dict | None = None)¶
Update the metadata of a well.
- Parameters:
well_id – UUID of the well.
name – Name of the well.
operator – Operator of the well.
api – API of the well.
xsrf – XSRF of the well.
ysrf – YSRF of the well.
kb – KB of the well.
azimuth – Azimuth of the well.
convergence – Convergence of the well.
tie_in_tvd – Tie in TVD of the well.
tie_in_ns – Tie in NS of the well.
tie_in_ew – Tie in EW of the well.
headers – Optional additional HTTP headers.
- Example:
# Update well metadata client.update_well_meta(well_id='WellUUID', name='Well1')
- update_typewell_meta(well_id: str, name: str | None = None, operator: str | None = None, api: str | None = None, xsrf: rogii_solo.papi.types.PapiVar | None = None, ysrf: rogii_solo.papi.types.PapiVar | None = None, kb: rogii_solo.papi.types.PapiVar | None = None, convergence: rogii_solo.papi.types.PapiVar | None = None, tie_in_tvd: rogii_solo.papi.types.PapiVar | None = None, tie_in_ns: rogii_solo.papi.types.PapiVar | None = None, tie_in_ew: rogii_solo.papi.types.PapiVar | None = None, headers: Dict | None = None)¶
Update the metadata of a type well.
- Parameters:
well_id – UUID of the type well.
name – Name of the type well.
operator – Operator of the type well.
api – API of the type well.
xsrf – XSRF of the type well.
ysrf – YSRF of the type well.
kb – KB of the type well.
convergence – Convergence of the type well.
tie_in_tvd – Tie in TVD of the type well.
tie_in_ns – Tie in NS of the type well.
tie_in_ew – Tie in EW of the type well.
headers – Optional additional HTTP headers.
- Example:
# Update type well metadata client.update_typewell_meta(well_id='WellUUID', name='Well1')
- update_nested_well_meta(well_id: str, name: str | None = None, operator: str | None = None, api: str | None = None, xsrf: rogii_solo.papi.types.PapiVar | None = None, ysrf: rogii_solo.papi.types.PapiVar | None = None, kb: rogii_solo.papi.types.PapiVar | None = None, tie_in_tvd: rogii_solo.papi.types.PapiVar | None = None, tie_in_ns: rogii_solo.papi.types.PapiVar | None = None, tie_in_ew: rogii_solo.papi.types.PapiVar | None = None, headers: Dict | None = None)¶
Update the metadata of a well plan.
- Parameters:
well_id – UUID of the well plan.
name – Name of the well plan.
operator – Operator of the well plan.
api – API of the well plan.
xsrf – XSRF of the well plan.
ysrf – YSRF of the well plan.
kb – KB of the well plan.
convergence – Convergence of the well plan.
tie_in_tvd – Tie in TVD of the well plan.
tie_in_ns – Tie in NS of the well plan.
tie_in_ew – Tie in EW of the well plan.
headers – Optional additional HTTP headers.
- Example:
# Update well plan metadata client.update_nested_well_meta(well_id='WellPlanUUID', name='WellPlan1')
- create_well(project_id: str, name: str, operator: str, api: str, convergence: rogii_solo.papi.types.PapiVar, azimuth: rogii_solo.papi.types.PapiVar, kb: rogii_solo.papi.types.PapiVar, tie_in_tvd: rogii_solo.papi.types.PapiVar, tie_in_ns: rogii_solo.papi.types.PapiVar, tie_in_ew: rogii_solo.papi.types.PapiVar, xsrf_real: rogii_solo.papi.types.PapiVar, ysrf_real: rogii_solo.papi.types.PapiVar, headers: Dict | None = None) rogii_solo.papi.types.PapiObjectCreationResult¶
Create a well in the project
- Parameters:
project_id – UUID of the project.
name – Name of the well.
operator – Operator of the well.
api – API of the well.
xsrf – XSRF of the well.
ysrf – YSRF of the well.
kb – KB of the well.
convergence – Convergence of the well.
tie_in_tvd – Tie in TVD of the well plan.
tie_in_ns – Tie in NS of the well plan.
tie_in_ew – Tie in EW of the well plan.
headers – Optional additional HTTP headers.
- Returns:
PapiObjectCreationResultobject.- Example:
# Create a well client.create_well(project_id='ProjectUUID', name='Well1', operator='Operator1', api='API1', convergence=PapiVar(10), azimuth=PapiVar(20), kb=PapiVar(30), tie_in_tvd=PapiVar(40), tie_in_ns=PapiVar(50), tie_in_ew=PapiVar(60), xsrf_real=PapiVar(70), ysrf_real=PapiVar(80), )
- create_typewell(project_id: str, name: str, operator: str, api: str, convergence: rogii_solo.papi.types.PapiVar, kb: rogii_solo.papi.types.PapiVar, tie_in_tvd: rogii_solo.papi.types.PapiVar, tie_in_ns: rogii_solo.papi.types.PapiVar, tie_in_ew: rogii_solo.papi.types.PapiVar, xsrf_real: rogii_solo.papi.types.PapiVar, ysrf_real: rogii_solo.papi.types.PapiVar, headers: Dict | None = None) rogii_solo.papi.types.PapiObjectCreationResult¶
Create a type well in the project
- Parameters:
project_id – UUID of the project.
name – Name of the type well.
operator – Operator of the type well.
api – API of the type well.
xsrf – XSRF of the type well.
ysrf – YSRF of the type well.
kb – KB of the type well.
convergence – Convergence of the type well.
tie_in_tvd – Tie in TVD of the type well.
tie_in_ns – Tie in NS of the type well.
tie_in_ew – Tie in EW of the type well.
headers – Optional additional HTTP headers.
- Returns:
PapiObjectCreationResultobject.- Example:
# Create a type well client.create_typewell(project_id='ProjectUUID', name='TypeWell1', operator='Operator1', api='API1', convergence=PapiVar(10), kb=PapiVar(30), tie_in_tvd=PapiVar(40), tie_in_ns=PapiVar(50), tie_in_ew=PapiVar(60), xsrf_real=PapiVar(70), ysrf_real=PapiVar(80), )
- fetch_well_linked_typewells(well_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, headers: Dict | None = None)¶
Fetches well linked typewells
- Parameters:
well_id – UUID of the well.
offset – Offset of the well linked typewells.
limit – Limit of the well linked typewells.
headers – Optional additional HTTP headers.
- Example:
# Fetch well linked typewells client.fetch_well_linked_typewells(well_id='WellUUID')
- fetch_well_comments(well_id: str, offset: int = BasePapiClient.DEFAULT_OFFSET, limit: int = BasePapiClient.DEFAULT_LIMIT, headers: Dict | None = None)¶
Fetches well comments
- Parameters:
well_id – UUID of the well.
offset – Offset of the well comments.
limit – Limit of the well comments.
headers – Optional additional HTTP headers.
- Example:
# Fetch well comments client.fetch_well_comments(well_id='WellUUID')
- fetch_well_attributes(well_id: str, headers: Dict | None = None)¶
Fetches well attributes
- Parameters:
well_id – UUID of the well.
headers – Optional additional HTTP headers.
- Example:
# Fetch well attributes client.fetch_well_attributes(well_id='WellUUID')
- replace_well_trajectory(well_id: str, md_uom: str, incl_uom: str, azi_uom: str, trajectory_stations: rogii_solo.papi.types.PapiTrajectory, headers: Dict | None = None)¶
Replace well trajectory
- Parameters:
well_id – UUID of the well.
md_uom – MD unit of measure.
incl_uom – Inclination unit of measure.
azi_uom – Azimuth unit of measure.
trajectory_stations –
PapiTrajectoryobject.headers – Optional additional HTTP headers.
- Example:
# Replace well trajectory client.replace_well_trajectory( well_id='WellUUID', md_uom='m', incl_uom='deg', azi_uom='deg', trajectory_stations=PapiTrajectory(), )
- update_top_meta(top_id: str, name: str, md: rogii_solo.papi.types.PapiVar, headers: Dict | None = None) bool¶
Update top metadata
- Parameters:
top_id – UUID of the top.
name – Name of the top.
md – MD of the top.
headers – Optional additional HTTP headers.
- Returns:
True if the top metadata was updated successfully, False otherwise.
- Example:
# Replace well trajectory client.update_top_meta( top_id='TopUUID', name='Top1', md=PapiVar(1000), )