Metadata-Version: 2.4
Name: PollinationAI_SDK
Version: 1.0.2
Summary: pollinations.ai API
Home-page: https://github.com/yehigo/Pollinations.ai_sdk
Author: OpenAPI Generator community
Author-email: OpenAPI Generator Community <team@openapitools.org>
Project-URL: Repository, https://github.com/GIT_USER_ID/GIT_REPO_ID
Keywords: OpenAPI,OpenAPI-Generator,pollinations.ai API
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: urllib3<3.0.0,>=2.1.0
Requires-Dist: python-dateutil>=2.8.2
Requires-Dist: pydantic>=2
Requires-Dist: typing-extensions>=4.7.1
Dynamic: author
Dynamic: home-page

# PollinationAI_SDK
Documentation for `gen.pollinations.ai` - the pollinations.ai API gateway.

[📝 Edit docs](https://github.com/pollinations/pollinations/edit/master/enter.pollinations.ai/src/routes/docs.ts)

## Quick Start

Get your API key at https://enter.pollinations.ai

### Image Generation
```bash
curl 'https://gen.pollinations.ai/image/a%20cat?model=flux' \\
  -H 'Authorization: Bearer YOUR_API_KEY'
```

### Text Generation
```bash
curl 'https://gen.pollinations.ai/v1/chat/completions' \\
  -H 'Authorization: Bearer YOUR_API_KEY' \\
  -H 'Content-Type: application/json' \\
  -d '{\"model\": \"openai\", \"messages\": [{\"role\": \"user\", \"content\": \"Hello\"}]}'
```

### Vision (Image Input)
```bash
curl 'https://gen.pollinations.ai/v1/chat/completions' \\
  -H 'Authorization: Bearer YOUR_API_KEY' \\
  -H 'Content-Type: application/json' \\
  -d '{\"model\": \"openai\", \"messages\": [{\"role\": \"user\", \"content\": [{\"type\": \"text\", \"text\": \"Describe this image\"}, {\"type\": \"image_url\", \"image_url\": {\"url\": \"https://example.com/image.jpg\"}}]}]}'
```

**Gemini Tools:** `gemini`, `gemini-large` have `code_execution` enabled (can generate images/plots). `gemini-search` has `google_search` enabled. Responses may include `content_blocks` with `image_url`, `text`, or `thinking` types.

### Simple Text Endpoint
```bash
curl 'https://gen.pollinations.ai/text/hello?key=YOUR_API_KEY'
```

### Streaming
```bash
curl 'https://gen.pollinations.ai/v1/chat/completions' \\
  -H 'Authorization: Bearer YOUR_API_KEY' \\
  -H 'Content-Type: application/json' \\
  -d '{\"model\": \"openai\", \"messages\": [{\"role\": \"user\", \"content\": \"Write a poem\"}], \"stream\": true}' \\
  --no-buffer
```

### Model Discovery
**Always check available models before testing:**

- **Image models:** [/image/models](https://gen.pollinations.ai/image/models)
- **Text models:** [/v1/models](https://gen.pollinations.ai/v1/models)

## Authentication

**Two key types (both consume Pollen from your balance):**
- **Publishable Keys (`pk_`):** ⚠️ **Beta - not yet ready for production use.** For client-side apps, IP rate-limited (1 pollen per IP per hour). **Warning:** Exposing in public code will consume your Pollen if your app gets traffic.
- **Secret Keys (`sk_`):** Server-side only, no rate limits. Keep secret - never expose publicly.

**Auth methods:**
1. Header: `Authorization: Bearer YOUR_API_KEY`
2. Query param: `?key=YOUR_API_KEY`

## Account Management

Check your balance and usage:

```bash
# Check pollen balance
curl 'https://gen.pollinations.ai/account/balance' \\
  -H 'Authorization: Bearer YOUR_API_KEY'

# Get profile info
curl 'https://gen.pollinations.ai/account/profile' \\
  -H 'Authorization: Bearer YOUR_API_KEY'

# View usage history
curl 'https://gen.pollinations.ai/account/usage' \\
  -H 'Authorization: Bearer YOUR_API_KEY'
```

This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:

- API version: 0.3.0
- Package version: 1.0.2
- Generator version: 7.21.0-SNAPSHOT
- Build package: org.openapitools.codegen.languages.PythonClientCodegen

## Requirements.

Python 3.9+

## Installation & Usage
### pip install

If the python package is hosted on a repository, you can install directly using:

```sh
pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git
```
(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git`)

Then import the package:
```python
import PollinationAI_SDK
```

### Setuptools

Install via [Setuptools](http://pypi.python.org/pypi/setuptools).

```sh
python setup.py install --user
```
(or `sudo python setup.py install` to install the package for all users)

Then import the package:
```python
import PollinationAI_SDK
```

### Tests

Execute `pytest` to run the tests.

## Getting Started

Please follow the [installation procedure](#installation--usage) and then run the following:

```python

import PollinationAI_SDK
from PollinationAI_SDK.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://gen.pollinations.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = PollinationAI_SDK.Configuration(
    host = "https://gen.pollinations.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure Bearer authorization (API Key): bearerAuth
configuration = PollinationAI_SDK.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)


# Enter a context with an instance of the API client
with PollinationAI_SDK.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = PollinationAI_SDK.GenPollinationsAiApi(api_client)

    try:
        api_response = api_instance.get_account_balance()
        print("The response of GenPollinationsAiApi->get_account_balance:\n")
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling GenPollinationsAiApi->get_account_balance: %s\n" % e)

```

## Documentation for API Endpoints

All URIs are relative to *https://gen.pollinations.ai*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*GenPollinationsAiApi* | [**get_account_balance**](docs/GenPollinationsAiApi.md#get_account_balance) | **GET** /account/balance | 
*GenPollinationsAiApi* | [**get_account_key**](docs/GenPollinationsAiApi.md#get_account_key) | **GET** /account/key | 
*GenPollinationsAiApi* | [**get_account_profile**](docs/GenPollinationsAiApi.md#get_account_profile) | **GET** /account/profile | 
*GenPollinationsAiApi* | [**get_account_usage**](docs/GenPollinationsAiApi.md#get_account_usage) | **GET** /account/usage | 
*GenPollinationsAiApi* | [**get_account_usage_daily**](docs/GenPollinationsAiApi.md#get_account_usage_daily) | **GET** /account/usage/daily | 
*GenPollinationsAiApi* | [**get_generate_audio_by_text**](docs/GenPollinationsAiApi.md#get_generate_audio_by_text) | **GET** /audio/{text} | 
*GenPollinationsAiApi* | [**get_generate_audio_models**](docs/GenPollinationsAiApi.md#get_generate_audio_models) | **GET** /audio/models | 
*GenPollinationsAiApi* | [**get_generate_image_by_prompt**](docs/GenPollinationsAiApi.md#get_generate_image_by_prompt) | **GET** /image/{prompt} | 
*GenPollinationsAiApi* | [**get_generate_image_models**](docs/GenPollinationsAiApi.md#get_generate_image_models) | **GET** /image/models | 
*GenPollinationsAiApi* | [**get_generate_text_by_prompt**](docs/GenPollinationsAiApi.md#get_generate_text_by_prompt) | **GET** /text/{prompt} | 
*GenPollinationsAiApi* | [**get_generate_text_models**](docs/GenPollinationsAiApi.md#get_generate_text_models) | **GET** /text/models | 
*GenPollinationsAiApi* | [**get_generate_v1_models**](docs/GenPollinationsAiApi.md#get_generate_v1_models) | **GET** /v1/models | 
*GenPollinationsAiApi* | [**post_generate_v1_audio_speech**](docs/GenPollinationsAiApi.md#post_generate_v1_audio_speech) | **POST** /v1/audio/speech | 
*GenPollinationsAiApi* | [**post_generate_v1_audio_transcriptions**](docs/GenPollinationsAiApi.md#post_generate_v1_audio_transcriptions) | **POST** /v1/audio/transcriptions | 
*GenPollinationsAiApi* | [**post_generate_v1_chat_completions**](docs/GenPollinationsAiApi.md#post_generate_v1_chat_completions) | **POST** /v1/chat/completions | 


## Documentation For Models

 - [CacheControl](docs/CacheControl.md)
 - [CompletionUsage](docs/CompletionUsage.md)
 - [CompletionUsageCompletionTokensDetails](docs/CompletionUsageCompletionTokensDetails.md)
 - [CompletionUsagePromptTokensDetails](docs/CompletionUsagePromptTokensDetails.md)
 - [ContentFilterResult](docs/ContentFilterResult.md)
 - [ContentFilterResultHate](docs/ContentFilterResultHate.md)
 - [ContentFilterResultJailbreak](docs/ContentFilterResultJailbreak.md)
 - [ContentFilterSeverity](docs/ContentFilterSeverity.md)
 - [CreateSpeechRequest](docs/CreateSpeechRequest.md)
 - [ErrorDetails](docs/ErrorDetails.md)
 - [GetAccountBalance200Response](docs/GetAccountBalance200Response.md)
 - [GetAccountKey200Response](docs/GetAccountKey200Response.md)
 - [GetAccountKey200ResponsePermissions](docs/GetAccountKey200ResponsePermissions.md)
 - [GetAccountProfile200Response](docs/GetAccountProfile200Response.md)
 - [GetAccountUsage200Response](docs/GetAccountUsage200Response.md)
 - [GetAccountUsage200ResponseUsageInner](docs/GetAccountUsage200ResponseUsageInner.md)
 - [GetAccountUsageDaily200Response](docs/GetAccountUsageDaily200Response.md)
 - [GetAccountUsageDaily200ResponseUsageInner](docs/GetAccountUsageDaily200ResponseUsageInner.md)
 - [GetGenerateImageModels500Response](docs/GetGenerateImageModels500Response.md)
 - [GetGenerateImageModels500ResponseError](docs/GetGenerateImageModels500ResponseError.md)
 - [GetGenerateImageModels500ResponseErrorMessage](docs/GetGenerateImageModels500ResponseErrorMessage.md)
 - [GetGenerateTextByPrompt400Response](docs/GetGenerateTextByPrompt400Response.md)
 - [GetGenerateTextByPrompt400ResponseError](docs/GetGenerateTextByPrompt400ResponseError.md)
 - [GetGenerateTextByPrompt400ResponseErrorMessage](docs/GetGenerateTextByPrompt400ResponseErrorMessage.md)
 - [GetGenerateTextByPrompt401Response](docs/GetGenerateTextByPrompt401Response.md)
 - [GetGenerateTextByPrompt401ResponseError](docs/GetGenerateTextByPrompt401ResponseError.md)
 - [GetGenerateTextByPrompt401ResponseErrorMessage](docs/GetGenerateTextByPrompt401ResponseErrorMessage.md)
 - [GetGenerateTextByPrompt402Response](docs/GetGenerateTextByPrompt402Response.md)
 - [GetGenerateTextByPrompt402ResponseError](docs/GetGenerateTextByPrompt402ResponseError.md)
 - [GetGenerateTextByPrompt402ResponseErrorMessage](docs/GetGenerateTextByPrompt402ResponseErrorMessage.md)
 - [GetGenerateTextByPrompt403Response](docs/GetGenerateTextByPrompt403Response.md)
 - [GetGenerateTextByPrompt403ResponseError](docs/GetGenerateTextByPrompt403ResponseError.md)
 - [GetGenerateTextByPrompt403ResponseErrorMessage](docs/GetGenerateTextByPrompt403ResponseErrorMessage.md)
 - [GetGenerateV1Models200Response](docs/GetGenerateV1Models200Response.md)
 - [GetGenerateV1Models200ResponseDataInner](docs/GetGenerateV1Models200ResponseDataInner.md)
 - [GetGenerateV1Models500Response](docs/GetGenerateV1Models500Response.md)
 - [GetGenerateV1Models500ResponseError](docs/GetGenerateV1Models500ResponseError.md)
 - [GetGenerateV1Models500ResponseErrorMessage](docs/GetGenerateV1Models500ResponseErrorMessage.md)
 - [MessageContentPart](docs/MessageContentPart.md)
 - [MessageContentPartAnyOf](docs/MessageContentPartAnyOf.md)
 - [MessageContentPartAnyOf1](docs/MessageContentPartAnyOf1.md)
 - [MessageContentPartAnyOf1InputAudio](docs/MessageContentPartAnyOf1InputAudio.md)
 - [MessageContentPartAnyOf2](docs/MessageContentPartAnyOf2.md)
 - [MessageContentPartAnyOf2File](docs/MessageContentPartAnyOf2File.md)
 - [MessageContentPartAnyOfVideoUrl](docs/MessageContentPartAnyOfVideoUrl.md)
 - [PostGenerateV1AudioTranscriptions200Response](docs/PostGenerateV1AudioTranscriptions200Response.md)
 - [PostGenerateV1ChatCompletions200Response](docs/PostGenerateV1ChatCompletions200Response.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInner](docs/PostGenerateV1ChatCompletions200ResponseChoicesInner.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerLogprobs](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerLogprobs.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerLogprobsContentInner](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerLogprobsContentInner.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerLogprobsContentInnerTopLogprobsInner](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerLogprobsContentInnerTopLogprobsInner.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerMessage](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerMessage.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageAudio](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageAudio.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInner](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInner.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInnerAnyOf](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInnerAnyOf.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInnerAnyOf1](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInnerAnyOf1.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInnerAnyOf1ImageUrl](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInnerAnyOf1ImageUrl.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInnerAnyOf2](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInnerAnyOf2.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInnerAnyOf3](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInnerAnyOf3.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInnerAnyOf4](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageContentBlocksInnerAnyOf4.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageToolCallsInner](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageToolCallsInner.md)
 - [PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageToolCallsInnerFunction](docs/PostGenerateV1ChatCompletions200ResponseChoicesInnerMessageToolCallsInnerFunction.md)
 - [PostGenerateV1ChatCompletions200ResponsePromptFilterResultsInner](docs/PostGenerateV1ChatCompletions200ResponsePromptFilterResultsInner.md)
 - [PostGenerateV1ChatCompletions400Response](docs/PostGenerateV1ChatCompletions400Response.md)
 - [PostGenerateV1ChatCompletions400ResponseError](docs/PostGenerateV1ChatCompletions400ResponseError.md)
 - [PostGenerateV1ChatCompletions400ResponseErrorMessage](docs/PostGenerateV1ChatCompletions400ResponseErrorMessage.md)
 - [PostGenerateV1ChatCompletions401Response](docs/PostGenerateV1ChatCompletions401Response.md)
 - [PostGenerateV1ChatCompletions401ResponseError](docs/PostGenerateV1ChatCompletions401ResponseError.md)
 - [PostGenerateV1ChatCompletions401ResponseErrorMessage](docs/PostGenerateV1ChatCompletions401ResponseErrorMessage.md)
 - [PostGenerateV1ChatCompletions402Response](docs/PostGenerateV1ChatCompletions402Response.md)
 - [PostGenerateV1ChatCompletions402ResponseError](docs/PostGenerateV1ChatCompletions402ResponseError.md)
 - [PostGenerateV1ChatCompletions402ResponseErrorMessage](docs/PostGenerateV1ChatCompletions402ResponseErrorMessage.md)
 - [PostGenerateV1ChatCompletions403Response](docs/PostGenerateV1ChatCompletions403Response.md)
 - [PostGenerateV1ChatCompletions403ResponseError](docs/PostGenerateV1ChatCompletions403ResponseError.md)
 - [PostGenerateV1ChatCompletions403ResponseErrorMessage](docs/PostGenerateV1ChatCompletions403ResponseErrorMessage.md)
 - [PostGenerateV1ChatCompletionsRequest](docs/PostGenerateV1ChatCompletionsRequest.md)
 - [PostGenerateV1ChatCompletionsRequestAudio](docs/PostGenerateV1ChatCompletionsRequestAudio.md)
 - [PostGenerateV1ChatCompletionsRequestFunctionCall](docs/PostGenerateV1ChatCompletionsRequestFunctionCall.md)
 - [PostGenerateV1ChatCompletionsRequestFunctionCallAnyOf](docs/PostGenerateV1ChatCompletionsRequestFunctionCallAnyOf.md)
 - [PostGenerateV1ChatCompletionsRequestFunctionsInner](docs/PostGenerateV1ChatCompletionsRequestFunctionsInner.md)
 - [PostGenerateV1ChatCompletionsRequestMessagesInner](docs/PostGenerateV1ChatCompletionsRequestMessagesInner.md)
 - [PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf](docs/PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf.md)
 - [PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf1](docs/PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf1.md)
 - [PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf1Content](docs/PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf1Content.md)
 - [PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf2](docs/PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf2.md)
 - [PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf3](docs/PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf3.md)
 - [PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf3FunctionCall](docs/PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf3FunctionCall.md)
 - [PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf3ToolCallsInner](docs/PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf3ToolCallsInner.md)
 - [PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf3ToolCallsInnerFunction](docs/PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf3ToolCallsInnerFunction.md)
 - [PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf4](docs/PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf4.md)
 - [PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf5](docs/PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOf5.md)
 - [PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOfContent](docs/PostGenerateV1ChatCompletionsRequestMessagesInnerAnyOfContent.md)
 - [PostGenerateV1ChatCompletionsRequestResponseFormat](docs/PostGenerateV1ChatCompletionsRequestResponseFormat.md)
 - [PostGenerateV1ChatCompletionsRequestResponseFormatAnyOf](docs/PostGenerateV1ChatCompletionsRequestResponseFormatAnyOf.md)
 - [PostGenerateV1ChatCompletionsRequestResponseFormatAnyOf1](docs/PostGenerateV1ChatCompletionsRequestResponseFormatAnyOf1.md)
 - [PostGenerateV1ChatCompletionsRequestResponseFormatAnyOf1JsonSchema](docs/PostGenerateV1ChatCompletionsRequestResponseFormatAnyOf1JsonSchema.md)
 - [PostGenerateV1ChatCompletionsRequestResponseFormatAnyOf2](docs/PostGenerateV1ChatCompletionsRequestResponseFormatAnyOf2.md)
 - [PostGenerateV1ChatCompletionsRequestStop](docs/PostGenerateV1ChatCompletionsRequestStop.md)
 - [PostGenerateV1ChatCompletionsRequestStreamOptions](docs/PostGenerateV1ChatCompletionsRequestStreamOptions.md)
 - [PostGenerateV1ChatCompletionsRequestThinking](docs/PostGenerateV1ChatCompletionsRequestThinking.md)
 - [PostGenerateV1ChatCompletionsRequestToolChoice](docs/PostGenerateV1ChatCompletionsRequestToolChoice.md)
 - [PostGenerateV1ChatCompletionsRequestToolChoiceAnyOf](docs/PostGenerateV1ChatCompletionsRequestToolChoiceAnyOf.md)
 - [PostGenerateV1ChatCompletionsRequestToolChoiceAnyOfFunction](docs/PostGenerateV1ChatCompletionsRequestToolChoiceAnyOfFunction.md)
 - [PostGenerateV1ChatCompletionsRequestToolsInner](docs/PostGenerateV1ChatCompletionsRequestToolsInner.md)
 - [PostGenerateV1ChatCompletionsRequestToolsInnerAnyOf](docs/PostGenerateV1ChatCompletionsRequestToolsInnerAnyOf.md)
 - [PostGenerateV1ChatCompletionsRequestToolsInnerAnyOf1](docs/PostGenerateV1ChatCompletionsRequestToolsInnerAnyOf1.md)
 - [PostGenerateV1ChatCompletionsRequestToolsInnerAnyOfFunction](docs/PostGenerateV1ChatCompletionsRequestToolsInnerAnyOfFunction.md)
 - [ValidationErrorDetails](docs/ValidationErrorDetails.md)


<a id="documentation-for-authorization"></a>
## Documentation For Authorization


Authentication schemes defined for the API:
<a id="bearerAuth"></a>
### bearerAuth

- **Type**: Bearer authentication (API Key)


## Author




