Riferimento SDK Python

Installazione

$pip install frameio

Utilizzo

Crea un’istanza e utilizza il client con quanto segue:

1from frameio import (
2 Frameio,
3 SelectDefinitionParamsFieldConfiguration,
4 SelectDefinitionParamsFieldConfigurationOptionsItem,
5)
6from frameio.metadata_fields import CreateFieldDefinitionParamsData_Select
7
8client = Frameio(
9 token="YOUR_TOKEN",
10)
11client.metadata_fields.metadata_field_definitions_create(
12 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
13 data=CreateFieldDefinitionParamsData_Select(
14 field_configuration=SelectDefinitionParamsFieldConfiguration(
15 enable_add_new=False,
16 options=[
17 SelectDefinitionParamsFieldConfigurationOptionsItem(
18 display_name="Option 1",
19 ),
20 SelectDefinitionParamsFieldConfigurationOptionsItem(
21 display_name="Option 2",
22 ),
23 ],
24 ),
25 name="Fields definition name",
26 ),
27)

Client asincrono

L’SDK esporta anche un client asincrono per effettuare chiamate non bloccanti alla nostra API. Tieni presente che, se stai creando una classe client Async httpx da passare a questo client, devi utilizzare httpx.AsyncClient() invece di httpx.Client() (ad esempio per il parametro httpx_client di questo client).

1import asyncio
2
3from frameio import (
4 AsyncFrameio,
5 SelectDefinitionParamsFieldConfiguration,
6 SelectDefinitionParamsFieldConfigurationOptionsItem,
7)
8from frameio.metadata_fields import CreateFieldDefinitionParamsData_Select
9
10client = AsyncFrameio(
11 token="YOUR_TOKEN",
12)
13
14
15async def main() -> None:
16 await client.metadata_fields.metadata_field_definitions_create(
17 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
18 data=CreateFieldDefinitionParamsData_Select(
19 field_configuration=SelectDefinitionParamsFieldConfiguration(
20 enable_add_new=False,
21 options=[
22 SelectDefinitionParamsFieldConfigurationOptionsItem(
23 display_name="Option 1",
24 ),
25 SelectDefinitionParamsFieldConfigurationOptionsItem(
26 display_name="Option 2",
27 ),
28 ],
29 ),
30 name="Fields definition name",
31 ),
32 )
33
34
35asyncio.run(main())

Gestione delle eccezioni

Quando l’API restituisce un codice di stato diverso da quello di successo (risposta 4xx o 5xx), viene generata una sottoclasse del seguente errore.

1from frameio.core.api_error import ApiError
2
3try:
4 client.metadata_fields.metadata_field_definitions_create(...)
5except ApiError as e:
6 print(e.status_code)
7 print(e.body)

Paginazione

Le richieste paginate restituiranno un SyncPager o AsyncPager, che possono essere utilizzati come generatori per l’oggetto sottostante.

1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.project_permissions.index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 page_size=10,
10 include_total_count=False,
11)
12for item in response:
13 yield item
14# alternatively, you can paginate page-by-page
15for page in response.iter_pages():
16 yield page

Avanzate

Accesso ai dati di risposta non elaborati

L’SDK fornisce l’accesso ai dati di risposta non elaborati, comprese le intestazioni, attraverso la proprietà .with_raw_response. La proprietà .with_raw_response restituisce un client “non elaborato” che può essere utilizzato per accedere agli attributi .headers e .data.

1from frameio import Frameio
2
3client = Frameio(
4 ...,
5)
6response = (
7 client.metadata_fields.with_raw_response.metadata_field_definitions_create(
8 ...
9 )
10)
11print(response.headers) # access the response headers
12print(response.data) # access the underlying object
13pager = client.project_permissions.index(...)
14print(pager.response.headers) # access the response headers for the first page
15for item in pager:
16 print(item) # access the underlying object(s)
17for page in pager.iter_pages():
18 print(page.response.headers) # access the response headers for each page
19 for item in page:
20 print(item) # access the underlying object(s)

Nuovi tentativi

L’SDK può eseguire nuovi tentativi automatici con backoff esponenziale. Una richiesta viene ripetuta finché è considerata ripetibile e il numero di tentativi non supera il limite configurato (predefinito: 2).

Una richiesta è considerata ripetibile quando viene restituito uno dei seguenti codici di stato HTTP:

  • 408 (Timeout)
  • 429 (Too Many Requests)
  • 5XX (Internal Server Errors)


Utilizza l’opzione di richiesta max_retries per configurare questo comportamento.

1client.metadata_fields.metadata_field_definitions_create(..., request_options={
2 "max_retries": 1
3})

Timeout

L’SDK utilizza per impostazione predefinita un timeout di 60 secondi. Puoi configurarlo con un’opzione di timeout a livello di client o di richiesta.

1from frameio import Frameio
2
3client = Frameio(
4 ...,
5 timeout=20.0,
6)
7
8
9# Override timeout for a specific method
10client.metadata_fields.metadata_field_definitions_create(..., request_options={
11 "timeout_in_seconds": 1
12})

Cliente personalizzato

Puoi sostituire il client httpx in modo da personalizzarlo in base al tuo caso d’uso. Alcuni casi d’uso comuni includono il supporto per proxy e trasporti.

1import httpx
2from frameio import Frameio
3
4client = Frameio(
5 ...,
6 httpx_client=httpx.Client(
7 proxy="http://my.test.proxy.example.com",
8 transport=httpx.HTTPTransport(local_address="0.0.0.0"),
9 ),
10)

Riferimento

Autorizzazioni account

Elenca i ruoli utente per un account specifico.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.account_permissions.index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 include_deactivated=True,
9 after="<opaque_cursor>",
10 page_size=10,
11 include_total_count=False,
12)
13for item in response:
14 yield item
15# alternatively, you can paginate page-by-page
16for page in response.iter_pages():
17 yield page

Parametri

account_id: Uuid —

include_deactivated: typing.Optional[bool] — Supporta l’inclusione di utenti disattivati nella risposta.Il valore predefinito è false.

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize] —

include_total_count: typing.Optional[IncludeTotalCount] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Account

Elenca gli account per l’utente corrente.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.accounts.index(
7 after="<opaque_cursor>",
8 page_size=10,
9 include_total_count=False,
10)
11for item in response:
12 yield item
13# alternatively, you can paginate page-by-page
14for page in response.iter_pages():
15 yield page

Parametri

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize] —

include_total_count: typing.Optional[IncludeTotalCount] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elenca i registri di controllo con alcune funzionalità di filtro tramite parametri di query.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.accounts.auditlog_index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 include="user",
9 after="<opaque_cursor>",
10 page_size=10,
11 include_total_count=False,
12 api_version="4.0",
13)
14for item in response:
15 yield item
16# alternatively, you can paginate page-by-page
17for page in response.iter_pages():
18 yield page

Parametri

account_id: Uuid

api_version: typing.Literal["4.0"]

include: typing.Optional[typing.Literal["user"]]

filters: typing.Optional[Filters]

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize]

include_total_count: typing.Optional[IncludeTotalCount]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Autenticazione

Autenticati utilizzando la concessione client_credentials OAuth 2.0. Questo flusso non coinvolge un utente e non restituisce un token di aggiornamento. Quando il token di accesso scade, l’SDK ne richiede automaticamente uno nuovo utilizzando le credenziali client. Per l’utilizzo asincrono, usa AsyncServerToServerAuth.

