Prompts Client

The Prompts client provides methods for managing prompts in the Opik platform.

class opik.rest_api.prompts.client.PromptsClient(*, client_wrapper: SyncClientWrapper)

Bases: object

get_prompts(*, page: int | None = None, size: int | None = None, name: str | None = None, request_options: RequestOptions | None = None) PromptPagePublic

Get prompts

Parameters:
  • page (Optional[int])

  • size (Optional[int])

  • name (Optional[str])

  • request_options (Optional[RequestOptions]) – Request-specific configuration.

Returns:

OK

Return type:

PromptPagePublic

Examples

from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.prompts.get_prompts()

create_prompt(*, name: str, id: str | None = OMIT, description: str | None = OMIT, template: str | None = OMIT, metadata: Dict[str, Any | None] | None = OMIT, change_description: str | None = OMIT, type: Literal['mustache', 'jinja2'] | Any | None = OMIT, request_options: RequestOptions | None = None) None

Create prompt

Parameters:
  • name (str)

  • id (Optional[str])

  • description (Optional[str])

  • template (Optional[str])

  • metadata (Optional[JsonNodeWrite])

  • change_description (Optional[str])

  • type (Optional[PromptWriteType])

  • request_options (Optional[RequestOptions]) – Request-specific configuration.

Return type:

None

Examples

from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.prompts.create_prompt(name=’name’, )

create_prompt_version(*, name: str, version: PromptVersionDetail, request_options: RequestOptions | None = None) PromptVersionDetail

Create prompt version

Parameters:
  • name (str)

  • version (PromptVersionDetail)

  • request_options (Optional[RequestOptions]) – Request-specific configuration.

Returns:

OK

Return type:

PromptVersionDetail

Examples

from Opik import OpikApi from Opik import PromptVersionDetail client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.prompts.create_prompt_version(name=’name’, version=PromptVersionDetail(template=’template’, ), )

get_prompt_by_id(id: str, *, request_options: RequestOptions | None = None) PromptDetail

Get prompt by id

Parameters:
  • id (str)

  • request_options (Optional[RequestOptions]) – Request-specific configuration.

Returns:

Prompt resource

Return type:

PromptDetail

Examples

from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.prompts.get_prompt_by_id(id=’id’, )

update_prompt(id: str, *, name: str, description: str | None = OMIT, request_options: RequestOptions | None = None) None

Update prompt

Parameters:
  • id (str)

  • name (str)

  • description (Optional[str])

  • request_options (Optional[RequestOptions]) – Request-specific configuration.

Return type:

None

Examples

from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.prompts.update_prompt(id=’id’, name=’name’, )

delete_prompt(id: str, *, request_options: RequestOptions | None = None) None

Delete prompt

Parameters:
  • id (str)

  • request_options (Optional[RequestOptions]) – Request-specific configuration.

Return type:

None

Examples

from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.prompts.delete_prompt(id=’id’, )

delete_prompts_batch(*, ids: Sequence[str], request_options: RequestOptions | None = None) None

Delete prompts batch

Parameters:
  • ids (Sequence[str])

  • request_options (Optional[RequestOptions]) – Request-specific configuration.

Return type:

None

Examples

from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.prompts.delete_prompts_batch(ids=[‘ids’], )

get_prompt_version_by_id(version_id: str, *, request_options: RequestOptions | None = None) PromptVersionDetail

Get prompt version by id

Parameters:
  • version_id (str)

  • request_options (Optional[RequestOptions]) – Request-specific configuration.

Returns:

Prompt version resource

Return type:

PromptVersionDetail

Examples

from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.prompts.get_prompt_version_by_id(version_id=’versionId’, )

get_prompt_versions(id: str, *, page: int | None = None, size: int | None = None, request_options: RequestOptions | None = None) PromptVersionPagePublic

Get prompt versions

Parameters:
  • id (str)

  • page (Optional[int])

  • size (Optional[int])

  • request_options (Optional[RequestOptions]) – Request-specific configuration.

Returns:

OK

Return type:

PromptVersionPagePublic

Examples

from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.prompts.get_prompt_versions(id=’id’, )

retrieve_prompt_version(*, name: str, commit: str | None = OMIT, request_options: RequestOptions | None = None) PromptVersionDetail

Retrieve prompt version

Parameters:
  • name (str)

  • commit (Optional[str])

  • request_options (Optional[RequestOptions]) – Request-specific configuration.

Returns:

OK

Return type:

PromptVersionDetail

Examples

from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.prompts.retrieve_prompt_version(name=’name’, )

Usage Example

import opik

client = opik.Opik()

# Create a prompt
client.rest_client.prompts.create_prompt(
    name="my-prompt",
    prompt="Tell me about {{topic}}",
    type="mustache"
)

# Get a prompt by name
prompt = client.rest_client.prompts.get_prompt_by_name("my-prompt")

# List all prompts
prompts = client.rest_client.prompts.find_prompts(
    page=0,
    size=10
)

# Get prompt versions
versions = client.rest_client.prompts.get_prompt_versions(
    prompt_name="my-prompt"
)