Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.0.1"
".": "0.1.0"
}
6 changes: 3 additions & 3 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 19
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/inf-labs/influship-api-3a7359b6f1bc29e6ba39142f71e31055407138bc92aac108c9de72dc3b0604a5.yml
openapi_spec_hash: b5814219a0ab7727c3571b1bbfc14ce3
config_hash: 32cf7a70e5eb35a8bead35d220e1eedb
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/inf-labs/influship-api-054b02bcedc6386e08d10961c2666007f205ab5690ff03ef5edb59c8d4a00fe8.yml
openapi_spec_hash: 176d6848a8602e7977797ee83ff6122d
config_hash: c98b7c9708fc0ee48d8b8170de41d163
67 changes: 67 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# Changelog

## 0.1.0 (2026-05-21)

Full Changelog: [v0.0.1...v0.1.0](https://github.com/Influship/influship-sdk-python/compare/v0.0.1...v0.1.0)

### Features

* **api:** add audience, brand alignment, key facts, vibe fields to creator response ([4c7bf09](https://github.com/Influship/influship-sdk-python/commit/4c7bf09985211ae6cb5c9784e8c60e186cf1f58f))
* **api:** add creator_kinds parameter to search.create method ([712759a](https://github.com/Influship/influship-sdk-python/commit/712759ae241285079b0060ff896dc25c5cb25237))
* **api:** add get_post/get_transcript methods to instagram, update post types ([c5d60ec](https://github.com/Influship/influship-sdk-python/commit/c5d60ec1b410ffcb49ece5ff68299d695ba9da36))
* **api:** add pagination to creators lookalike, extract MatchInfo type, fix cursor passing ([3be1022](https://github.com/Influship/influship-sdk-python/commit/3be10226051e066b82f26fd99170612908ddda3a))
* **api:** add raw resource with instagram/youtube endpoints ([d765413](https://github.com/Influship/influship-sdk-python/commit/d765413037084f7ad577d00b201a636a864c2f6b))
* **api:** add search_id/total fields, remove cursor param from search.create ([bbd32c2](https://github.com/Influship/influship-sdk-python/commit/bbd32c2e4391a9f31543862afed49f9fa9ca3d8a))
* **api:** remove source field from instagram transcript response types ([2c24026](https://github.com/Influship/influship-sdk-python/commit/2c240264f2abd9865713409ac1fb151f2479f261))
* **api:** update instagram profile and youtube channel/transcript responses ([8b83650](https://github.com/Influship/influship-sdk-python/commit/8b83650ce59ca2f00bb2b8c0f7f8005862a1849d))
* Fix Stainless pagination and model warnings in SDK config ([2ae3c29](https://github.com/Influship/influship-sdk-python/commit/2ae3c29275bfe74e3399f0ef0c0d950ae388531c))
* Fix timeout enforcement and migrate Instagram scraper to curl ([c1a121d](https://github.com/Influship/influship-sdk-python/commit/c1a121d337de698699c7dac5a1fb5814648083c9))
* **internal/types:** support eagerly validating pydantic iterators ([252fe69](https://github.com/Influship/influship-sdk-python/commit/252fe69b3d9652bb8ff9f2bf731d63006ec5b0af))
* **internal:** implement indices array format for query and form serialization ([b0fb922](https://github.com/Influship/influship-sdk-python/commit/b0fb922140eac09079b68be14a023d14a3f3a510))
* Remove app-level quota system and align billing/rate-limit enforcement with Stripe + Redis ([c7d8a60](https://github.com/Influship/influship-sdk-python/commit/c7d8a6012df2e31b92554e9a8374f1b3217bbe44))


### Bug Fixes

* **api:** make include parameter optional in creators retrieve method ([7dc834c](https://github.com/Influship/influship-sdk-python/commit/7dc834c23ef1d68df710b2de3baa996510c97b0d))
* **api:** move RawScraperError to shared types ([061b1e2](https://github.com/Influship/influship-sdk-python/commit/061b1e27385b033eb8966ebf8a02815b7dde26e4))
* **client:** add missing f-string prefix in file type error message ([cdd7fdb](https://github.com/Influship/influship-sdk-python/commit/cdd7fdb4104a72d2be89f7c6b48517abdb4285f4))
* **client:** preserve hardcoded query params when merging with user params ([77f87f2](https://github.com/Influship/influship-sdk-python/commit/77f87f2cca5dbacc34e894cf2c69e3f8f208842c))
* **deps:** bump minimum typing-extensions version ([1ebf842](https://github.com/Influship/influship-sdk-python/commit/1ebf84221a6cc9da7c4bcb414f47c4455f9b2dbe))
* ensure file data are only sent as 1 parameter ([76674d4](https://github.com/Influship/influship-sdk-python/commit/76674d4a000df97be89864108b9bf3923b4604f3))
* **pydantic:** do not pass `by_alias` unless set ([dba41e9](https://github.com/Influship/influship-sdk-python/commit/dba41e990d67482fc211cf0674e547c310a8eb26))
* sanitize endpoint path params ([825e363](https://github.com/Influship/influship-sdk-python/commit/825e363c5eb9b02a3e5fc5baa994fb711ea5cdab))
* **types:** remove model and provider from instagram transcript response types ([8944d7f](https://github.com/Influship/influship-sdk-python/commit/8944d7f405ad6e3597f397bebce7f13bc0df6fe3))


### Performance Improvements

* **client:** optimize file structure copying in multipart requests ([eca9767](https://github.com/Influship/influship-sdk-python/commit/eca97676e9a6a75faf45ea3bea0b8eefeac55b8b))


### Chores

* **ci:** skip lint on metadata-only changes ([5ee4369](https://github.com/Influship/influship-sdk-python/commit/5ee43696849a917cf7a65f66a8b298ebbc4fa2e7))
* **ci:** skip uploading artifacts on stainless-internal branches ([2c985c8](https://github.com/Influship/influship-sdk-python/commit/2c985c8141c06115d531bc9293bb1291a3d04d45))
* **internal:** add request options to SSE classes ([fa680d0](https://github.com/Influship/influship-sdk-python/commit/fa680d005639f7836e614b03c165791f1c64c0b3))
* **internal:** codegen related update ([6ed3406](https://github.com/Influship/influship-sdk-python/commit/6ed3406334c705ae2278a09a040b916c0432d9ae))
* **internal:** codegen related update ([a7d0c03](https://github.com/Influship/influship-sdk-python/commit/a7d0c03f03bae935f64b076c211d283ad9069495))
* **internal:** make `test_proxy_environment_variables` more resilient ([1775e30](https://github.com/Influship/influship-sdk-python/commit/1775e30216baabb1affe64be26b9455a35bc7a30))
* **internal:** make `test_proxy_environment_variables` more resilient to env ([2042983](https://github.com/Influship/influship-sdk-python/commit/20429833fae8ecd9dbe6eee1d140cdb9e0763260))
* **internal:** more robust bootstrap script ([09db9ca](https://github.com/Influship/influship-sdk-python/commit/09db9caf00714de6ccb7eccd314c0a903b6ea55f))
* **internal:** refactor Instagram response types to shared models, fix address_json type ([1ce31a9](https://github.com/Influship/influship-sdk-python/commit/1ce31a9406b653b08e333139febfb5acb01ca641))
* **internal:** reformat pyproject.toml ([c63d362](https://github.com/Influship/influship-sdk-python/commit/c63d362a824ea0145bb90d8be4e493463d32028c))
* **internal:** regenerate SDK with no functional changes ([2f56132](https://github.com/Influship/influship-sdk-python/commit/2f561321662c817f965ff9d4ad61e3b13f15de38))
* **internal:** tweak CI branches ([5eea6ab](https://github.com/Influship/influship-sdk-python/commit/5eea6ab384a360852d54e5617e92e0d8d090a12e))
* **internal:** update gitignore ([a47bc6c](https://github.com/Influship/influship-sdk-python/commit/a47bc6c615c786a620fad78eafb31927cbecc718))
* update Stainless production repos to influship org ([f92ef39](https://github.com/Influship/influship-sdk-python/commit/f92ef39428d669160509c279e52deb10343e2b2c))


### Documentation

* **api:** add MCP tool references to creators/posts/profiles/search methods ([fb75a8e](https://github.com/Influship/influship-sdk-python/commit/fb75a8eedb6c1e86edb35b94e82d0eb27b9f4537))
* **api:** correct profile to channel terminology in youtube channel method ([a8f561f](https://github.com/Influship/influship-sdk-python/commit/a8f561fde0da698d26689d699c394cbcb3475f8d))
* **api:** update instagram method docstrings ([9d881aa](https://github.com/Influship/influship-sdk-python/commit/9d881aadfbbc7d742d739042a96c973a9824573f))
* **api:** update pricing documentation across creators/posts/profiles/raw/search ([b82801e](https://github.com/Influship/influship-sdk-python/commit/b82801e0c5cc55dc0509e3a8ac412518ca9745ce))
* **internal:** update MCP server package name in installation links ([7d78559](https://github.com/Influship/influship-sdk-python/commit/7d78559d721175e453eea56d8fab60a0f4c9a229))
* update examples ([53aa0d6](https://github.com/Influship/influship-sdk-python/commit/53aa0d622795bdc2076f69d67ac51525b814f7d6))
3 changes: 1 addition & 2 deletions api.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Shared Types

```python
from influship.types import CreatorBasic, ProfileSummary
from influship.types import CreatorBasic, ProfileSummary, RawScraperError
```

# Health
Expand Down Expand Up @@ -91,7 +91,6 @@ Types:
from influship.types.raw import (
InstagramSinglePostResponse,
InstagramTranscriptResponse,
RawScraperError,
InstagramGetPostResponse,
InstagramGetPostsResponse,
InstagramGetProfileResponse,
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "influship"
version = "0.0.1"
version = "0.1.0"
description = "The official Python library for the Influship API"
dynamic = ["readme"]
license = "Apache-2.0"
Expand Down
2 changes: 1 addition & 1 deletion src/influship/_version.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

__title__ = "influship"
__version__ = "0.0.1" # x-release-please-version
__version__ = "0.1.0" # x-release-please-version
34 changes: 10 additions & 24 deletions src/influship/resources/raw/instagram.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,8 @@ def get_post(
product mentions, music attribution, location, display resources, and video
versions.

**Note:** These fields are only guaranteed on this raw single-post lookup for
now. Regular cached post-list endpoints may not include them yet.
**Note:** These fields are only guaranteed on this raw single-post lookup.
Cached post-list endpoints may not include them.

**Pricing**: 1 credit per post scraped ($0.01)

Expand Down Expand Up @@ -218,12 +218,7 @@ def get_transcript(
) -> InstagramGetTranscriptResponse:
"""
Transcribe an Instagram video post by shortcode and return the raw post-page
data used for transcription. For now this raw endpoint retranscribes every
request and piggybacks the post plus transcript into our database when the owner
account exists.

**Note:** Cached transcript reads are a planned follow-up; public pricing stays
the same for live and cached transcript delivery.
data used for transcription.

**Pricing**: 5 credits per transcript ($0.05)

Expand Down Expand Up @@ -273,10 +268,8 @@ def get_transcripts(
item per requested shortcode with per-item success or error details. Successful
items include the raw post-page data used for transcription.

**Note:** Batch transcription is capped at 10 shortcodes per request,
retranscribes every request for now, and is charged for every requested
shortcode. Cached transcript reads are a planned follow-up; public pricing stays
the same for live and cached transcript delivery.
**Note:** Batch transcription is capped at 10 shortcodes per request and is
charged for every requested shortcode.

**Pricing**: 5 credits per transcript ($0.05)

Expand Down Expand Up @@ -352,8 +345,8 @@ async def get_post(
product mentions, music attribution, location, display resources, and video
versions.

**Note:** These fields are only guaranteed on this raw single-post lookup for
now. Regular cached post-list endpoints may not include them yet.
**Note:** These fields are only guaranteed on this raw single-post lookup.
Cached post-list endpoints may not include them.

**Pricing**: 1 credit per post scraped ($0.01)

Expand Down Expand Up @@ -499,12 +492,7 @@ async def get_transcript(
) -> InstagramGetTranscriptResponse:
"""
Transcribe an Instagram video post by shortcode and return the raw post-page
data used for transcription. For now this raw endpoint retranscribes every
request and piggybacks the post plus transcript into our database when the owner
account exists.

**Note:** Cached transcript reads are a planned follow-up; public pricing stays
the same for live and cached transcript delivery.
data used for transcription.

**Pricing**: 5 credits per transcript ($0.05)

Expand Down Expand Up @@ -554,10 +542,8 @@ async def get_transcripts(
item per requested shortcode with per-item success or error details. Successful
items include the raw post-page data used for transcription.

**Note:** Batch transcription is capped at 10 shortcodes per request,
retranscribes every request for now, and is charged for every requested
shortcode. Cached transcript reads are a planned follow-up; public pricing stays
the same for live and cached transcript delivery.
**Note:** Batch transcription is capped at 10 shortcodes per request and is
charged for every requested shortcode.

**Pricing**: 5 credits per transcript ($0.05)

Expand Down
2 changes: 1 addition & 1 deletion src/influship/types/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

from __future__ import annotations

from .shared import CreatorBasic as CreatorBasic, ProfileSummary as ProfileSummary
from .shared import CreatorBasic as CreatorBasic, ProfileSummary as ProfileSummary, RawScraperError as RawScraperError
from .match_info import MatchInfo as MatchInfo
from .profile_growth import ProfileGrowth as ProfileGrowth
from .profile_metrics import ProfileMetrics as ProfileMetrics
Expand Down
1 change: 0 additions & 1 deletion src/influship/types/raw/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

from __future__ import annotations

from .raw_scraper_error import RawScraperError as RawScraperError
from .transcript_segment import TranscriptSegment as TranscriptSegment
from .youtube_search_params import YoutubeSearchParams as YoutubeSearchParams
from .youtube_search_response import YoutubeSearchResponse as YoutubeSearchResponse
Expand Down
2 changes: 1 addition & 1 deletion src/influship/types/raw/instagram_get_posts_response.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
from typing_extensions import Literal, TypeAlias

from ..._models import BaseModel
from .raw_scraper_error import RawScraperError
from ..shared.raw_scraper_error import RawScraperError
from .instagram_single_post_response import InstagramSinglePostResponse

__all__ = [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
from typing_extensions import Literal, TypeAlias

from ..._models import BaseModel
from .raw_scraper_error import RawScraperError
from ..shared.raw_scraper_error import RawScraperError
from .instagram_transcript_response import InstagramTranscriptResponse

__all__ = [
Expand Down
1 change: 1 addition & 0 deletions src/influship/types/shared/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@

from .creator_basic import CreatorBasic as CreatorBasic
from .profile_summary import ProfileSummary as ProfileSummary
from .raw_scraper_error import RawScraperError as RawScraperError
Loading