usage
1from frameio import Frameio
2from frameio.auth import ServerToServerAuth
3
4auth = ServerToServerAuth(client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET")
5client = Frameio(token=auth.get_token)

Parametri

client_id: str — ID cliente OAuth di Adobe IMS.

client_secret: str — Secret del client OAuth di Adobe IMS.

scopes: str — Ambiti separati da spazi (OAuth 2.0 RFC 6749). Il valore predefinito è openid AdobeID frame.s2s.all.

ims_base_url: str — URL di base IMS per ambienti temporanei/alternativi. Il valore predefinito è production.

http_client: typing.Optional[httpx.Client] — httpx opzionale.Client per proxy, TLS o pool di connessioni.

on_token_refreshed: typing.Optional[typing.Callable[[dict[str, Any]], None]] — Callback opzionale attivato dopo ogni recupero di token.

timeout: float — Timeout della richiesta HTTP in secondi. Il valore predefinito è 30.

max_retries: int — Numero massimo di nuovi tentativi per errori transitori. Il valore predefinito è 2.

refresh_buffer: int — Secondi prima della scadenza per attivare l’aggiornamento proattivo. Il valore predefinito è 60. Metodi get_token() -&gt; str — Restituisce un token di accesso valido, aggiornandolo se necessario. Passa questo riferimento del metodo (non una chiamata) all’SDK: Frameio(token=auth.get_token). authenticate() -&gt; dict[str, Any] — Recupera esplicitamente un nuovo token di accesso. Restituisce il dict di risposta del token con access_token, expires_in ecc. revoke() -&gt; None — Revoca entrambi i token lato server e cancella lo stato locale. export_tokens() -&gt; dict[str, Any] — Esporta lo stato corrente del token per la persistenza. import_tokens(data: dict[str, Any]) -&gt; None — Ripristina lo stato del token da un dict esportato in precedenza.

Autenticati utilizzando la concessione authorization_code OAuth 2.0. Usa questo metodo per applicazioni sul lato server che possono archiviare in modo sicuro un secret del client. Per l’utilizzo asincrono, usa AsyncWebAppAuth.

usage
1import secrets
2from frameio import Frameio
3from frameio.auth import WebAppAuth
4
5auth = WebAppAuth(
6 client_id="YOUR_CLIENT_ID",
7 client_secret="YOUR_CLIENT_SECRET",
8 redirect_uri="https://myapp.com/callback",
9)
10url = auth.get_authorization_url(state=secrets.token_urlsafe(32))
11# redirect user to url ...
12auth.exchange_code(code="CODE_FROM_CALLBACK")
13client = Frameio(token=auth.get_token)

Parametri

client_id: str — ID cliente OAuth di Adobe IMS.

client_secret: str — Secret del client OAuth di Adobe IMS.

redirect_uri: str — URI di reindirizzamento registrato.

scopes: str — Ambiti separati da spazi (OAuth 2.0 RFC 6749).

ims_base_url: str — URL di base IMS per ambienti temporanei/alternativi. Il valore predefinito è production.

http_client: typing.Optional[httpx.Client] — httpx opzionale.Client per proxy, TLS o pool di connessioni.

on_token_refreshed: typing.Optional[typing.Callable[[dict[str, Any]], None]] — Callback opzionale attivato dopo ogni aggiornamento del token.

timeout: float — Timeout della richiesta HTTP in secondi. Il valore predefinito è 30.

max_retries: int — Numero massimo di nuovi tentativi per errori transitori. Il valore predefinito è 2.

refresh_buffer: int — Secondi prima della scadenza per attivare l’aggiornamento proattivo. Il valore predefinito è 60. Metodi get_token() -&gt; str — Restituisce un token di accesso valido, aggiornandolo se necessario. Passa questo riferimento del metodo all’SDK: Frameio(token=auth.get_token). get_authorization_url(state: str) -&gt; str — Crea l’URL di autorizzazione di Adobe IMS. Passa un valore CSRF/state opaco che sarà restituito. exchange_code(code: str) -&gt; dict[str, Any] — Scambia un codice di autorizzazione con token di accesso e aggiornamento. refresh() -&gt; dict[str, Any] — Attiva manualmente un aggiornamento del token. revoke() -&gt; None — Revoca entrambi i token lato server e cancella lo stato locale. export_tokens() -&gt; dict[str, Any] — Esporta lo stato corrente del token per la persistenza. import_tokens(data: dict[str, Any]) -&gt; None — Ripristina lo stato del token da un dict esportato in precedenza.

Autenticati utilizzando authorization_code + PKCE (senza secret del client). Utilizza questa opzione per applicazioni basate su browser o native che non possono archiviare in sicurezza un secret del client. Per l’utilizzo asincrono, usa AsyncSPAAuth.

usage
1import secrets
2from frameio import Frameio
3from frameio.auth import SPAAuth
4
5auth = SPAAuth(client_id="YOUR_CLIENT_ID", redirect_uri="https://myapp.com/cb")
6result = auth.get_authorization_url(state=secrets.token_urlsafe(32))
7# redirect user to result.url, store result.code_verifier
8auth.exchange_code(code="CODE_FROM_CALLBACK", code_verifier=result.code_verifier)
9client = Frameio(token=auth.get_token)

Parametri

client_id: str — ID cliente OAuth di Adobe IMS.

redirect_uri: str — URI di reindirizzamento registrato.

scopes: str — Ambiti separati da spazi (OAuth 2.0 RFC 6749).

ims_base_url: str — URL di base IMS per ambienti temporanei/alternativi. Il valore predefinito è production.

http_client: typing.Optional[httpx.Client] — httpx opzionale.Client per proxy, TLS o pool di connessioni.

on_token_refreshed: typing.Optional[typing.Callable[[dict[str, Any]], None]] — Callback opzionale attivato dopo ogni aggiornamento del token.

timeout: float — Timeout della richiesta HTTP in secondi. Il valore predefinito è 30.

max_retries: int — Numero massimo di nuovi tentativi per errori transitori. Il valore predefinito è 2.

refresh_buffer: int — Secondi prima della scadenza per attivare l’aggiornamento proattivo. Il valore predefinito è 60. Metodi get_token() -&gt; str — Restituisce un token di accesso valido, aggiornandolo se necessario. Passa questo riferimento del metodo all’SDK: Frameio(token=auth.get_token). get_authorization_url(state: str) -&gt; AuthorizationUrlResult — Crea l’URL di autorizzazione di Adobe IMS con challenge PKCE. Restituisce un AuthorizationUrlResult con gli attributi url e code_verifier. exchange_code(code: str, code_verifier: str) -&gt; dict[str, Any] — Scambia un codice di autorizzazione + verificatore PKCE per i token. refresh() -&gt; dict[str, Any] — Attiva manualmente un aggiornamento del token. revoke() -&gt; None — Revoca entrambi i token lato server e cancella lo stato locale. export_tokens() -&gt; dict[str, Any] — Esporta lo stato corrente del token per la persistenza. import_tokens(data: dict[str, Any]) -&gt; None — Ripristina lo stato del token da un dict esportato in precedenza.

Classe di dati bloccata restituita da SPAAuth.get_authorization_url() e AsyncSPAAuth.get_authorization_url(). Contiene l’URL di autorizzazione e il verificatore del codice PKCE. Attributi url: str — L’URL di autorizzazione completo verso cui reindirizzare l’utente. code_verifier: str — Il verificatore del codice PKCE da memorizzare e passare a exchange_code().

Chiudi i client HTTP a livello di modulo utilizzati dal modulo di autenticazione. Chiama close_clients() nel codice sincrono o await aclose_clients() nel codice asincrono durante la chiusura dell’applicazione per rilasciare le connessioni.

usage
1from frameio.auth import close_clients
2
3# During application shutdown
4close_clients()

Eccezioni di autenticazione

Tutte le eccezioni di autenticazione ereditano da FrameioAuthError.

EccezioneDescrizione
FrameioAuthErrorEccezione di base per tutti gli errori di frameio.auth.
AuthenticationErrorScambio o aggiornamento del token non riuscito. Ha gli attributi error_code e error_description.
TokenExpiredErrorIl token di aggiornamento è scaduto; è richiesta una nuova autenticazione.
ConfigurationErrorLa configurazione richiesta è mancante o non valida.
NetworkErrorRichiesta di rete non riuscita (timeout, errore di connessione ecc.).
RateLimitErrorL’API ha restituito un errore 429 e i nuovi tentativi sono esauriti. Ha l’attributo retry_after.
PKCEErrorVerifica PKCE non riuscita.

Raccolte

Elenca le raccolte per un progetto.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.collections.index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="creator,project",
10 after="<opaque_cursor>",
11 page_size=10,
12 include_total_count=False,
13)

