Open API v2 / Member Areas / Member Areas
Member Areas
→
Every request needs a bearer token: Authorization: Bearer <token>. Base URL https://your-site.webinone.com. New to field types? See the type reference.
Retrieves a list of member areas by using a "where" filtering
Parameters
Wherestring · query
JSON filter expression. Combine operators ($eq, $contains, $gt, $in, …) with $and / $or.
Order_Bystring · query
Sort field. Prefix with - for descending; comma-separate for tie-breakers.
Semantic_Querystring · query
Natural-language search, ranked by relevance.
Min_Scorenumber · query
Lowest relevance score to include when using Semantic_Query.
Offsetinteger · query
Number of items to skip before returning results. Defaults to 0.
Limitinteger · query
Maximum number of items to return. Defaults to 100.
Response
Idinteger
Unique identifier. Technical record number in the database. Read-only.
Namestring · nullable
Name of the secure zone.
LandingPageIdinteger
Selecting a Page here determines the page to redirect a user to after a Secure Zone signup form submission.
CountPaidSubscribersinteger
Number of users who have already paid.
MembersCountinteger
Total number of participants.
ExpiryDateTimestring · date-time
Expiry timestamp (ISO 8601).
ExpiryDateOptionstring · nullable
Expiry date option.
ExpiryAfterinteger
Expiry after.
AccessTypestring · nullable
Sets the access type to this Secure Zone.
PaymentIntervalstring · nullable
When 'Paid Access' type is applied, this option allows a billing recursion to the Secure Zone.
Pricesarray of objects
An array of objects with prices for different currencies/countries.
Valuenumber
The numerical value of the cost.
CurrencyCountryobject
Describes the financial and geographical anchoring of the price.
Hashinteger · nullable
Technical control number to verify data integrity.
CurrencyIdstring · nullable
This is the internal technical identifier of the currency in the database.
Currencystring · nullable
The generally accepted three-letter currency code by standard.
CountryIdstring · nullable
Internal system identifier of the country in the database.
CountryAbbreviationstring · nullable
Standard two-letter country code.
curl "https://your-site.webinone.com/api/v2/admin/member-areas" \ -H "Authorization: Bearer <token>"
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas", { method: "GET", headers: { "Authorization": "Bearer <token>" } });
import requests requests.get( "https://your-site.webinone.com/api/v2/admin/member-areas", headers={"Authorization": "Bearer <token>"} )
$client = new GuzzleHttp\Client(); $response = $client->request('GET', 'https://your-site.webinone.com/api/v2/admin/member-areas', [ 'headers' => [ 'Authorization' => 'Bearer <token>' ] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Get, "https://your-site.webinone.com/api/v2/admin/member-areas"); request.Headers.Add("Authorization", "Bearer <token>"); var response = await client.SendAsync(request);
Response · 200
{
"Items": [
{
"Id": 1,
"Name": "Example",
"LandingPageId": 1,
"CountPaidSubscribers": 0,
"MembersCount": 0,
"ExpiryDateTime": "2026-07-01T00: 00: 00Z",
"ExpiryDateOption": "string",
"ExpiryAfter": 0,
"AccessType": "string",
"PaymentInterval": "string",
"Prices": [
{
"Value": 0,
"CurrencyCountry": {
"Hash": 0,
"CurrencyId": "USD",
"Currency": "USD",
"CountryId": "string",
"CountryAbbreviation": "string"
}
}
]
}
],
"TotalItemsCount": 0
}Creates a new member area
Body parameters
Namestringrequired
Name of the secure zone.
LandingPageIdinteger · nullable
Selecting a Page here determines the page to redirect a user to after a Secure Zone signup form submission.
ExpiryDateOptionstring · nullable
Expiry date option.
ExpiryDateTimestring · date-time · nullable
Expiry timestamp (ISO 8601).
ExpiryAfterinteger · nullable
Expiry after.
AccessTypeenum
Sets the access type to this Secure Zone. "Free Access" allows subscriptions without requiring payment. "Paid Access" allows pricing to be assigned to the Secure Zone via subscription forms.Possible values: FreePaid
PaymentIntervalenum
When 'Paid Access' type is applied, this option allows a billing recursion to the Secure Zone. "Weekly" billing recurs every week from initial subscription date. "Monthly" billing recurs every month from initial subscription date. "Yearly" billing recurs every year from initial subscription date. "Daily" billing recurs every day from initial subscription date.Possible values: NoneDailyWeeklyFortnightlyMonthlyQuarterlyHalfYearlyYearly
Pricesarray of objects
An array of objects with prices for different currencies/countries. Available for AccessType=Paid. If AccessType=Free, an empty array is returned.
Valuenumber
The numerical value of the cost.
CurrencyCountryobject
Describes the financial and geographical anchoring of the price.
Hashinteger · nullable
Technical control number to verify data integrity.
CurrencyIdstring · nullable
This is the internal technical identifier of the currency in the database.
Currencystring · nullable
The generally accepted three-letter currency code by standard.
CountryIdstring · nullable
Internal system identifier of the country in the database.
CountryAbbreviationstring · nullable
Standard two-letter country code.
Response
Idinteger
Unique identifier. Technical record number in the database. Read-only.
Namestring · nullable
Name of the secure zone.
LandingPageIdinteger
Selecting a Page here determines the page to redirect a user to after a Secure Zone signup form submission.
CountPaidSubscribersinteger
Number of users who have already paid.
MembersCountinteger
Total number of participants.
ExpiryDateTimestring · date-time
Expiry timestamp (ISO 8601).
ExpiryDateOptionstring · nullable
Expiry date option.
ExpiryAfterinteger
Expiry after.
AccessTypestring · nullable
Sets the access type to this Secure Zone.
PaymentIntervalstring · nullable
When 'Paid Access' type is applied, this option allows a billing recursion to the Secure Zone.
Pricesarray of objects
An array of objects with prices for different currencies/countries.
Valuenumber
The numerical value of the cost.
CurrencyCountryobject
Describes the financial and geographical anchoring of the price.
Hashinteger · nullable
Technical control number to verify data integrity.
CurrencyIdstring · nullable
This is the internal technical identifier of the currency in the database.
Currencystring · nullable
The generally accepted three-letter currency code by standard.
CountryIdstring · nullable
Internal system identifier of the country in the database.
CountryAbbreviationstring · nullable
Standard two-letter country code.
curl -X POST "https://your-site.webinone.com/api/v2/admin/member-areas" \ -H "Authorization: Bearer <token>" \ -H "Content-Type: application/json" \ -d '{"Name":"Example","LandingPageId":1,"ExpiryDateOption":"string","ExpiryDateTime":"2026-07-01T00:00:00Z","ExpiryAfter":0,"AccessType":"Free","PaymentInterval":"None","Prices":[{"Value":0,"CurrencyCountry":{"Hash":0,"CurrencyId":"USD","Currency":"USD","CountryId":"string","CountryAbbreviation":"string"}}]}'
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas", { method: "POST", headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" }, body: JSON.stringify({ "Name": "Example", "LandingPageId": 1, "ExpiryDateOption": "string", "ExpiryDateTime": "2026-07-01T00:00:00Z", "ExpiryAfter": 0, "AccessType": "Free", "PaymentInterval": "None", "Prices": [ { "Value": 0, "CurrencyCountry": { "Hash": 0, "CurrencyId": "USD", "Currency": "USD", "CountryId": "string", "CountryAbbreviation": "string" } } ] }) });
import requests requests.post( "https://your-site.webinone.com/api/v2/admin/member-areas", headers={"Authorization": "Bearer <token>"}, json={ "Name": "Example", "LandingPageId": 1, "ExpiryDateOption": "string", "ExpiryDateTime": "2026-07-01T00:00:00Z", "ExpiryAfter": 0, "AccessType": "Free", "PaymentInterval": "None", "Prices": [{ "Value": 0, "CurrencyCountry": { "Hash": 0, "CurrencyId": "USD", "Currency": "USD", "CountryId": "string", "CountryAbbreviation": "string" } }] } )
$client = new GuzzleHttp\Client(); $response = $client->request('POST', 'https://your-site.webinone.com/api/v2/admin/member-areas', [ 'headers' => [ 'Authorization' => 'Bearer <token>', 'Content-Type' => 'application/json' ], 'json' => [ 'Name' => 'Example', 'LandingPageId' => 1, 'ExpiryDateOption' => 'string', 'ExpiryDateTime' => '2026-07-01T00:00:00Z', 'ExpiryAfter' => 0, 'AccessType' => 'Free', 'PaymentInterval' => 'None', 'Prices' => [[ 'Value' => 0, 'CurrencyCountry' => [ 'Hash' => 0, 'CurrencyId' => 'USD', 'Currency' => 'USD', 'CountryId' => 'string', 'CountryAbbreviation' => 'string' ] ]] ] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Post, "https://your-site.webinone.com/api/v2/admin/member-areas"); request.Headers.Add("Authorization", "Bearer <token>"); request.Content = new StringContent( "{\"Name\":\"Example\",\"LandingPageId\":1,\"ExpiryDateOption\":\"string\",\"ExpiryDateTime\":\"2026-07-01T00:00:00Z\",\"ExpiryAfter\":0,\"AccessType\":\"Free\",\"PaymentInterval\":\"None\",\"Prices\":[{\"Value\":0,\"CurrencyCountry\":{\"Hash\":0,\"CurrencyId\":\"USD\",\"Currency\":\"USD\",\"CountryId\":\"string\",\"CountryAbbreviation\":\"string\"}}]}", Encoding.UTF8, "application/json"); var response = await client.SendAsync(request);
Response · 200
{
"Id": 1,
"Name": "Example",
"LandingPageId": 1,
"CountPaidSubscribers": 0,
"MembersCount": 0,
"ExpiryDateTime": "2026-07-01T00: 00: 00Z",
"ExpiryDateOption": "string",
"ExpiryAfter": 0,
"AccessType": "string",
"PaymentInterval": "string",
"Prices": [
{
"Value": 0,
"CurrencyCountry": {
"Hash": 0,
"CurrencyId": "USD",
"Currency": "USD",
"CountryId": "string",
"CountryAbbreviation": "string"
}
}
]
}Retrieves a single member area
Parameters
idinteger · pathrequired
Member area id.
Response
Idinteger
Unique identifier. Technical record number in the database. Read-only.
Namestring · nullable
Name of the secure zone.
LandingPageIdinteger
Selecting a Page here determines the page to redirect a user to after a Secure Zone signup form submission.
CountPaidSubscribersinteger
Number of users who have already paid.
MembersCountinteger
Total number of participants.
ExpiryDateTimestring · date-time
Expiry timestamp (ISO 8601).
ExpiryDateOptionstring · nullable
Expiry date option.
ExpiryAfterinteger
Expiry after.
AccessTypestring · nullable
Sets the access type to this Secure Zone.
PaymentIntervalstring · nullable
When 'Paid Access' type is applied, this option allows a billing recursion to the Secure Zone.
Pricesarray of objects
An array of objects with prices for different currencies/countries.
Valuenumber
The numerical value of the cost.
CurrencyCountryobject
Describes the financial and geographical anchoring of the price.
Hashinteger · nullable
Technical control number to verify data integrity.
CurrencyIdstring · nullable
This is the internal technical identifier of the currency in the database.
Currencystring · nullable
The generally accepted three-letter currency code by standard.
CountryIdstring · nullable
Internal system identifier of the country in the database.
CountryAbbreviationstring · nullable
Standard two-letter country code.
curl "https://your-site.webinone.com/api/v2/admin/member-areas/1" \ -H "Authorization: Bearer <token>"
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas/1", { method: "GET", headers: { "Authorization": "Bearer <token>" } });
import requests requests.get( "https://your-site.webinone.com/api/v2/admin/member-areas/1", headers={"Authorization": "Bearer <token>"} )
$client = new GuzzleHttp\Client(); $response = $client->request('GET', 'https://your-site.webinone.com/api/v2/admin/member-areas/1', [ 'headers' => [ 'Authorization' => 'Bearer <token>' ] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Get, "https://your-site.webinone.com/api/v2/admin/member-areas/1"); request.Headers.Add("Authorization", "Bearer <token>"); var response = await client.SendAsync(request);
Response · 200
{
"Id": 1,
"Name": "Example",
"LandingPageId": 1,
"CountPaidSubscribers": 0,
"MembersCount": 0,
"ExpiryDateTime": "2026-07-01T00: 00: 00Z",
"ExpiryDateOption": "string",
"ExpiryAfter": 0,
"AccessType": "string",
"PaymentInterval": "string",
"Prices": [
{
"Value": 0,
"CurrencyCountry": {
"Hash": 0,
"CurrencyId": "USD",
"Currency": "USD",
"CountryId": "string",
"CountryAbbreviation": "string"
}
}
]
}Updates an existing member area
Parameters
idinteger · pathrequired
Existent member area id.
Body parameters
Namestringrequired
Name of the secure zone.
LandingPageIdinteger · nullable
Selecting a Page here determines the page to redirect a user to after a Secure Zone signup form submission.
ExpiryDateOptionstring · nullable
Expiry date option.
ExpiryDateTimestring · date-time · nullable
Expiry timestamp (ISO 8601).
ExpiryAfterinteger · nullable
Expiry after.
AccessTypeenum
Sets the access type to this Secure Zone. "Free Access" allows subscriptions without requiring payment. "Paid Access" allows pricing to be assigned to the Secure Zone via subscription forms.Possible values: FreePaid
PaymentIntervalenum
When 'Paid Access' type is applied, this option allows a billing recursion to the Secure Zone. "Weekly" billing recurs every week from initial subscription date. "Monthly" billing recurs every month from initial subscription date. "Yearly" billing recurs every year from initial subscription date. "Daily" billing recurs every day from initial subscription date.Possible values: NoneDailyWeeklyFortnightlyMonthlyQuarterlyHalfYearlyYearly
Pricesarray of objects
An array of objects with prices for different currencies/countries. Available for AccessType=Paid. If AccessType=Free, an empty array is returned.
Valuenumber
The numerical value of the cost.
CurrencyCountryobject
Describes the financial and geographical anchoring of the price.
Hashinteger · nullable
Technical control number to verify data integrity.
CurrencyIdstring · nullable
This is the internal technical identifier of the currency in the database.
Currencystring · nullable
The generally accepted three-letter currency code by standard.
CountryIdstring · nullable
Internal system identifier of the country in the database.
CountryAbbreviationstring · nullable
Standard two-letter country code.
Response
Idinteger
Unique identifier. Technical record number in the database. Read-only.
Namestring · nullable
Name of the secure zone.
LandingPageIdinteger
Selecting a Page here determines the page to redirect a user to after a Secure Zone signup form submission.
CountPaidSubscribersinteger
Number of users who have already paid.
MembersCountinteger
Total number of participants.
ExpiryDateTimestring · date-time
Expiry timestamp (ISO 8601).
ExpiryDateOptionstring · nullable
Expiry date option.
ExpiryAfterinteger
Expiry after.
AccessTypestring · nullable
Sets the access type to this Secure Zone.
PaymentIntervalstring · nullable
When 'Paid Access' type is applied, this option allows a billing recursion to the Secure Zone.
Pricesarray of objects
An array of objects with prices for different currencies/countries.
Valuenumber
The numerical value of the cost.
CurrencyCountryobject
Describes the financial and geographical anchoring of the price.
Hashinteger · nullable
Technical control number to verify data integrity.
CurrencyIdstring · nullable
This is the internal technical identifier of the currency in the database.
Currencystring · nullable
The generally accepted three-letter currency code by standard.
CountryIdstring · nullable
Internal system identifier of the country in the database.
CountryAbbreviationstring · nullable
Standard two-letter country code.
curl -X PUT "https://your-site.webinone.com/api/v2/admin/member-areas/1" \ -H "Authorization: Bearer <token>" \ -H "Content-Type: application/json" \ -d '{"Name":"Example","LandingPageId":1,"ExpiryDateOption":"string","ExpiryDateTime":"2026-07-01T00:00:00Z","ExpiryAfter":0,"AccessType":"Free","PaymentInterval":"None","Prices":[{"Value":0,"CurrencyCountry":{"Hash":0,"CurrencyId":"USD","Currency":"USD","CountryId":"string","CountryAbbreviation":"string"}}]}'
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas/1", { method: "PUT", headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" }, body: JSON.stringify({ "Name": "Example", "LandingPageId": 1, "ExpiryDateOption": "string", "ExpiryDateTime": "2026-07-01T00:00:00Z", "ExpiryAfter": 0, "AccessType": "Free", "PaymentInterval": "None", "Prices": [ { "Value": 0, "CurrencyCountry": { "Hash": 0, "CurrencyId": "USD", "Currency": "USD", "CountryId": "string", "CountryAbbreviation": "string" } } ] }) });
import requests requests.put( "https://your-site.webinone.com/api/v2/admin/member-areas/1", headers={"Authorization": "Bearer <token>"}, json={ "Name": "Example", "LandingPageId": 1, "ExpiryDateOption": "string", "ExpiryDateTime": "2026-07-01T00:00:00Z", "ExpiryAfter": 0, "AccessType": "Free", "PaymentInterval": "None", "Prices": [{ "Value": 0, "CurrencyCountry": { "Hash": 0, "CurrencyId": "USD", "Currency": "USD", "CountryId": "string", "CountryAbbreviation": "string" } }] } )
$client = new GuzzleHttp\Client(); $response = $client->request('PUT', 'https://your-site.webinone.com/api/v2/admin/member-areas/1', [ 'headers' => [ 'Authorization' => 'Bearer <token>', 'Content-Type' => 'application/json' ], 'json' => [ 'Name' => 'Example', 'LandingPageId' => 1, 'ExpiryDateOption' => 'string', 'ExpiryDateTime' => '2026-07-01T00:00:00Z', 'ExpiryAfter' => 0, 'AccessType' => 'Free', 'PaymentInterval' => 'None', 'Prices' => [[ 'Value' => 0, 'CurrencyCountry' => [ 'Hash' => 0, 'CurrencyId' => 'USD', 'Currency' => 'USD', 'CountryId' => 'string', 'CountryAbbreviation' => 'string' ] ]] ] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Put, "https://your-site.webinone.com/api/v2/admin/member-areas/1"); request.Headers.Add("Authorization", "Bearer <token>"); request.Content = new StringContent( "{\"Name\":\"Example\",\"LandingPageId\":1,\"ExpiryDateOption\":\"string\",\"ExpiryDateTime\":\"2026-07-01T00:00:00Z\",\"ExpiryAfter\":0,\"AccessType\":\"Free\",\"PaymentInterval\":\"None\",\"Prices\":[{\"Value\":0,\"CurrencyCountry\":{\"Hash\":0,\"CurrencyId\":\"USD\",\"Currency\":\"USD\",\"CountryId\":\"string\",\"CountryAbbreviation\":\"string\"}}]}", Encoding.UTF8, "application/json"); var response = await client.SendAsync(request);
Response · 200
{
"Id": 1,
"Name": "Example",
"LandingPageId": 1,
"CountPaidSubscribers": 0,
"MembersCount": 0,
"ExpiryDateTime": "2026-07-01T00: 00: 00Z",
"ExpiryDateOption": "string",
"ExpiryAfter": 0,
"AccessType": "string",
"PaymentInterval": "string",
"Prices": [
{
"Value": 0,
"CurrencyCountry": {
"Hash": 0,
"CurrencyId": "USD",
"Currency": "USD",
"CountryId": "string",
"CountryAbbreviation": "string"
}
}
]
}Deletes an existing member area
Parameters
idinteger · pathrequired
Existent member area id.
curl -X DELETE "https://your-site.webinone.com/api/v2/admin/member-areas/1" \ -H "Authorization: Bearer <token>"
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas/1", { method: "DELETE", headers: { "Authorization": "Bearer <token>" } });
import requests requests.delete( "https://your-site.webinone.com/api/v2/admin/member-areas/1", headers={"Authorization": "Bearer <token>"} )
$client = new GuzzleHttp\Client(); $response = $client->request('DELETE', 'https://your-site.webinone.com/api/v2/admin/member-areas/1', [ 'headers' => [ 'Authorization' => 'Bearer <token>' ] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Delete, "https://your-site.webinone.com/api/v2/admin/member-areas/1"); request.Headers.Add("Authorization", "Bearer <token>"); var response = await client.SendAsync(request);
Creates a new member area members
Parameters
idstring · pathrequired
Existent member area id.
Body parameters
SendNotificationboolean
If true, the system will automatically send an email notification to each user about granting access.
MemberIdsarray of strings
A list of unique user IDs that are granted access.
SecureZonePointerobject
Reference to the secure zone the listed members are being added to.
Pointerinteger
Internal reference identifier that locates the target entity instance the pointer refers to.
TypeIdinteger
Identifier of the related type.
InstanceIdinteger
Identifier of the related instance.
DbTypeIdinteger
Identifier of the related db type.
DbInstanceIdinteger
Identifier of the related db instance.
curl -X POST "https://your-site.webinone.com/api/v2/admin/member-areas/1/add-members" \ -H "Authorization: Bearer <token>" \ -H "Content-Type: application/json" \ -d '{"SendNotification":false,"MemberIds":["string"],"SecureZonePointer":{"Pointer":0,"TypeId":1,"InstanceId":1,"DbTypeId":1,"DbInstanceId":1}}'
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas/1/add-members", { method: "POST", headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" }, body: JSON.stringify({ "SendNotification": false, "MemberIds": [ "string" ], "SecureZonePointer": { "Pointer": 0, "TypeId": 1, "InstanceId": 1, "DbTypeId": 1, "DbInstanceId": 1 } }) });
import requests requests.post( "https://your-site.webinone.com/api/v2/admin/member-areas/1/add-members", headers={"Authorization": "Bearer <token>"}, json={ "SendNotification": False, "MemberIds": ["string"], "SecureZonePointer": { "Pointer": 0, "TypeId": 1, "InstanceId": 1, "DbTypeId": 1, "DbInstanceId": 1 } } )
$client = new GuzzleHttp\Client(); $response = $client->request('POST', 'https://your-site.webinone.com/api/v2/admin/member-areas/1/add-members', [ 'headers' => [ 'Authorization' => 'Bearer <token>', 'Content-Type' => 'application/json' ], 'json' => [ 'SendNotification' => false, 'MemberIds' => ['string'], 'SecureZonePointer' => [ 'Pointer' => 0, 'TypeId' => 1, 'InstanceId' => 1, 'DbTypeId' => 1, 'DbInstanceId' => 1 ] ] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Post, "https://your-site.webinone.com/api/v2/admin/member-areas/1/add-members"); request.Headers.Add("Authorization", "Bearer <token>"); request.Content = new StringContent( "{\"SendNotification\":false,\"MemberIds\":[\"string\"],\"SecureZonePointer\":{\"Pointer\":0,\"TypeId\":1,\"InstanceId\":1,\"DbTypeId\":1,\"DbInstanceId\":1}}", Encoding.UTF8, "application/json"); var response = await client.SendAsync(request);
Retrieves a list of member area content
Parameters
idstring · pathrequired
Resource identifier.
moduleIdinteger · query
ModuleId.
moduleAliasstring · query
ModuleAlias.
Response
Securedarray of objects
The content URLs that are currently protected by the secure zone and require membership to access.
Idstring · nullable
Unique identifier. Technical record number in the database. Read-only.
Urlstring · nullable
The direct path or CDN link to the hosted file (e.g., /assets/docs/manual.pdf).
UnSecuredarray of objects
The content URLs that are publicly accessible and not protected by the secure zone.
Idstring · nullable
Unique identifier. Technical record number in the database. Read-only.
Urlstring · nullable
The direct path or CDN link to the hosted file (e.g., /assets/docs/manual.pdf).
curl "https://your-site.webinone.com/api/v2/admin/member-areas/1/content" \ -H "Authorization: Bearer <token>"
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas/1/content", { method: "GET", headers: { "Authorization": "Bearer <token>" } });
import requests requests.get( "https://your-site.webinone.com/api/v2/admin/member-areas/1/content", headers={"Authorization": "Bearer <token>"} )
$client = new GuzzleHttp\Client(); $response = $client->request('GET', 'https://your-site.webinone.com/api/v2/admin/member-areas/1/content', [ 'headers' => [ 'Authorization' => 'Bearer <token>' ] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Get, "https://your-site.webinone.com/api/v2/admin/member-areas/1/content"); request.Headers.Add("Authorization", "Bearer <token>"); var response = await client.SendAsync(request);
Response · 200
{
"Secured": [
{
"Id": "string",
"Url": "https://example.com"
}
],
"UnSecured": [
{
"Id": "string",
"Url": "https://example.com"
}
]
}Creates a new member area content
Parameters
idstring · pathrequired
Existent member area id.
Body parameters
ContentIdsarray of strings
An array of unique identifiers. Can contain page IDs, content blocks, or media files.
Response
Idinteger
Unique identifier. Technical record number in the database. Read-only.
Namestring · nullable
Name of the secure zone.
LandingPageIdinteger
Selecting a Page here determines the page to redirect a user to after a Secure Zone signup form submission.
CountPaidSubscribersinteger
Number of users who have already paid.
MembersCountinteger
Total number of participants.
ExpiryDateTimestring · date-time
Expiry timestamp (ISO 8601).
ExpiryDateOptionstring · nullable
Expiry date option.
ExpiryAfterinteger
Expiry after.
AccessTypestring · nullable
Sets the access type to this Secure Zone.
PaymentIntervalstring · nullable
When 'Paid Access' type is applied, this option allows a billing recursion to the Secure Zone.
Pricesarray of objects
An array of objects with prices for different currencies/countries.
Valuenumber
The numerical value of the cost.
CurrencyCountryobject
Describes the financial and geographical anchoring of the price.
Hashinteger · nullable
Technical control number to verify data integrity.
CurrencyIdstring · nullable
This is the internal technical identifier of the currency in the database.
Currencystring · nullable
The generally accepted three-letter currency code by standard.
CountryIdstring · nullable
Internal system identifier of the country in the database.
CountryAbbreviationstring · nullable
Standard two-letter country code.
curl -X POST "https://your-site.webinone.com/api/v2/admin/member-areas/1/content" \ -H "Authorization: Bearer <token>" \ -H "Content-Type: application/json" \ -d '{"ContentIds":["string"]}'
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas/1/content", { method: "POST", headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" }, body: JSON.stringify({ "ContentIds": [ "string" ] }) });
import requests requests.post( "https://your-site.webinone.com/api/v2/admin/member-areas/1/content", headers={"Authorization": "Bearer <token>"}, json={ "ContentIds": ["string"] } )
$client = new GuzzleHttp\Client(); $response = $client->request('POST', 'https://your-site.webinone.com/api/v2/admin/member-areas/1/content', [ 'headers' => [ 'Authorization' => 'Bearer <token>', 'Content-Type' => 'application/json' ], 'json' => [ 'ContentIds' => ['string'] ] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Post, "https://your-site.webinone.com/api/v2/admin/member-areas/1/content"); request.Headers.Add("Authorization", "Bearer <token>"); request.Content = new StringContent( "{\"ContentIds\":[\"string\"]}", Encoding.UTF8, "application/json"); var response = await client.SendAsync(request);
Response · 200
{
"Id": 1,
"Name": "Example",
"LandingPageId": 1,
"CountPaidSubscribers": 0,
"MembersCount": 0,
"ExpiryDateTime": "2026-07-01T00: 00: 00Z",
"ExpiryDateOption": "string",
"ExpiryAfter": 0,
"AccessType": "string",
"PaymentInterval": "string",
"Prices": [
{
"Value": 0,
"CurrencyCountry": {
"Hash": 0,
"CurrencyId": "USD",
"Currency": "USD",
"CountryId": "string",
"CountryAbbreviation": "string"
}
}
]
}Deletes an existing member area content
Parameters
idstring · pathrequired
Existent member area id.
Body parameters
ContentIdsarray of strings
An array of unique identifiers. Can contain page IDs, content blocks, or media files.
curl -X DELETE "https://your-site.webinone.com/api/v2/admin/member-areas/1/content" \ -H "Authorization: Bearer <token>" \ -H "Content-Type: application/json" \ -d '{"ContentIds":["string"]}'
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas/1/content", { method: "DELETE", headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" }, body: JSON.stringify({ "ContentIds": [ "string" ] }) });
import requests requests.delete( "https://your-site.webinone.com/api/v2/admin/member-areas/1/content", headers={"Authorization": "Bearer <token>"}, json={ "ContentIds": ["string"] } )
$client = new GuzzleHttp\Client(); $response = $client->request('DELETE', 'https://your-site.webinone.com/api/v2/admin/member-areas/1/content', [ 'headers' => [ 'Authorization' => 'Bearer <token>', 'Content-Type' => 'application/json' ], 'json' => [ 'ContentIds' => ['string'] ] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Delete, "https://your-site.webinone.com/api/v2/admin/member-areas/1/content"); request.Headers.Add("Authorization", "Bearer <token>"); request.Content = new StringContent( "{\"ContentIds\":[\"string\"]}", Encoding.UTF8, "application/json"); var response = await client.SendAsync(request);
Retrieves a list of member area files
Parameters
idstring · pathrequired
Existent member area id.
Response
FolderContentarray of objects
Files and folders available within the secure zone's storage location.
LocationPathstring · nullable
The storage path where the file or folder is located.
Namestring · nullable
Name of the file information.
SizeBytesinteger
The size of the file in bytes.
Contentstring · nullable
The raw contents of the file, when returned inline.
Extensionstring · nullable
The file format identifier (e.g., pdf, mp4, zip). Used for UI icons and filtering.
IsEmptyboolean
Whether the file or folder has no content.
Urlstring · nullable
The direct path or CDN link to the hosted file (e.g., /assets/docs/manual.pdf).
LastWriteTimestring · date-time
When the file was last modified.
IsFolderboolean
Whether this entry is a folder rather than a file.
SecureZoneIdsarray of strings
A list of Secure Zone IDs that have permission to view or download this file.
SecureZoneSecuredContentarray of objects
The content items that have been explicitly secured behind this member area.
Idstring · nullable
Unique identifier. Technical record number in the database. Read-only.
Urlstring
The direct path or CDN link to the hosted file (e.g., /assets/docs/manual.pdf).
Extensionstring · nullable
The file format identifier (e.g., pdf, mp4, zip). Used for UI icons and filtering.
SecureZoneIdsarray of strings
A list of Secure Zone IDs that have permission to view or download this file.
curl "https://your-site.webinone.com/api/v2/admin/member-areas/1/files" \ -H "Authorization: Bearer <token>"
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas/1/files", { method: "GET", headers: { "Authorization": "Bearer <token>" } });
import requests requests.get( "https://your-site.webinone.com/api/v2/admin/member-areas/1/files", headers={"Authorization": "Bearer <token>"} )
$client = new GuzzleHttp\Client(); $response = $client->request('GET', 'https://your-site.webinone.com/api/v2/admin/member-areas/1/files', [ 'headers' => [ 'Authorization' => 'Bearer <token>' ] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Get, "https://your-site.webinone.com/api/v2/admin/member-areas/1/files"); request.Headers.Add("Authorization", "Bearer <token>"); var response = await client.SendAsync(request);
Response · 200
{
"FolderContent": [
{
"LocationPath": "string",
"Name": "Example",
"SizeBytes": 0,
"Content": "string",
"Extension": "string",
"IsEmpty": false,
"Url": "https://example.com",
"LastWriteTime": "2026-07-01T00: 00: 00Z",
"IsFolder": false,
"SecureZoneIds": [
"string"
]
}
],
"SecureZoneSecuredContent": [
{
"Id": "string",
"Url": "https://example.com",
"Extension": "string",
"SecureZoneIds": [
"string"
]
}
]
}Retrieves a list of member area members
Parameters
idinteger · pathrequired
Existent member area id.
Wherestring · query
JSON filter expression. Combine operators ($eq, $contains, $gt, $in, …) with $and / $or.
Order_Bystring · query
Sort field. Prefix with - for descending; comma-separate for tie-breakers.
Semantic_Querystring · query
Natural-language search, ranked by relevance.
Min_Scorenumber · query
Lowest relevance score to include when using Semantic_Query.
Offsetinteger · query
Number of items to skip before returning results. Defaults to 0.
Limitinteger · query
Maximum number of items to return. Defaults to 100.
Response
Idinteger
Unique identifier. Technical record number in the database. Read-only.
FirstNamestring · nullable
The member's first name.
LastNamestring · nullable
The member's last name.
Emailstring · nullable
Email address.
CreatedDateTimestring · date-time
When the record was created (ISO 8601). Read-only.
ExpiryDateTimestring · date-time
Expiry timestamp (ISO 8601).
curl "https://your-site.webinone.com/api/v2/admin/member-areas/1/members" \ -H "Authorization: Bearer <token>"
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas/1/members", { method: "GET", headers: { "Authorization": "Bearer <token>" } });
import requests requests.get( "https://your-site.webinone.com/api/v2/admin/member-areas/1/members", headers={"Authorization": "Bearer <token>"} )
$client = new GuzzleHttp\Client(); $response = $client->request('GET', 'https://your-site.webinone.com/api/v2/admin/member-areas/1/members', [ 'headers' => [ 'Authorization' => 'Bearer <token>' ] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Get, "https://your-site.webinone.com/api/v2/admin/member-areas/1/members"); request.Headers.Add("Authorization", "Bearer <token>"); var response = await client.SendAsync(request);
Response · 200
{
"Items": [
{
"Id": 1,
"FirstName": "Example",
"LastName": "Example",
"Email": "user@example.com",
"CreatedDateTime": "2026-07-01T00: 00: 00Z",
"ExpiryDateTime": "2026-07-01T00: 00: 00Z"
}
],
"TotalItemsCount": 0
}Deletes an existing member area members
Parameters
idinteger · pathrequired
Existent member area id.
Body parameters
MemberIdsarray of strings
A list of unique user IDs that are granted access.
SecureZonePointerobject
Reference to the secure zone the members are being managed in.
Pointerinteger
Internal reference identifier that locates the target entity instance the pointer refers to.
TypeIdinteger
Identifier of the related type.
InstanceIdinteger
Identifier of the related instance.
DbTypeIdinteger
Identifier of the related db type.
DbInstanceIdinteger
Identifier of the related db instance.
curl -X DELETE "https://your-site.webinone.com/api/v2/admin/member-areas/1/remove-members" \ -H "Authorization: Bearer <token>" \ -H "Content-Type: application/json" \ -d '{"MemberIds":["string"],"SecureZonePointer":{"Pointer":0,"TypeId":1,"InstanceId":1,"DbTypeId":1,"DbInstanceId":1}}'
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas/1/remove-members", { method: "DELETE", headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" }, body: JSON.stringify({ "MemberIds": [ "string" ], "SecureZonePointer": { "Pointer": 0, "TypeId": 1, "InstanceId": 1, "DbTypeId": 1, "DbInstanceId": 1 } }) });
import requests requests.delete( "https://your-site.webinone.com/api/v2/admin/member-areas/1/remove-members", headers={"Authorization": "Bearer <token>"}, json={ "MemberIds": ["string"], "SecureZonePointer": { "Pointer": 0, "TypeId": 1, "InstanceId": 1, "DbTypeId": 1, "DbInstanceId": 1 } } )
$client = new GuzzleHttp\Client(); $response = $client->request('DELETE', 'https://your-site.webinone.com/api/v2/admin/member-areas/1/remove-members', [ 'headers' => [ 'Authorization' => 'Bearer <token>', 'Content-Type' => 'application/json' ], 'json' => [ 'MemberIds' => ['string'], 'SecureZonePointer' => [ 'Pointer' => 0, 'TypeId' => 1, 'InstanceId' => 1, 'DbTypeId' => 1, 'DbInstanceId' => 1 ] ] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Delete, "https://your-site.webinone.com/api/v2/admin/member-areas/1/remove-members"); request.Headers.Add("Authorization", "Bearer <token>"); request.Content = new StringContent( "{\"MemberIds\":[\"string\"],\"SecureZonePointer\":{\"Pointer\":0,\"TypeId\":1,\"InstanceId\":1,\"DbTypeId\":1,\"DbInstanceId\":1}}", Encoding.UTF8, "application/json"); var response = await client.SendAsync(request);
Updates an existing member area secure content
Parameters
idstring · pathrequired
Existent member area id.
Body parameters
Urlstringrequired
The direct path or CDN link to the hosted file (e.g., /assets/docs/manual.pdf).
Extensionstring · nullable
The file format identifier (e.g., pdf, mp4, zip). Used for UI icons and filtering.
SecureZoneIdsarray of strings
A list of Secure Zone IDs that have permission to view or download this file.
Response
Idstring · nullable
Unique identifier. Technical record number in the database. Read-only.
Urlstring
The direct path or CDN link to the hosted file (e.g., /assets/docs/manual.pdf).
Extensionstring · nullable
The file format identifier (e.g., pdf, mp4, zip). Used for UI icons and filtering.
SecureZoneIdsarray of strings
A list of Secure Zone IDs that have permission to view or download this file.
curl -X PUT "https://your-site.webinone.com/api/v2/admin/member-areas/1/secure" \ -H "Authorization: Bearer <token>" \ -H "Content-Type: application/json" \ -d '[{"Url":"https://example.com","Extension":"string","SecureZoneIds":["string"]}]'
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas/1/secure", { method: "PUT", headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" }, body: JSON.stringify([ { "Url": "https://example.com", "Extension": "string", "SecureZoneIds": [ "string" ] } ]) });
import requests requests.put( "https://your-site.webinone.com/api/v2/admin/member-areas/1/secure", headers={"Authorization": "Bearer <token>"}, json=[{ "Url": "https://example.com", "Extension": "string", "SecureZoneIds": ["string"] }] )
$client = new GuzzleHttp\Client(); $response = $client->request('PUT', 'https://your-site.webinone.com/api/v2/admin/member-areas/1/secure', [ 'headers' => [ 'Authorization' => 'Bearer <token>', 'Content-Type' => 'application/json' ], 'json' => [[ 'Url' => 'https://example.com', 'Extension' => 'string', 'SecureZoneIds' => ['string'] ]] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Put, "https://your-site.webinone.com/api/v2/admin/member-areas/1/secure"); request.Headers.Add("Authorization", "Bearer <token>"); request.Content = new StringContent( "[{\"Url\":\"https://example.com\",\"Extension\":\"string\",\"SecureZoneIds\":[\"string\"]}]", Encoding.UTF8, "application/json"); var response = await client.SendAsync(request);
Response · 200
[
{
"Id": "string",
"Url": "https://example.com",
"Extension": "string",
"SecureZoneIds": [
"string"
]
}
]Updates an existing member area unsecure content
Parameters
idstring · pathrequired
Existent member area id.
Body parameters
Urlstringrequired
The direct path or CDN link to the hosted file (e.g., /assets/docs/manual.pdf).
Extensionstring · nullable
The file format identifier (e.g., pdf, mp4, zip). Used for UI icons and filtering.
SecureZoneIdsarray of strings
A list of Secure Zone IDs that have permission to view or download this file.
Response
Idstring · nullable
Unique identifier. Technical record number in the database. Read-only.
Urlstring
The direct path or CDN link to the hosted file (e.g., /assets/docs/manual.pdf).
Extensionstring · nullable
The file format identifier (e.g., pdf, mp4, zip). Used for UI icons and filtering.
SecureZoneIdsarray of strings
A list of Secure Zone IDs that have permission to view or download this file.
curl -X PUT "https://your-site.webinone.com/api/v2/admin/member-areas/1/unsecure" \ -H "Authorization: Bearer <token>" \ -H "Content-Type: application/json" \ -d '[{"Url":"https://example.com","Extension":"string","SecureZoneIds":["string"]}]'
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas/1/unsecure", { method: "PUT", headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" }, body: JSON.stringify([ { "Url": "https://example.com", "Extension": "string", "SecureZoneIds": [ "string" ] } ]) });
import requests requests.put( "https://your-site.webinone.com/api/v2/admin/member-areas/1/unsecure", headers={"Authorization": "Bearer <token>"}, json=[{ "Url": "https://example.com", "Extension": "string", "SecureZoneIds": ["string"] }] )
$client = new GuzzleHttp\Client(); $response = $client->request('PUT', 'https://your-site.webinone.com/api/v2/admin/member-areas/1/unsecure', [ 'headers' => [ 'Authorization' => 'Bearer <token>', 'Content-Type' => 'application/json' ], 'json' => [[ 'Url' => 'https://example.com', 'Extension' => 'string', 'SecureZoneIds' => ['string'] ]] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Put, "https://your-site.webinone.com/api/v2/admin/member-areas/1/unsecure"); request.Headers.Add("Authorization", "Bearer <token>"); request.Content = new StringContent( "[{\"Url\":\"https://example.com\",\"Extension\":\"string\",\"SecureZoneIds\":[\"string\"]}]", Encoding.UTF8, "application/json"); var response = await client.SendAsync(request);
Response · 200
[
{
"Id": "string",
"Url": "https://example.com",
"Extension": "string",
"SecureZoneIds": [
"string"
]
}
]Retrieves a single member areas options
Response
ExpiryOptionsarray of strings
The available access-expiry options that can be applied to a subscription.
AccessTypearray of strings
Sets the access type to this Secure Zone.
RenuwalRatearray of objects
The available renewal (billing) intervals and whether each is enabled for the secure zone.
AccessTypeenum
Sets the access type to this Secure Zone. Possible values: None, Daily, Weekly, Fortnightly, Monthly, Quarterly, HalfYearly, Yearly.Possible values: NoneDailyWeeklyFortnightlyMonthlyQuarterlyHalfYearlyYearly
IsEnableboolean
Whether this renewal interval is available for selection.
DisplayNamestring · nullable
Display name of the payment interval state, shown to users.
CountryCurrencyarray of objects
Determines for which market they are applied.
Hashinteger · nullable
Technical control number to verify data integrity.
CurrencyIdstring · nullable
This is the internal technical identifier of the currency in the database.
Currencystring · nullable
The generally accepted three-letter currency code by standard.
CountryIdstring · nullable
Internal system identifier of the country in the database.
CountryAbbreviationstring · nullable
Standard two-letter country code.
curl "https://your-site.webinone.com/api/v2/admin/member-areas/options" \ -H "Authorization: Bearer <token>"
await fetch("https://your-site.webinone.com/api/v2/admin/member-areas/options", { method: "GET", headers: { "Authorization": "Bearer <token>" } });
import requests requests.get( "https://your-site.webinone.com/api/v2/admin/member-areas/options", headers={"Authorization": "Bearer <token>"} )
$client = new GuzzleHttp\Client(); $response = $client->request('GET', 'https://your-site.webinone.com/api/v2/admin/member-areas/options', [ 'headers' => [ 'Authorization' => 'Bearer <token>' ] ]);
using var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Get, "https://your-site.webinone.com/api/v2/admin/member-areas/options"); request.Headers.Add("Authorization", "Bearer <token>"); var response = await client.SendAsync(request);
Response · 200
{
"ExpiryOptions": [
"string"
],
"AccessType": [
"string"
],
"RenuwalRate": [
{
"AccessType": "None",
"IsEnable": false,
"DisplayName": "Example"
}
],
"CountryCurrency": [
{
"Hash": 0,
"CurrencyId": "USD",
"Currency": "USD",
"CountryId": "string",
"CountryAbbreviation": "string"
}
]
}