Skip to content

Commit c223a89

Browse files
chore: regenerate from OpenAPI spec
- Auto-generated SDK updates - Version: v0.0.562
1 parent a3d4bf1 commit c223a89

19 files changed

Lines changed: 2242 additions & 15 deletions

.openapi-generator/FILES

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1186,6 +1186,9 @@ docs/Model/RemoveBookmark200Response.md
11861186
docs/Model/RemoveConversionAssociations200Response.md
11871187
docs/Model/RemoveDiscordMemberRole200Response.md
11881188
docs/Model/RemoveWhatsAppGroupParticipantsRequest.md
1189+
docs/Model/ReplaceAdAudienceCompanies200Response.md
1190+
docs/Model/ReplaceAdAudienceCompaniesRequest.md
1191+
docs/Model/ReplaceAdAudienceCompaniesRequestCompaniesInner.md
11891192
docs/Model/ReplyToGoogleBusinessReview200Response.md
11901193
docs/Model/ReplyToGoogleBusinessReviewRequest.md
11911194
docs/Model/ReplyToInboxPost200Response.md
@@ -2943,6 +2946,9 @@ lib/Model/RemoveBookmark200Response.php
29432946
lib/Model/RemoveConversionAssociations200Response.php
29442947
lib/Model/RemoveDiscordMemberRole200Response.php
29452948
lib/Model/RemoveWhatsAppGroupParticipantsRequest.php
2949+
lib/Model/ReplaceAdAudienceCompanies200Response.php
2950+
lib/Model/ReplaceAdAudienceCompaniesRequest.php
2951+
lib/Model/ReplaceAdAudienceCompaniesRequestCompaniesInner.php
29462952
lib/Model/ReplyToGoogleBusinessReview200Response.php
29472953
lib/Model/ReplyToGoogleBusinessReviewRequest.php
29482954
lib/Model/ReplyToInboxPost200Response.php
@@ -3513,4 +3519,6 @@ lib/Model/YouTubeVideoRetentionResponse.php
35133519
lib/Model/YouTubeVideoRetentionResponseRetentionCurveInner.php
35143520
lib/ObjectSerializer.php
35153521
phpunit.xml.dist
3516-
test/Model/ListAdVideos200ResponseTest.php
3522+
test/Model/ReplaceAdAudienceCompanies200ResponseTest.php
3523+
test/Model/ReplaceAdAudienceCompaniesRequestCompaniesInnerTest.php
3524+
test/Model/ReplaceAdAudienceCompaniesRequestTest.php

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ Class | Method | HTTP request | Description
113113
*AdAudiencesApi* | [**deleteAdAudience**](docs/Api/AdAudiencesApi.md#deleteadaudience) | **DELETE** /v1/ads/audiences/{audienceId} | Delete custom audience
114114
*AdAudiencesApi* | [**getAdAudience**](docs/Api/AdAudiencesApi.md#getadaudience) | **GET** /v1/ads/audiences/{audienceId} | Get audience details
115115
*AdAudiencesApi* | [**listAdAudiences**](docs/Api/AdAudiencesApi.md#listadaudiences) | **GET** /v1/ads/audiences | List custom audiences
116+
*AdAudiencesApi* | [**replaceAdAudienceCompanies**](docs/Api/AdAudiencesApi.md#replaceadaudiencecompanies) | **POST** /v1/ads/audiences/{audienceId}/companies | Replace audience companies
116117
*AdAudiencesApi* | [**updateAdAudience**](docs/Api/AdAudiencesApi.md#updateadaudience) | **PUT** /v1/ads/audiences/{audienceId} | Update an audience
117118
*AdCampaignsApi* | [**boostPost**](docs/Api/AdCampaignsApi.md#boostpost) | **POST** /v1/ads/boost | Boost post as ad
118119
*AdCampaignsApi* | [**bulkUpdateAdCampaignStatus**](docs/Api/AdCampaignsApi.md#bulkupdateadcampaignstatus) | **POST** /v1/ads/campaigns/bulk-status | Pause or resume many campaigns
@@ -1750,6 +1751,9 @@ Class | Method | HTTP request | Description
17501751
- [RemoveConversionAssociations200Response](docs/Model/RemoveConversionAssociations200Response.md)
17511752
- [RemoveDiscordMemberRole200Response](docs/Model/RemoveDiscordMemberRole200Response.md)
17521753
- [RemoveWhatsAppGroupParticipantsRequest](docs/Model/RemoveWhatsAppGroupParticipantsRequest.md)
1754+
- [ReplaceAdAudienceCompanies200Response](docs/Model/ReplaceAdAudienceCompanies200Response.md)
1755+
- [ReplaceAdAudienceCompaniesRequest](docs/Model/ReplaceAdAudienceCompaniesRequest.md)
1756+
- [ReplaceAdAudienceCompaniesRequestCompaniesInner](docs/Model/ReplaceAdAudienceCompaniesRequestCompaniesInner.md)
17531757
- [ReplyToGoogleBusinessReview200Response](docs/Model/ReplyToGoogleBusinessReview200Response.md)
17541758
- [ReplyToGoogleBusinessReviewRequest](docs/Model/ReplyToGoogleBusinessReviewRequest.md)
17551759
- [ReplyToInboxPost200Response](docs/Model/ReplyToInboxPost200Response.md)

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,5 +43,5 @@
4343
"Zernio\\Test\\": "test/"
4444
}
4545
},
46-
"version": "0.0.561"
46+
"version": "0.0.562"
4747
}

docs/Api/AdAudiencesApi.md

Lines changed: 65 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ All URIs are relative to https://zernio.com/api, except if the operation defines
1111
| [**deleteAdAudience()**](AdAudiencesApi.md#deleteAdAudience) | **DELETE** /v1/ads/audiences/{audienceId} | Delete custom audience |
1212
| [**getAdAudience()**](AdAudiencesApi.md#getAdAudience) | **GET** /v1/ads/audiences/{audienceId} | Get audience details |
1313
| [**listAdAudiences()**](AdAudiencesApi.md#listAdAudiences) | **GET** /v1/ads/audiences | List custom audiences |
14+
| [**replaceAdAudienceCompanies()**](AdAudiencesApi.md#replaceAdAudienceCompanies) | **POST** /v1/ads/audiences/{audienceId}/companies | Replace audience companies |
1415
| [**updateAdAudience()**](AdAudiencesApi.md#updateAdAudience) | **PUT** /v1/ads/audiences/{audienceId} | Update an audience |
1516

1617

@@ -22,7 +23,7 @@ addUsersToAdAudience($audience_id, $add_users_to_ad_audience_request): \Zernio\M
2223

2324
Add users to audience
2425

25-
Upload user data to a customer_list audience. Data is SHA256-hashed server-side before sending to the platform. Email is used on every platform; phone is used on Meta only (other platforms ignore it). On TikTok and Pinterest, the first upload also provisions the audience (deferred create). LinkedIn uploads are full-replace. Max 10,000 users per request.
26+
Upload user data to a customer_list audience. Data is SHA256-hashed server-side before sending to the platform. Email is used on every platform; phone is used on Meta only (other platforms ignore it). On TikTok and Pinterest, the first upload also provisions the audience (deferred create). LinkedIn uploads are full-replace. Max 10,000 users per request. customer_list only. A LinkedIn `company_list` audience takes company rows, not people: send those to `POST /v1/ads/audiences/{audienceId}/companies`. This endpoint 422s for every other audience type.
2627

2728
### Example
2829

@@ -84,7 +85,7 @@ createAdAudience($create_ad_audience_request): \Zernio\Model\CreateAdAudience201
8485

8586
Create custom audience
8687

87-
Create a custom audience. `customer_list` is supported on Meta, Google, X, LinkedIn, TikTok, and Pinterest; `website` and `lookalike` are Meta-only. `saved_targeting` stores a reusable TargetingSpec (no member upload, no adAccountId) that you reference later via `savedTargetingId` on `POST /v1/ads/create`. Upload-backed audiences are created empty, add members via `POST /v1/ads/audiences/{audienceId}/users`. On TikTok and Pinterest the audience is provisioned lazily on the first member upload (until then its status is `pending`). Create is not idempotent, never auto-retry.
88+
Create a custom audience. `customer_list` is supported on Meta, Google, X, LinkedIn, TikTok, and Pinterest; `website` and `lookalike` are Meta-only; `company_list`, `engagement` and `website_retargeting` are LinkedIn-only. `saved_targeting` stores a reusable TargetingSpec (no member upload, no adAccountId) that you reference later via `savedTargetingId` on `POST /v1/ads/create`. How the audience gets filled depends on the type: - `customer_list` is created empty. Add members with `POST /v1/ads/audiences/{audienceId}/users`. On TikTok and Pinterest the audience is provisioned lazily on that first upload (until then its status is `pending`). - `company_list` is filled AT CREATION from the `companies` array below, which is required. To change the list afterwards send the new full list to `POST /v1/ads/audiences/{audienceId}/companies` (a replace, not a merge). The `/users` endpoint rejects these audiences with a 422. - `website`, `website_retargeting`, `engagement`, `meta_engagement` and `lookalike` fill themselves from the pixel, engagement source or seed audience you point them at. They take no member upload at all. Create is not idempotent, never auto-retry.
8889

8990
### Example
9091

@@ -322,6 +323,68 @@ try {
322323
[[Back to Model list]](../../README.md#models)
323324
[[Back to README]](../../README.md)
324325

326+
## `replaceAdAudienceCompanies()`
327+
328+
```php
329+
replaceAdAudienceCompanies($audience_id, $replace_ad_audience_companies_request): \Zernio\Model\ReplaceAdAudienceCompanies200Response
330+
```
331+
332+
Replace audience companies
333+
334+
Upload the company rows of a LinkedIn `company_list` audience (account-based marketing). LinkedIn-only, every other platform returns 422. A LinkedIn audience segment holds exactly one uploaded list, so the list you send here REPLACES the segment's list instead of being appended to it: always send the full set of companies. LinkedIn returns only the identifier of the uploaded file, never its rows, so the merge cannot be done for you, keep the source list on your side. LinkedIn does not document how quickly companies dropped from the list stop being targeted, so treat removals as eventual rather than immediate. Rows are plain text (not hashed), matched against LinkedIn's own company graph. Matching is asynchronous: LinkedIn takes up to 48h for a new audience and up to 24h for a later update, and the audience stays `processing` meanwhile. LinkedIn recommends at least 1,000 companies for a usable match rate, and caps a list at 300,000. The initial list is sent with `companies` on `POST /v1/ads/audiences`; this endpoint is for every change after that.
335+
336+
### Example
337+
338+
```php
339+
<?php
340+
require_once(__DIR__ . '/vendor/autoload.php');
341+
342+
343+
// Configure Bearer (JWT) authorization: bearerAuth
344+
$config = Zernio\Configuration::getDefaultConfiguration()->setAccessToken('YOUR_ACCESS_TOKEN');
345+
346+
347+
$apiInstance = new Zernio\Api\AdAudiencesApi(
348+
// If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
349+
// This is optional, `GuzzleHttp\Client` will be used as default.
350+
new GuzzleHttp\Client(),
351+
$config
352+
);
353+
$audience_id = 'audience_id_example'; // string
354+
$replace_ad_audience_companies_request = new \Zernio\Model\ReplaceAdAudienceCompaniesRequest(); // \Zernio\Model\ReplaceAdAudienceCompaniesRequest
355+
356+
try {
357+
$result = $apiInstance->replaceAdAudienceCompanies($audience_id, $replace_ad_audience_companies_request);
358+
print_r($result);
359+
} catch (Exception $e) {
360+
echo 'Exception when calling AdAudiencesApi->replaceAdAudienceCompanies: ', $e->getMessage(), PHP_EOL;
361+
}
362+
```
363+
364+
### Parameters
365+
366+
| Name | Type | Description | Notes |
367+
| ------------- | ------------- | ------------- | ------------- |
368+
| **audience_id** | **string**| | |
369+
| **replace_ad_audience_companies_request** | [**\Zernio\Model\ReplaceAdAudienceCompaniesRequest**](../Model/ReplaceAdAudienceCompaniesRequest.md)| | |
370+
371+
### Return type
372+
373+
[**\Zernio\Model\ReplaceAdAudienceCompanies200Response**](../Model/ReplaceAdAudienceCompanies200Response.md)
374+
375+
### Authorization
376+
377+
[bearerAuth](../../README.md#bearerAuth)
378+
379+
### HTTP request headers
380+
381+
- **Content-Type**: `application/json`
382+
- **Accept**: `application/json`
383+
384+
[[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
385+
[[Back to Model list]](../../README.md#models)
386+
[[Back to README]](../../README.md)
387+
325388
## `updateAdAudience()`
326389

327390
```php

docs/Model/CreateAdAudienceRequest.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
1414
**trigger** | **string** | Required for engagement audiences. The action, validated by LinkedIn against &#x60;sourceType&#x60;. Common values: VIDEO_ADS FIRST_QUARTILE / MIDPOINT / THIRD_QUARTILE / FULL_COMPLETE; LEAD_GEN_FORMS VIEW_FORM / LEAD_FORM_SUBMIT; ORGANIZATION_PAGES VIEW / CTA_CLICK; EVENT_PAGES RSVPED / VIDEO_VIEWED / ENGAGEMENT / CLICK. | [optional]
1515
**lookback_days** | **int** | Required for engagement audiences. Rolling window. | [optional]
1616
**engagement_sources** | **string[]** | Required for engagement audiences. Campaign URNs for the ad source types, organization URNs for pages and events. LinkedIn creates one rule per source, all sharing the same trigger and lookbackDays. | [optional]
17-
**companies** | [**\Zernio\Model\UploadedOrDerivedAudienceCompaniesInner[]**](UploadedOrDerivedAudienceCompaniesInner.md) | Required for company_list audiences (LinkedIn only): plain-text company rows for account targeting. Each row needs at least one identifier. LinkedIn recommends 1,000+ companies for a usable match rate and takes up to 48h to process the list. | [optional]
17+
**companies** | [**\Zernio\Model\UploadedOrDerivedAudienceCompaniesInner[]**](UploadedOrDerivedAudienceCompaniesInner.md) | Required for company_list audiences (LinkedIn only): plain-text company rows for account targeting. Each row needs at least one identifier. Not hashed, LinkedIn matches these against its own company graph. LinkedIn recommends 1,000+ companies for a usable match rate and takes up to 48h to process the list. Replace the list later with POST /v1/ads/audiences/{audienceId}/companies. | [optional]
1818
**pixel_id** | **string** | Required for website audiences | [optional]
1919
**retention_days** | **int** | Required for website (max 180) and meta_engagement (max 365) audiences. | [optional]
2020
**engagement_source** | **string** | Required for meta_engagement audiences (Meta only): what people engaged with. &#x60;page&#x60; &#x3D; a Facebook Page, &#x60;instagram&#x60; &#x3D; an IG professional account, &#x60;video&#x60; &#x3D; a video. The source object must be eligible for engagement audiences or Meta rejects with subcode 1713151 (\&quot;Invalid Event Name\&quot;), surfaced verbatim. | [optional]
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# # ReplaceAdAudienceCompanies200Response
2+
3+
## Properties
4+
5+
Name | Type | Description | Notes
6+
------------ | ------------- | ------------- | -------------
7+
**message** | **string** | | [optional]
8+
**num_received** | **int** | Rows sent to LinkedIn. Matching happens asynchronously, so this is not the matched company count. | [optional]
9+
10+
[[Back to Model list]](../../README.md#models) [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# # ReplaceAdAudienceCompaniesRequest
2+
3+
## Properties
4+
5+
Name | Type | Description | Notes
6+
------------ | ------------- | ------------- | -------------
7+
**companies** | [**\Zernio\Model\ReplaceAdAudienceCompaniesRequestCompaniesInner[]**](ReplaceAdAudienceCompaniesRequestCompaniesInner.md) | The complete company list. Each row needs at least one of name, domain, website or linkedinPageUrl. |
8+
9+
[[Back to Model list]](../../README.md#models) [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# # ReplaceAdAudienceCompaniesRequestCompaniesInner
2+
3+
## Properties
4+
5+
Name | Type | Description | Notes
6+
------------ | ------------- | ------------- | -------------
7+
**name** | **string** | | [optional]
8+
**domain** | **string** | | [optional]
9+
**website** | **string** | | [optional]
10+
**linkedin_page_url** | **string** | | [optional]
11+
12+
[[Back to Model list]](../../README.md#models) [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)

docs/Model/UploadedOrDerivedAudience.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
1414
**trigger** | **string** | Required for engagement audiences. The action, validated by LinkedIn against &#x60;sourceType&#x60;. Common values: VIDEO_ADS FIRST_QUARTILE / MIDPOINT / THIRD_QUARTILE / FULL_COMPLETE; LEAD_GEN_FORMS VIEW_FORM / LEAD_FORM_SUBMIT; ORGANIZATION_PAGES VIEW / CTA_CLICK; EVENT_PAGES RSVPED / VIDEO_VIEWED / ENGAGEMENT / CLICK. | [optional]
1515
**lookback_days** | **int** | Required for engagement audiences. Rolling window. | [optional]
1616
**engagement_sources** | **string[]** | Required for engagement audiences. Campaign URNs for the ad source types, organization URNs for pages and events. LinkedIn creates one rule per source, all sharing the same trigger and lookbackDays. | [optional]
17-
**companies** | [**\Zernio\Model\UploadedOrDerivedAudienceCompaniesInner[]**](UploadedOrDerivedAudienceCompaniesInner.md) | Required for company_list audiences (LinkedIn only): plain-text company rows for account targeting. Each row needs at least one identifier. LinkedIn recommends 1,000+ companies for a usable match rate and takes up to 48h to process the list. | [optional]
17+
**companies** | [**\Zernio\Model\UploadedOrDerivedAudienceCompaniesInner[]**](UploadedOrDerivedAudienceCompaniesInner.md) | Required for company_list audiences (LinkedIn only): plain-text company rows for account targeting. Each row needs at least one identifier. Not hashed, LinkedIn matches these against its own company graph. LinkedIn recommends 1,000+ companies for a usable match rate and takes up to 48h to process the list. Replace the list later with POST /v1/ads/audiences/{audienceId}/companies. | [optional]
1818
**pixel_id** | **string** | Required for website audiences | [optional]
1919
**retention_days** | **int** | Required for website (max 180) and meta_engagement (max 365) audiences. | [optional]
2020
**engagement_source** | **string** | Required for meta_engagement audiences (Meta only): what people engaged with. &#x60;page&#x60; &#x3D; a Facebook Page, &#x60;instagram&#x60; &#x3D; an IG professional account, &#x60;video&#x60; &#x3D; a video. The source object must be eligible for engagement audiences or Meta rejects with subcode 1713151 (\&quot;Invalid Event Name\&quot;), surfaced verbatim. | [optional]

0 commit comments

Comments
 (0)