Parametri

account_id: Uuid

project_id: Uuid

include: typing.Optional[CollectionInclude]

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize]

include_total_count: typing.Optional[IncludeTotalCount]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Mostra i dettagli della raccolta.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.collections.show(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 collection_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="creator,project",
10)

Parametri

account_id: Uuid

collection_id: Uuid

include: typing.Optional[CollectionInclude]

request_options: typing.Optional[RequestOptions] — Request-specific configuration.

Commenti

Visualizza un singolo commento su un file.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.comments.show(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 comment_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="owner",
10)

Parametri

account_id: Uuid —

comment_id: Uuid —

include: typing.Optional[CommentsShowRequestInclude] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elimina il commento da una risorsa.

Limiti di frequenza: 60 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.comments.delete(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 comment_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid —

comment_id: Uuid —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiorna il commento sulla risorsa specificata.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.comments import UpdateCommentParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.comments.update(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 comment_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 timestamp_as_timecode=True,
11 data=UpdateCommentParamsData(
12 annotation='[{"tool":"rect","color":"#F22237","size":8,"x":0.277726001863933,"y":0.12909555568499534,"w":0.3153168321877913,"h":0.5308131407269339,"ix":0.277726001863933,"iy":0.12909555568499534,"radius":8}]',
13 completed=False,
14 page=4,
15 text="This is great!",
16 ),
17)

Parametri

account_id: Uuid —

comment_id: Uuid —

data: UpdateCommentParamsData

timestamp_as_timecode: typing.Optional[bool] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elenca i commenti sulla risorsa specificata.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.comments.index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 file_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="owner",
10 after="<opaque_cursor>",
11 page_size=10,
12 include_total_count=False,
13)
14for item in response:
15 yield item
16# alternatively, you can paginate page-by-page
17for page in response.iter_pages():
18 yield page

Parametri

account_id: Uuid —

file_id: Uuid —

include: typing.Optional[CommentInclude] —

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize] —

include_total_count: typing.Optional[IncludeTotalCount] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea un commento su un file.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.comments import CreateCommentParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.comments.create(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 file_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 timestamp_as_timecode=True,
11 data=CreateCommentParamsData(
12 annotation='[{"tool":"rect","color":"#F22237","size":8,"x":0.277726001863933,"y":0.12909555568499534,"w":0.3153168321877913,"h":0.5308131407269339,"ix":0.277726001863933,"iy":0.12909555568499534,"radius":8}]',
13 completed=False,
14 page=4,
15 text="This is great!",
16 timestamp="00:00:02:12",
17 ),
18)

Parametri

account_id: Uuid —

file_id: Uuid —

data: CreateCommentParamsData

timestamp_as_timecode: typing.Optional[bool] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea un allegato per un commento esistente.

Limiti di frequenza: 60 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import AttachmentInput, Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.comments.create_attachment(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 comment_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 data=AttachmentInput(
10 file_size=1024000,
11 media_type="image/png",
12 name="screenshot.png",
13 ),
14)

Parametri

account_id: Uuid

comment_id: Uuid

data: AttachmentInput

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elimina un allegato da un commento.

Limiti di frequenza: 60 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.comments.delete_attachment(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 comment_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 attachment_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10)

Parametri

account_id: Uuid

comment_id: Uuid

attachment_id: Uuid

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Azioni personalizzate

Elenca le azioni in un’area di lavoro specifica.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.custom_actions.actions_index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 workspace_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="creator",
10 after="<opaque_cursor>",
11 page_size=10,
12 include_total_count=False,
13)

Parametri

account_id: Uuid

workspace_id: Uuid

include: typing.Optional[typing.Literal["creator"]]

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize]

include_total_count: typing.Optional[IncludeTotalCount]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Mostra i dettagli dell’azione personalizzata.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.custom_actions.actions_show(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 action_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="creator",
10)

Parametri

account_id: Uuid

action_id: Uuid

include: typing.Optional[typing.Literal["creator"]]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea un’azione personalizzata in un’area di lavoro.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.custom_actions import ActionCreateParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.custom_actions.actions_create(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 workspace_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=ActionCreateParamsData(
11 description="customizing our workflow",
12 event="my.event",
13 name="First Custom Action",
14 timeout=7,
15 url="https://example.com/custom-action",
16 ),
17)

Parametri

account_id: Uuid

workspace_id: Uuid

data: ActionCreateParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiorna i dettagli dell’azione personalizzata.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.custom_actions import ActionUpdateParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.custom_actions.actions_update(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 action_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=ActionUpdateParamsData(
11 active=True,
12 description="customizing our workflow",
13 event="my.event",
14 multi_asset=True,
15 name="First Custom Action",
16 timeout=7,
17 url="https://example.com/custom-action",
18 ),
19)

Parametri

account_id: Uuid

action_id: Uuid

data: ActionUpdateParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elimina un’azione personalizzata.

Limiti di frequenza: 60 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.custom_actions.actions_delete(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 action_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid

action_id: Uuid

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

File

Elenca i file in una cartella specifica.

Limiti di frequenza: 5 chiamate ogni 1 secondo per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.files.list(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="media_links",
10 after="<opaque_cursor>",
11 page_size=10,
12 include_total_count=False,
13)

Parametri

account_id: Uuid

folder_id: Uuid

include: typing.Optional[FileWithMediaLinksInclude]

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize]

include_total_count: typing.Optional[IncludeTotalCount]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea un nuovo file nella cartella padre. Create file (local upload) e Create file (remote upload) hanno sostituito questo endpoint.

Limiti di frequenza: 5 chiamate ogni 1 secondo per account_user

usage
1from frameio import Frameio
2from frameio.files import FileCreateParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.files.create(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=FileCreateParamsData(
11 file_size=1137444,
12 media_type="image/png",
13 name="asset.png",
14 ),
15)

