Documentazione API di TutuPrints
Usa l’API REST o il protocollo MCP per far eseguire a un assistente IA stampa foto, stampa documenti, gestione ordini e ogni altra operazione direttamente.
Supporta 21 client IA principali, tra cui Claude, Gemini, Codex e Copilot.
Avvio rapido
Integra in tre passaggi e inizia subito a usare l’IA per stampare.
Registra un account
Visita il sito di TutuPrints e registrati rapidamente con un codice di verifica via SMS.
Crea una API Key
Nella pagina «Chiavi API» del centro account, crea una chiave con un clic e usala subito.
Invia una richiesta
Chiama l’API REST con la tua API Key, oppure configurala in un client IA per usare MCP.
Autenticazione
Tutte le richieste API si autenticano tramite la API Key in un header HTTP.
Authorization: Bearer tk_YOUR_API_KEY
Base URL
https://tutupp.comFormato della risposta
Content-Type: application/jsonEndpoint MCP
POST https://tutupp.com/api/mcpIntegrazione MCP
MCP (Model Context Protocol) è un protocollo aperto di Anthropic che consente agli assistenti IA di chiamare strumenti esterni direttamente.
Una volta configurato, puoi usare il linguaggio naturale per far eseguire all’IA l’intero flusso «carica documento → crea ordine → paga con saldo».
Informazioni sul protocollo
Endpoint: https://tutupp.com/api/mcp
Protocollo: JSON-RPC 2.0 over Streamable HTTP
Metodi: initialize · tools/list · tools/call
Caricamento file: Supporta l’estensione multipart/form-data (message part + file parts, senza base64, 100MB+) e lo standard application/json
Scegli il tuo client IA 21
Aggiungi (Add)
claude mcp add --transport http tutuprints https://tutupp.com/api/mcp --header "Authorization: Bearer tk_YOUR_API_KEY"
Aggiungi --scope user per il globale, --scope project solo per il progetto corrente
Sostituisci chiave (Replace)
claude mcp remove tutuprints && claude mcp add --transport http tutuprints ...(nuova chiave)
Rimuovi (Remove)
claude mcp remove tutuprints
Esempio di conversazione con l’IA
L’IA chiama automaticamente:
1. upload_document → Carica il file
2. get_print_prices → Cerca il prezzo A4 B/N
3. create_order → Crea l’ordine
4. pay_with_balance → Paga con il saldo
Riferimento API REST
Una API Key può accedere a tutti gli endpoint seguenti, coprendo ogni funzione dell’interfaccia.
adt0
/api/documents/upload add0/api/documents add1/api/documents/{id} add2/api/documents/{id} add3adt1
/api/photos/upload add4/api/photos/{id} add5/api/photos/{id} add6/api/photos/{id}/quality-check?size={size} add7adt2
/api/orders add8/api/orders add9/api/orders/{id} add10/api/orders/{id}/cancel add11/api/orders/track/{order_no} add12/api/orders/{id}/tracking add13adt3
/api/payment/create add14/api/payment/balance add15/api/payment/status/{order_id} add16adt4
/api/user/balance add17/api/user/balance/topup add18/api/user/balance/transactions add19adt5
/api/user/coupons add20/api/user/coupons/available add21/api/user/coupons/redeem add22adt6
/api/addresses add23/api/addresses add24/api/addresses/{id} add25/api/addresses/{id} add26/api/addresses/parse add27adt7
/api/user/pre-orders add28/api/user/pre-orders add29/api/user/pre-orders/{id} add30/api/user/pre-orders/{id} add31/api/user/pre-orders/{id}/status add32/api/user/pre-orders/{id}/submissions/{sid}/review add33/api/user/pre-orders/{id}/submissions/{sid}/cancel add34adt8
/api/share/{code} add35/api/share/{code}/submit add36/api/share/{code}/submissions/{sid} add37/api/share/{code}/my-submissions add38adt9
/api/user/after-sales add39/api/after-sales add40adt10
/api/regions add41/api/regions/{id} add42/api/regions/tree add43/api/regions/coverage add44/api/regions/{city_id}/city-coverage add45/api/regions/{id}/express-delivery add46/api/regions/{id}/pickup-points add47/api/agents/referral/{code} add48/api/shipping/config add49/api/shipping/carriers add50adt11
/api/prices add51/api/print-options/sizes add52/api/print-options/paper-types add53adt12
/api/photos/{id}/restore add54/api/restorations/{id} add55adt13
/api/auth/me add56/api/auth/me add57adt14
/api/printer/status add58/api/print-queue/status add59/api/orders/auto-print-schedule add60adt15
/api/user/api-keys add61/api/user/api-keys add62/api/user/api-keys/{id} add63adt16
/api/health add64Elenco strumenti MCP73
Tutti gli strumenti sotto sono richiamabili tramite il protocollo MCP; i client IA li rilevano automaticamente una volta configurati.
adt17
upload_document add65 file_url | content | file_path, filename?list_documents add66 get_document_info add67 document_iddelete_document add68 document_idadt18
upload_photo add69 file_url | content | file_path, filename?get_photo add70 photo_iddelete_photo add71 photo_idcheck_photo_quality add72 photo_id, sizeadt19
create_order add73 items[], delivery_method?, shipping_carrier_id?, coupon_id?list_orders add74 get_order_status add75 order_idcancel_order add76 order_idtrack_order add77 order_noget_order_tracking add78 order_idadt20
create_payment add79 order_id, payment_method?pay_with_balance add80 order_idget_payment_status add81 order_idcreate_topup add82 amount, payment_method?get_balance add83 get_balance_transactions add84 page?, page_size?adt21
list_coupons add85 scope?get_available_coupons add86 amount?, scope?redeem_coupon add87 codeadt22
list_addresses add88 create_address add89 name, phone, country, province, city, district, detail, ...update_address add90 address_id, ...delete_address add91 address_idparse_address add92 text, countryadt23
list_pre_orders add93 create_pre_order add94 title, order_type, spec_mode, ...get_pre_order add95 pre_order_idupdate_pre_order add96 pre_order_id, ...update_pre_order_status add97 pre_order_id, statusreview_submission add98 pre_order_id, submission_id, approved, reject_reason?cancel_submission add99 pre_order_id, submission_idadt24
get_share_info add100 share_codesubmit_share_photos add101 share_code, photo_ids[], password?, ...get_submission_status add102 share_code, submission_idlist_my_submissions add103 share_codeadt25
list_after_sales add104 create_after_sales add105 order_id, type, reason, ...adt26
list_regions add106 level?, parent_id?, search?get_region add107 region_idget_region_tree add108 get_region_coverage add109 get_city_coverage add110 city_idget_agent_by_referral add111 referral_codecheck_express_delivery add112 region_idget_shipping_config add113 get_shipping_carriers add114 list_pickup_points add115 region_idadt27
get_print_prices add116 get_print_options add117 get_printer_status add118 get_queue_status add119 adt28
get_profile add120 update_profile add121 nicknameadt29
restoration_preview add122 photo_idget_restoration add123 restoration_idcreate_restore_share add_sh1 restoration_ids[], message?, expire_days?, max_claims?, with_passcode?list_my_restore_shares add_sh2 page?, limit?revoke_restore_share add_sh3 share_idclaim_restore_share add_sh4 code, passcode?adt30
list_api_keys add124 create_api_key add125 name, expires_in_days?revoke_api_key add126 api_key_idadt31
health_check add127 get_auto_print_schedule add128 adt32
submit_order_review add129 order_id, rating_print, rating_shipping?, rating_service?, comment?batch_submit_order_reviews add130 items[{order_id, rating_print, ...}]list_my_order_reviews add131 page?, limit?get_order_review add132 review_idmark_order_review_read add133 review_idEsempi di codice
Un esempio completo del flusso «consulta prezzi → carica file → crea ordine → paga con saldo».
# Consulta prezzi
curl https://tutupp.com/api/prices \
-H "Authorization: Bearer tk_YOUR_API_KEY"
# Carica documento
curl -X POST https://tutupp.com/api/documents/upload \
-H "Authorization: Bearer tk_YOUR_API_KEY" \
-F "file=@report.pdf"
# Crea ordine
curl -X POST https://tutupp.com/api/orders \
-H "Authorization: Bearer tk_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"items": [{
"document_id": "uuid-here",
"size": "A4",
"paper_type": "matte",
"quantity": 1
}],
"delivery_method": "pickup"
}'
# Paga con saldo
curl -X POST https://tutupp.com/api/payment/balance \
-H "Authorization: Bearer tk_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"order_id": "uuid-here"}' Flusso di lavoro tipico
Gestione degli errori
L’API usa codici di stato HTTP standard; le risposte di errore contengono le info sull’errore in JSON.
// Formato della risposta di errore
{
"error": "Descrizione dell’errore"
}retry_after_seconds + l’header Retry-After.Pronto per iniziare?
Registra un account, crea una API Key e lascia che l’IA gestisca le tue stampe.