Parametri

account_id: Uuid

folder_id: Uuid

data: FileCreateParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Mostra i dettagli del file.

Usa il parametro di query “include” della richiesta per includere in modo selettivo proprietà aggiuntive nella risposta.

Se includi media_links.original e l’utente non ha l’autorizzazione per scaricare il file, questo endpoint risponderà con un errore 403 Forbidden. Se il contenuto non è accessibile perché è richiesta la filigrana per questo utente e non è supportata dai media_link richiesti, la richiesta avrà esito positivo, ma i link multimediali non supportati saranno impostati su null. Allo stesso modo, se un link di transcodifica richiesto non esiste per un file particolare (ad esempio includendo media_links.video_h264_180 su un file di immagine statica) o se il processo di transcodifica non è stato completato (ovvero lo stato del file è “uploaded” invece di “transcoded”), anche il link sarà impostato su null nel payload di risposta. In breve, il client deve gestire i link multimediali null in modo appropriato.

Limiti di frequenza: 5 chiamate ogni 1 secondo per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.files.show(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 file_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="media_links",
10)

Parametri

account_id: Uuid

file_id: Uuid

include: typing.Optional[FileWithMediaLinksInclude]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elimina il file in base all’ID.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.files.delete(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 file_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid

file_id: Uuid

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiorna i dettagli del file.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.files import FileUpdateParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.files.update(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 file_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=FileUpdateParamsData(
11 name="asset.png",
12 ),
13)

Parametri

account_id: Uuid

file_id: Uuid

data: FileUpdateParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Copia il file.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.files import FileCopyParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.files.copy(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 file_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 copy_metadata=True,
11 copy_comments="none",
12 data=FileCopyParamsData(
13 parent_id="2e426fe0-f965-4594-8b2b-b4dff1dc00ec",
14 ),
15)

Parametri

account_id: Uuid

file_id: Uuid

copy_metadata: typing.Optional[bool] — Indica se copiare i valori dei metadati insieme al file

dipy_comments: typing.Optional[FilesCopyRequestCopyComments] — Indica quali commenti copiare insieme al file

data: typing.Optional[FileCopyParamsData]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea un nuovo file nella cartella padre tramite caricamento remoto.

Limiti di frequenza: 5 chiamate ogni 1 secondo per account_user

usage
1from frameio import Frameio
2from frameio.files import FileCreateRemoteUploadParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.files.create_remote_upload(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=FileCreateRemoteUploadParamsData(
11 name="asset.png",
12 source_url="https://upload.wikimedia.org/wikipedia/commons/e/e1/White_Pixel_1x1.png",
13 ),
14)

Parametri

account_id: Uuid

folder_id: Uuid

data: FileCreateRemoteUploadParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Sposta il file in una cartella o in uno stack di versioni.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.files import FileMoveParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.files.move(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 file_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=FileMoveParamsData(
11 parent_id="2e426fe0-f965-4594-8b2b-b4dff1dc00ec",
12 ),
13)

Parametri

account_id: Uuid

file_id: Uuid

data: FileMoveParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea un nuovo file nella cartella padre tramite caricamento locale.

Limiti di frequenza: 5 chiamate ogni 1 secondo per account_user

usage
1from frameio import Frameio
2from frameio.files import FileCreateLocalUploadParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.files.create_local_upload(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=FileCreateLocalUploadParamsData(
11 file_size=1137444,
12 name="asset.png",
13 ),
14)

Parametri

account_id: Uuid

folder_id: Uuid

data: FileCreateLocalUploadParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Mostra i dettagli dello stato di caricamento del file.

Limiti di frequenza: 5 chiamate ogni 1 secondo per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.files.show_file_upload_status(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 file_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid

file_id: Uuid

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Importa un file da una posizione di archiviazione configurata sull’account.

Limiti di frequenza: 5 chiamate ogni 1 secondo per account_user

usage
1from frameio import Frameio
2from frameio.files import FileImportParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.files.import_file(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=FileImportParamsData(
11 key="uploads/08091b0f-a541-42f5-a059-5e8c4afecc12/original.png",
12 name="asset.png",
13 storage_location="123e4567-e89b-12d3-a456-426614174000",
14 ),
15)

Parametri

account_id: Uuid

folder_id: Uuid

data: FileImportParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Autorizzazioni cartella

Elenca i ruoli utente per un cartella specifica.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.folder_permissions.folder_user_roles_index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include_deactivated=True,
10 after="<opaque_cursor>",
11 page_size=10,
12 include_total_count=False,
13)

Parameters

account_id: Uuid

folder_id: Uuid

include_deactivated: typing.Optional[bool] — Supporta l’inclusione di utenti disattivati nella risposta. Il valore predefinito è false.

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize]

include_total_count: typing.Optional[IncludeTotalCount]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiorna i ruoli utente per la cartella specificata se l’utente è già stato aggiunto alla cartella. Se l’utente non è stato aggiunto alla cartella, viene aggiunto con il ruolo specificato.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio, UpdateUserRolesParamsData
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.folder_permissions.folder_user_roles_update(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 user_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=UpdateUserRolesParamsData(
11 role="editor",
12 ),
13)

Parametri

account_id: Uuid

folder_id: Uuid

user_id: Uuid

data: UpdateUserRolesParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Rimuovi un utente da una cartella specifica.

Limiti di frequenza: 60 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.folder_permissions.delete(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 user_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10)

Parametri

account_id: Uuid

folder_id: Uuid

user_id: Uuid

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Cartelle

Mostra i dettagli della cartella.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.folders.show(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="creator",
10)

Parametri

account_id: Uuid —

folder_id: Uuid —

include: typing.Optional[AssetInclude] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elimina la cartella in base all’ID.

Limiti di frequenza: 60 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.folders.delete(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid —

folder_id: Uuid —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiorna i dettagli della cartella.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.folders import FolderUpdateParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.folders.update(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=FolderUpdateParamsData(
11 name="Folder name",
12 ),
13)

Parametri

account_id: Uuid —

folder_id: Uuid —

data: FolderUpdateParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elenca gli elementi figlio nella cartella specificata.

Usa il parametro di query “include” della richiesta per includere in modo selettivo proprietà aggiuntive nella risposta.

Se includi media_links.original e l’utente non ha l’autorizzazione per scaricare file nel progetto corrispondente, questo endpoint risponderà con un errore 403 Forbidden.Se il contenuto non è accessibile perché è richiesta la filigrana per questo utente e non è supportata dai media_link richiesti, la richiesta avrà esito positivo, ma i link multimediali non supportati saranno impostati su null. Allo stesso modo, se un link di transcodifica richiesto non esiste per un file particolare (ad esempio includendo media_links.video_h264_180 su un file di immagine statica) o se il processo di transcodifica non è finito (ovvero lo stato del file è “uploaded” invece di “transcoded”), anche un link multimediale sarà impostato su null nel payload di risposta. In breve, il client deve gestire i link multimediali null in modo appropriato.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.folders.index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="media_links",
10 type="file,folder,version_stack",
11 after="<opaque_cursor>",
12 page_size=10,
13 include_total_count=False,
14)

Parametri

account_id: Uuid —

folder_id: Uuid —

include: typing.Optional[FileWithMediaLinksInclude] —

type: typing.Optional[ChildrenType] —

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize] —

include_total_count: typing.Optional[IncludeTotalCount] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Copia la cartella.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.folders import FolderCopyParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.folders.copy(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 copy_metadata=True,
11 data=FolderCopyParamsData(
12 parent_id="2e426fe0-f965-4594-8b2b-b4dff1dc00ec",
13 ),
14)

Parametri

account_id: Uuid —

folder_id: Uuid —

copy_metadata: typing.Optional[bool] — Indica se copiare i valori dei metadati insieme alla cartella

data: typing.Optional[FolderCopyParamsData]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elenca le cartelle in una cartella specifica.

Limiti di frequenza: 5 chiamate ogni 1 secondo per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.folders.list(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="creator",
10 after="<opaque_cursor>",
11 page_size=10,
12 include_total_count=False,
13)

Parametri

account_id: Uuid —

folder_id: Uuid —

include: typing.Optional[AssetInclude] —

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize] —

include_total_count: typing.Optional[IncludeTotalCount] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea una nuova cartella nel percorso specificato dal parametro folder_id.

Limiti di frequenza: 3 chiamate ogni 1 secondo per account_user

usage
1from frameio import Frameio
2from frameio.folders import FolderCreateParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.folders.create(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=FolderCreateParamsData(
11 name="Folder name",
12 ),
13)

Parametri

account_id: Uuid —

folder_id: Uuid —

data: FolderCreateParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Sposta la cartella in una cartella.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.folders import FolderMoveParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.folders.move(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=FolderMoveParamsData(
11 parent_id="2e426fe0-f965-4594-8b2b-b4dff1dc00ec",
12 ),
13)

Parametri

account_id: Uuid —

folder_id: Uuid —

data: FolderMoveParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Gruppi

Elenca i gruppi nell’account.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.groups.index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 include="creator",
9 sort="creator_asc",
10 after="<opaque_cursor>",
11 page_size=10,
12 include_total_count=False,
13)

Parametri

account_id: Uuid

include: typing.Optional[typing.Literal["creator"]]

sort: typing.Optional[GroupsIndexRequestSort] — Ordina i gruppi in base ai parametri di query

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize]

include_total_count: typing.Optional[IncludeTotalCount]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Mostra i dettagli del gruppo.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.groups.show(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 group_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="creator",
10)

Parametri

account_id: Uuid

group_id: Uuid

include: typing.Optional[typing.Literal["creator"]]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea un gruppo per l’account corrente.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.groups import CreateGroupParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.groups.create(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 data=CreateGroupParamsData(
10 emoji="smile",
11 name="group-1",
12 ),
13)

Parametri

account_id: Uuid

data: CreateGroupParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiorna i dettagli del gruppo.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.groups import UpdateGroupParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.groups.update(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 group_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=UpdateGroupParamsData(
11 emoji="smile",
12 name="group-1",
13 ),
14)

Parametri

account_id: Uuid

group_id: Uuid

data: UpdateGroupParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Metadati

Aggiorna i valori dei metadati in più file.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.metadata import (
3 BulkUpdateMetadataParamsData,
4 BulkUpdateMetadataParamsDataValuesItem,
5)
6
7client = Frameio(
8 token="YOUR_TOKEN",
9)
10client.metadata.bulk_update(
11 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
12 project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
13 data=BulkUpdateMetadataParamsData(
14 file_ids=[
15 "09b31c2a-04de-464a-a593-643a36ef0d98",
16 "b967fc36-4e18-4b48-a3ab-c790100e2baa",
17 ],
18 values=[
19 BulkUpdateMetadataParamsDataValuesItem(
20 field_definition_id="ff41ce50-269b-4624-8306-aac10e28ab94",
21 value=[
22 {
23 "id": "e60f47b4-cf8e-4273-96d5-3258a830a0aa",
24 "type": "user",
25 },
26 {
27 "id": "24eeaf7e-ce27-4555-bc77-cce39900626d",
28 "type": "account_user_group",
29 },
30 ],
31 )
32 ],
33 ),
34)

Parametri

account_id: Uuid

project_id: Uuid

data: BulkUpdateMetadataParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Mostra i metadati di un file.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.metadata.show(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 file_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 show_null=True,
10)

Parametri

account_id: Uuid

file_id: Uuid

show_null: typing.Optional[bool]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Campi dei metadati

Elimina le definizioni dei campi personalizzati a livello di account.

Limiti di frequenza: 60 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.metadata_fields.metadata_field_definitions_delete(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 field_definition_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid —

field_definition_id: Uuid —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiorna le definizioni dei campi personalizzati a livello di account.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import (
2 Frameio,
3 UpdateSelectDefinitionParamsFieldConfiguration,
4 UpdateSelectDefinitionParamsFieldConfigurationOptionsItem,
5)
6from frameio.metadata_fields import UpdateFieldDefinitionParamsData_Select
7
8client = Frameio(
9 token="YOUR_TOKEN",
10)
11client.metadata_fields.metadata_field_definitions_update(
12 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
13 field_definition_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
14 data=UpdateFieldDefinitionParamsData_Select(
15 field_configuration=UpdateSelectDefinitionParamsFieldConfiguration(
16 enable_add_new=False,
17 options=[
18 UpdateSelectDefinitionParamsFieldConfigurationOptionsItem(
19 display_name="Option 1",
20 ),
21 UpdateSelectDefinitionParamsFieldConfigurationOptionsItem(
22 display_name="Option 2",
23 ),
24 ],
25 ),
26 name="Updated-Field-Name",
27 ),
28)

Parametri

account_id: Uuid —

field_definition_id: Uuid —

data: typing.Optional[UpdateFieldDefinitionParamsData]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elenca definizioni dei campi a livello di account.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.metadata_fields.metadata_field_definitions_index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 after="<opaque_cursor>",
9 page_size=10,
10 include_total_count=False,
11)

Parametri

account_id: Uuid —

include: typing.Optional[typing.Literal[“creator”]] —

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize] —

include_total_count: typing.Optional[IncludeTotalCount] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea definizioni dei campi a livello di account.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import (
2 Frameio,
3 SelectDefinitionParamsFieldConfiguration,
4 SelectDefinitionParamsFieldConfigurationOptionsItem,
5)
6from frameio.metadata_fields import CreateFieldDefinitionParamsData_Select
7
8client = Frameio(
9 token="YOUR_TOKEN",
10)
11client.metadata_fields.metadata_field_definitions_create(
12 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
13 data=CreateFieldDefinitionParamsData_Select(
14 field_configuration=SelectDefinitionParamsFieldConfiguration(
15 enable_add_new=False,
16 options=[
17 SelectDefinitionParamsFieldConfigurationOptionsItem(
18 display_name="Option 1",
19 ),
20 SelectDefinitionParamsFieldConfigurationOptionsItem(
21 display_name="Option 2",
22 ),
23 ],
24 ),
25 name="Fields definition name",
26 ),
27)

Parametri

account_id: Uuid —

data: typing.Optional[CreateFieldDefinitionParamsData]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Autorizzazioni del progetto

Elenca i ruoli utente per un progetto specifico.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.project_permissions.index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include_deactivated=True,
10 after="<opaque_cursor>",
11 page_size=10,
12 include_total_count=False,
13)
14for item in response:
15 yield item
16# alternatively, you can paginate page-by-page
17for page in response.iter_pages():
18 yield page

Parametri

account_id: Uuid —

project_id: Uuid —

include_deactivated: typing.Optional[bool] — Supporta l’inclusione di utenti disattivati nella risposta. Il valore predefinito è false.

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

NOTA: questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize] —

include_total_count: typing.Optional[IncludeTotalCount] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Rimuovi un utente da un progetto specifico.

Limiti di frequenza: 60 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.project_permissions.delete(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 user_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10)

Parametri

account_id: Uuid —

project_id: Uuid —

user_id: Uuid —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiorna i ruoli utente per il progetto specificato se l’utente è già stato aggiunto al progetto. Se l’utente non è stato aggiunto al progetto, viene aggiunto con il ruolo specificato.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio, UpdateUserRolesParamsData
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.project_permissions.project_user_roles_update(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 user_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=UpdateUserRolesParamsData(
11 role="editor",
12 ),
13)

Parametri

account_id: Uuid —

project_id: Uuid —

user_id: Uuid —

data: UpdateUserRolesParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Progetti

Mostra i dettagli del progetto.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.projects.show(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid

project_id: Uuid

include: typing.Optional[typing.Literal["owner"]]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elimina un progetto.

Limiti di frequenza: 60 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.projects.delete(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid

project_id: Uuid

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiorna i dettagli del progetto.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.projects import ProjectUpdateParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.projects.update(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=ProjectUpdateParamsData(
11 name="Project Name",
12 restricted=True,
13 status="active",
14 ),
15)

Parametri

account_id: Uuid

project_id: Uuid

data: ProjectUpdateParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elenca i progetti in un’area di lavoro specifica.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.projects.index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 workspace_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 after="<opaque_cursor>",
10 page_size=10,
11 include_total_count=False,
12)
13for item in response:
14 yield item
15# alternatively, you can paginate page-by-page
16for page in response.iter_pages():
17 yield page

Parametri

account_id: Uuid

workspace_id: Uuid

include: typing.Optional[typing.Literal["owner"]]

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize]

include_total_count: typing.Optional[IncludeTotalCount]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea un progetto in un’area di lavoro specifica.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.projects import ProjectParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.projects.create(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 workspace_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=ProjectParamsData(
11 name="Project Name",
12 restricted=True,
13 ),
14)

Parametri

account_id: Uuid

workspace_id: Uuid

data: ProjectParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elenca tutti i progetti a cui l’utente autenticato ha accesso nell’account specificato.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.projects.account_projects_index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 include="owner",
9 sort="name_asc",
10 after="<opaque_cursor>",
11 page_size=10,
12 include_total_count=False,
13)
14for item in response:
15 yield item
16# alternatively, you can paginate page-by-page
17for page in response.iter_pages():
18 yield page

Parametri

account_id: Uuid

include: typing.Optional[typing.Literal["owner"]]

sort: typing.Optional[AccountProjectsIndexRequestSort] — Ordina i progetti in base ai parametri di query

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize]

include_total_count: typing.Optional[IncludeTotalCount]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elenca i progetti a cui l’utente corrente è stato invitato nell’account specificato, ma non ha accesso a livello di area di lavoro. Si tratta di progetti in cui l’utente ha accesso come utente collaboratore specifico del progetto senza autorizzazioni più ampie del team o dell’area di lavoro.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.projects.invited_projects_index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 include="owner",
9 sort="name_asc",
10 after="<opaque_cursor>",
11 page_size=10,
12 include_total_count=False,
13)
14for item in response:
15 yield item
16# alternatively, you can paginate page-by-page
17for page in response.iter_pages():
18 yield page

Parametri

account_id: Uuid

include: typing.Optional[typing.Literal["owner"]]

sort: typing.Optional[InvitedProjectsIndexRequestSort] — Ordina i progetti in base ai parametri di query

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize]

include_total_count: typing.Optional[IncludeTotalCount]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Ricerca

Cerca tra risorse, cartelle e progetti all’interno di un account.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.search import SearchParamsFilters
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.search.search(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 engine="nlp",
10 query="red car driving on highway",
11 filters=SearchParamsFilters(
12 files_and_version_stacks=True,
13 folders=False,
14 projects=False,
15 ),
16 after="<opaque_cursor>",
17 page_size=10,
18 include_total_count=False,
19)

Parametri

account_id: Uuid

engine: SearchParamsEngine — Motore di ricerca da utilizzare. Motori disponibili: lexical, nlp.

query: str — Testo della query di ricerca

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize]

include_total_count: typing.Optional[IncludeTotalCount]

filters: typing.Optional[SearchParamsFilters] — Filtri per controllare quali tipi di risultati vengono restituiti

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Condivisioni

Mostra una singola condivisione.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.shares.show(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid

share_id: Uuid

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elimina una condivisione.

Limiti di frequenza: 60 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.shares.delete(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid

share_id: Uuid

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiorna la condivisione.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1import datetime
2
3from frameio import Frameio
4from frameio.shares import UpdateShareParamsData
5
6client = Frameio(
7 token="YOUR_TOKEN",
8)
9client.shares.update(
10 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
11 share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
12 data=UpdateShareParamsData(
13 access="public",
14 description="A descriptive summary of the share",
15 downloading_enabled=True,
16 expiration=datetime.datetime.fromisoformat(
17 "2026-01-22 17:04:53+00:00",
18 ),
19 name="Share Name",
20 passphrase="as!dfj39sd(*",
21 ),
22)

Parametri

account_id: Uuid

share_id: Uuid

data: UpdateShareParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elenca i revisori della condivisione.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.shares.list_reviewers(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 after="<opaque_cursor>",
10 page_size=10,
11 include_total_count=False,
12)
13for item in response:
14 yield item
15# alternatively, you can paginate page-by-page
16for page in response.iter_pages():
17 yield page

Parametri

account_id: Uuid

share_id: Uuid

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize]

include_total_count: typing.Optional[IncludeTotalCount]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiungi revisori alla condivisione sicura in base a tre tipi di identificatore: adobe_user_id, e-mail e user_id.

Una richiesta può includere un solo parametro di tipo di identificatore.

e-mail è l’unico identificatore in grado di aggiungere a una condivisione i revisori che non hanno un membro dell’account Frame nell’account a cui appartiene la condivisione.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.shares import (
3 AddReviewersToShareParamsData,
4 AddReviewersToShareParamsDataReviewers,
5)
6
7client = Frameio(
8 token="YOUR_TOKEN",
9)
10client.shares.add_reviewers(
11 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
12 share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
13 data=AddReviewersToShareParamsData(
14 message="Please join my share!",
15 reviewers=AddReviewersToShareParamsDataReviewers(
16 emails=["email1@domain.com", "email2@domain.com"],
17 ),
18 ),
19)

Parametri

account_id: Uuid

share_id: Uuid

data: AddReviewersToShareParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Rimuove i revisori dalla condivisione sicura in base a tre tipi di identificatore: adobe_user_id, e-mail e user_id.

Una richiesta può includere un solo parametro di tipo di identificatore.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.shares import (
3 RemoveReviewerParamsData,
4 RemoveReviewerParamsDataReviewers,
5)
6
7client = Frameio(
8 token="YOUR_TOKEN",
9)
10client.shares.remove_reviewers(
11 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
12 share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
13 data=RemoveReviewerParamsData(
14 reviewers=RemoveReviewerParamsDataReviewers(
15 adobe_user_ids=[
16 "2A3C1A3D66C621B20A494021@176719f5667c82b4499999.e"
17 ],
18 ),
19 ),
20)

Parametri

account_id: Uuid

share_id: Uuid

data: RemoveReviewerParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Rimuovi una risorsa all’interno di una condivisione.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.shares.remove_asset(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 asset_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10)

Parametri

account_id: Uuid

share_id: Uuid

asset_id: Uuid

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiungi nuova condivisione della risorsa.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.shares import AddAssetParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.shares.add_asset(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=AddAssetParamsData(
11 asset_id="0cc1cb59-1d7c-4176-8532-afe099897318",
12 ),
13)

Parametri

account_id: Uuid

share_id: Uuid

data: AddAssetParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elenca le condivisioni in un progetto.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.shares.index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 after="<opaque_cursor>",
10 page_size=10,
11 include_total_count=False,
12)
13for item in response:
14 yield item
15# alternatively, you can paginate page-by-page
16for page in response.iter_pages():
17 yield page

Parametri

account_id: Uuid

project_id: Uuid

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize]

include_total_count: typing.Optional[IncludeTotalCount]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea una condivisione.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1import datetime
2
3from frameio import Frameio
4from frameio.shares import CreateShareParamsData_Asset
5
6client = Frameio(
7 token="YOUR_TOKEN",
8)
9client.shares.create(
10 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
11 project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
12 data=CreateShareParamsData_Asset(
13 access="public",
14 asset_ids=[
15 "12eb1446-5736-4f93-85fc-3b636f156211",
16 "f23a3b3e-7b1f-4655-b91a-acf0566e5bb9",
17 ],
18 downloading_enabled=True,
19 expiration=datetime.datetime.fromisoformat(
20 "2026-01-22 17:04:53+00:00",
21 ),
22 name="Share Name",
23 passphrase="as!dfj39sd(*",
24 ),
25)

Parametri

account_id: Uuid

project_id: Uuid

data: CreateShareParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Caricare

Carica un file locale su Frame.io utilizzando gli URL pre-firmati restituiti da client.files.create_local_upload(...). FrameioUploader è un thin wrapper che legge upload_urls, file_size e media_type dalla risposta FileWithUploadUrls ed esegue un caricamento S3 suddiviso in blocchi e multi-thread.

usage
1from frameio import Frameio
2from frameio.files import FileCreateLocalUploadParamsData
3from frameio.upload import FrameioUploader
4
5client = Frameio(
6 token="YOUR_TOKEN",
7)
8response = client.files.create_local_upload(
9 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
11 data=FileCreateLocalUploadParamsData(
12 file_size=1137444,
13 name="asset.png",
14 ),
15)
16with open("asset.png", "rb") as f:
17 FrameioUploader(response.data, f).upload()

Parametri

asset: FileWithUploadUrls — Un’istanza FileWithUploadUrls restituita da client.files.create_local_upload(...).

file: typing.BinaryIO — Un oggetto simile a un file aperto in modalità di lettura binaria ("rb").

max_workers: int — Concorrenza del pool di thread passata all’uploader sottostante. Il valore predefinito è 5.

headers: typing.Optional[typing.Dict[str, str]] — Intestazioni aggiuntive unite in ogni richiesta PUT S3. Il valore predefinito è {"x-amz-acl": "private"} come richiesto da Frame.io.

max_retries: int — Numero di tentativi di ripetizione per chunk. Il valore predefinito è 3.

on_progress: typing.Optional[typing.Callable[[int, int], None]] — Callback opzionale richiamato dopo ogni chunk con (bytes_uploaded_so_far, total_bytes). Metodi upload() -&gt; None — Carica il file. Si blocca fino al completamento o genera un errore.

Utenti

Ispeziona i dettagli dell’utente associato al token bearer.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.users.show()

Parametri

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Stack di versioni

Elenca gli elementi figlio (file) in uno stack di versioni specifico.

Usa il parametro di query “include” della richiesta per includere in modo selettivo proprietà aggiuntive nella risposta.

Se includi media_links.original e l’utente non ha l’autorizzazione per scaricare file nel progetto corrispondente, questo endpoint risponderà con un errore 403 Forbidden. Se il contenuto non è accessibile perché è richiesta la filigrana per questo utente e non è supportata dai media_link richiesti, la richiesta avrà esito positivo, ma i link multimediali non supportati saranno impostati su null. Allo stesso modo, se un link di transcodifica richiesto non esiste per un file particolare (ad esempio includendo media_links.video_h264_180 su un file di immagine statica) o se il processo di transcodifica non è finito (ovvero lo stato del file è “uploaded” invece di “transcoded”), anche un link multimediale sarà impostato su null nel payload di risposta. In breve, il client deve gestire i link multimediali null in modo appropriato.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.version_stacks.index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 version_stack_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="media_links",
10 after="<opaque_cursor>",
11 page_size=10,
12 include_total_count=False,
13)

Parametri

account_id: Uuid —

version_stack_id: Uuid —

include: typing.Optional[FileWithMediaLinksInclude] —

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize] —

include_total_count: typing.Optional[IncludeTotalCount] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Mostra i dettagli dello stack di versioni.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.version_stacks.show(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 version_stack_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="media_links",
10)

Parametri

account_id: Uuid —

version_stack_id: Uuid —

include: typing.Optional[VersionStacksShowRequestInclude] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Copia lo stack di versioni.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.version_stacks import VersionStackCopyParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.version_stacks.copy(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 version_stack_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 copy_metadata=True,
11 data=VersionStackCopyParamsData(
12 parent_id="2e426fe0-f965-4594-8b2b-b4dff1dc00ec",
13 ),
14)

Parametri

account_id: Uuid —

version_stack_id: Uuid —

copy_metadata: typing.Optional[bool] — Indica se copiare i valori dei metadati insieme allo stack di versioni

data: typing.Optional[VersionStackCopyParamsData]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elenca gli stack di versioni in una determinata cartella.

Limiti di frequenza: 5 chiamate ogni 1 secondo per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.version_stacks.list(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include="media_links",
10 after="<opaque_cursor>",
11 page_size=10,
12 include_total_count=False,
13)

Parametri

account_id: Uuid —

folder_id: Uuid —

include: typing.Optional[FileWithMediaLinksInclude] —

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize] —

include_total_count: typing.Optional[IncludeTotalCount] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea un nuovo stack di versioni nella cartella principale.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.version_stacks import VersionStackCreateParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.version_stacks.create(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 folder_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=VersionStackCreateParamsData(
11 file_ids=[
12 "dd2a3cdd-fc90-41bd-a7b8-8a0447aec6d4",
13 "79fed48a-8372-496e-8dcb-5e959b9b9fcf",
14 ],
15 ),
16)

Parametri

account_id: Uuid —

folder_id: Uuid —

data: VersionStackCreateParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Sposta lo stack di versioni in una cartella.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.version_stacks import VersionStackMoveParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.version_stacks.move(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 version_stack_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=VersionStackMoveParamsData(
11 parent_id="2e426fe0-f965-4594-8b2b-b4dff1dc00ec",
12 ),
13)

Parametri

account_id: Uuid —

version_stack_id: Uuid —

data: VersionStackMoveParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Webhook

Elenca i webhook per l’area di lavoro specifica.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.webhooks.index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 workspace_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 after="<opaque_cursor>",
10 page_size=10,
11 include_total_count=False,
12)
13for item in response:
14 yield item
15# alternatively, you can paginate page-by-page
16for page in response.iter_pages():
17 yield page

Parametri

account_id: Uuid —

workspace_id: Uuid —

include: typing.Optional[typing.Literal[“creator”]] —

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize] —

include_total_count: typing.Optional[IncludeTotalCount] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea un singolo webhook con un secret.

Eventi validi:

file.created, file.deleted, file.ready, file.updated, file.upload.completed, file.versioned, file.copied, folder.created, folder.deleted, folder.updated, folder.copied, comment.completed, comment.created, comment.deleted, comment.uncompleted, comment.updated, customfield.created, customfield.updated, customfield.deleted, metadata.value.updated, project.created, project.deleted, project.updated, collection.created, collection.updated, collection.deleted, share.created, share.updated, share.deleted, share.viewed.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account

usage
1from frameio import Frameio
2from frameio.webhooks import WebhookCreateParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.webhooks.create(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 workspace_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=WebhookCreateParamsData(
11 events=[
12 "file.created",
13 "file.deleted",
14 "file.ready",
15 "file.updated",
16 "file.upload.completed",
17 "file.versioned",
18 "file.copied",
19 "folder.created",
20 "folder.deleted",
21 "folder.updated",
22 "folder.copied",
23 "comment.completed",
24 "comment.created",
25 "comment.deleted",
26 "comment.uncompleted",
27 "comment.updated",
28 "customfield.created",
29 "customfield.updated",
30 "customfield.deleted",
31 "metadata.value.updated",
32 "project.created",
33 "project.deleted",
34 "project.updated",
35 "collection.created",
36 "collection.updated",
37 "collection.deleted",
38 "share.created",
39 "share.updated",
40 "share.deleted",
41 "share.viewed",
42 ],
43 name="New Webhook",
44 url="https://url.example.com",
45 ),
46)

Parametri

account_id: Uuid —

workspace_id: Uuid —

data: WebhookCreateParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Mostra i dettagli del webhook.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.webhooks.show(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 webhook_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid —

webhook_id: Uuid —

include: typing.Optional[typing.Literal[“creator”]] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elimina un webhook.

Limiti di frequenza: 60 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.webhooks.delete(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 webhook_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid —

webhook_id: Uuid —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiorna i dettagli del webhook.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2from frameio.webhooks import WebhookUpdateParamsData
3
4client = Frameio(
5 token="YOUR_TOKEN",
6)
7client.webhooks.update(
8 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 webhook_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=WebhookUpdateParamsData(
11 active=True,
12 events=[
13 "file.created",
14 "file.deleted",
15 "file.ready",
16 "file.updated",
17 "file.upload.completed",
18 "file.versioned",
19 "file.copied",
20 "folder.created",
21 "folder.deleted",
22 "folder.updated",
23 "folder.copied",
24 "comment.completed",
25 "comment.created",
26 "comment.deleted",
27 "comment.uncompleted",
28 "comment.updated",
29 "customfield.created",
30 "customfield.updated",
31 "customfield.deleted",
32 "metadata.value.updated",
33 "project.created",
34 "project.deleted",
35 "project.updated",
36 "collection.created",
37 "collection.updated",
38 "collection.deleted",
39 "share.created",
40 "share.updated",
41 "share.deleted",
42 "share.viewed",
43 ],
44 name="Updated Webhook",
45 url="https://url.example.com",
46 ),
47)

Parametri

account_id: Uuid —

webhook_id: Uuid —

data: WebhookUpdateParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Autorizzazioni dell’area di lavoro

Elenca i ruoli utente per un’area di lavoro specifica.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.workspace_permissions.index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 workspace_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 include_deactivated=True,
10 after="<opaque_cursor>",
11 page_size=10,
12 include_total_count=False,
13)
14for item in response:
15 yield item
16# alternatively, you can paginate page-by-page
17for page in response.iter_pages():
18 yield page

Parametri

account_id: Uuid

workspace_id: Uuid

includ_deactivated: typing.Optional[bool] — Supporta l’inclusione di utenti disattivati nella risposta.Il valore predefinito è false.

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize]

include_total_count: typing.Optional[IncludeTotalCount]

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Rimuovi un utente da un’area di lavoro specifica.

Limiti di frequenza: 60 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.workspace_permissions.workspace_user_roles_delete(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 workspace_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 user_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10)

Parametri

account_id: Uuid

workspace_id: Uuid

user_id: Uuid

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiorna i ruoli utente per l’area di lavoro specificata se l’utente è già stato aggiunto all’area di lavoro. Se l’utente non è stato aggiunto all’area di lavoro, viene aggiunto con il ruolo specificato.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio, UpdateUserRolesParamsData
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.workspace_permissions.workspace_user_roles_update(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 workspace_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 user_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
10 data=UpdateUserRolesParamsData(
11 role="editor",
12 ),
13)

Parametri

account_id: Uuid

workspace_id: Uuid

user_id: Uuid

data: UpdateUserRolesParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aree di lavoro

Mostra i dettagli dell’area di lavoro.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.workspaces.show(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 workspace_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid —

workspace_id: Uuid —

include: typing.Optional[typing.Literal[“creator”]] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elimina l’area di lavoro dall’account.

Limiti di frequenza: 60 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.workspaces.delete(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 workspace_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9)

Parametri

account_id: Uuid —

workspace_id: Uuid —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Aggiorna un’area di lavoro.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio, WorkspaceParamsData
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.workspaces.update(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 workspace_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
9 data=WorkspaceParamsData(
10 name="My Workspace",
11 ),
12)

Parametri

account_id: Uuid —

workspace_id: Uuid —

data: WorkspaceParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Elenca le aree di lavoro per un account specifico.

Limiti di frequenza: 100 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6response = client.workspaces.index(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 after="<opaque_cursor>",
9 page_size=10,
10 include_total_count=False,
11)
12for item in response:
13 yield item
14# alternatively, you can paginate page-by-page
15for page in response.iter_pages():
16 yield page

Parametri

account_id: Uuid —

workspace_id: Uuid —

include: typing.Optional[typing.Literal[“owner”]] —

after: typing.Optional[RequestAfterOpaqueCursor]

Parametro di richiesta del cursore opaco per le richieste che restituiscono risultati impaginati.

Questo valore è generato automaticamente e incluso come nei link provenienti da una risposta precedente. Non è destinato a essere leggibile.

page_size: typing.Optional[RequestPageSize] —

include_total_count: typing.Optional[IncludeTotalCount] —

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.

Crea l’area di lavoro da un account.

Limiti di frequenza: 10 chiamate ogni 1,00 minuto per account_user

usage
1from frameio import Frameio, WorkspaceParamsData
2
3client = Frameio(
4 token="YOUR_TOKEN",
5)
6client.workspaces.create(
7 account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
8 data=WorkspaceParamsData(
9 name="My Workspace",
10 ),
11)

Parametri

account_id: Uuid —

data: WorkspaceParamsData

request_options: typing.Optional[RequestOptions] — Configurazione specifica della richiesta.


PyPI

Visualizza su PyPI