{"openapi":"3.1.0","info":{"title":"ideare API","version":"1.0.0","description":"Marcas, suas versões aprovadas e arquivos, imagens de IA e posts. Crie uma chave no estúdio (https://studio.ideare.app) e mande como \"Authorization: Bearer ideare_...\". Versões aprovadas são públicas: ler não precisa de chave."},"servers":[{"url":"https://api.ideare.app/v1"}],"tags":[{"name":"Brands","description":"A brand's draft, its settings and its approval."},{"name":"Versions","description":"Approved versions. Public: anyone can read them."},{"name":"Files","description":"The files of a version, and pictures drawn from templates."},{"name":"Runs","description":"Work that takes a while: follow it, or stop it."},{"name":"AI","description":"Text suggestions (free) and AI pictures (credits)."},{"name":"Imports","description":"Start a brand from a link or from your own files."},{"name":"Assets","description":"Your uploaded files."},{"name":"Names","description":"Is a name free as a domain and as a handle?"},{"name":"Usage","description":"Credits and daily allowances."},{"name":"Designs","description":"Posts and other designs made in the editor."}],"paths":{"/brands":{"get":{"operationId":"list_brands","tags":["Brands"],"summary":"Listar suas marcas","description":"As marcas do seu espaço, da alterada mais recentemente para a mais antiga, com o total. Cada uma mostra a versão atual e se há uma mudança esperando aprovação. Não gasta créditos.","parameters":[{"name":"limit","in":"query","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"offset","in":"query","required":false,"schema":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Listar suas marcas","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"slug":{"type":"string"},"name":{"type":"string"},"currentVersion":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"draftRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"proposed":{"type":"boolean"},"approving":{"type":"boolean"},"markUrl":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}]},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","slug","name","currentVersion","draftRev","proposed","approving","markUrl","updatedAt"],"additionalProperties":false}},"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"limit":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"offset":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["items","total","limit","offset"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"brands.list","returns":"BrandPageDto"},"x-credits":0},"post":{"operationId":"create_brand","tags":["Brands"],"summary":"Criar uma marca","description":"Comece uma marca com um nome e, se tiver, os mestres que já desenhou. Ela nasce como rascunho privado: nada fica público até um dono aprovar. Sem slug, ele sai do nome e vira o endereço da marca: ideare.app/b/<slug>. Não gasta créditos.","parameters":[{"name":"idempotency-key","in":"header","required":false,"description":"Your own key for this request, such as a UUID. Send the same key again after a timeout and you get the first answer back, with nothing done or charged twice.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string","minLength":1,"maxLength":80},"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"},"masters":{"type":"object","properties":{"schemaVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["schemaVersion","name"],"additionalProperties":{}},"origin":{"type":"object","properties":{"kind":{"type":"string","enum":["idea","link","files","try"]},"idea":{"type":"string","maxLength":500},"url":{"type":"string","maxLength":2000,"format":"uri"},"seed":{"type":"string","maxLength":100},"picks":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","number"]}},"run":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["kind"],"additionalProperties":false}},"required":["name"]}}}},"security":[{"bearerAuth":[]}],"responses":{"201":{"description":"Criar uma marca","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"slug":{"type":"string"},"name":{"type":"string"},"workspaceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draft":{"type":"object","properties":{"masters":{"type":"object","properties":{"schemaVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["schemaVersion","name"],"additionalProperties":{}},"rev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedBy":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":["string","null"]}},"required":["id","name"],"additionalProperties":false},{"type":"null"}]}},"required":["masters","rev","updatedAt","updatedBy"],"additionalProperties":false},"currentVersion":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"proposal":{"anyOf":[{"type":"object","properties":{"rev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"proposedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"proposedBy":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":["string","null"]}},"required":["id","name"],"additionalProperties":false},{"type":"null"}]},"source":{"type":"string","enum":["studio","cli","api","mcp"]}},"required":["rev","proposedAt","proposedBy","source"],"additionalProperties":false},{"type":"null"}]},"approving":{"anyOf":[{"type":"object","properties":{"runId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["runId","version"],"additionalProperties":false},{"type":"null"}]},"launched":{"type":"boolean"},"sharing":{"type":"object","properties":{"voice":{"type":"boolean"},"artRefs":{"type":"boolean"},"contacts":{"type":"boolean"}},"required":["voice","artRefs","contacts"],"additionalProperties":false},"origin":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["idea","link","files","try"]},"idea":{"type":"string","maxLength":500},"url":{"type":"string","maxLength":2000,"format":"uri"},"seed":{"type":"string","maxLength":100},"picks":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","number"]}},"run":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["kind"],"additionalProperties":false},{"type":"null"}]},"urls":{"type":"object","properties":{"page":{"type":"string","format":"uri"},"latest":{"type":"string","format":"uri"}},"required":["page","latest"],"additionalProperties":false},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","slug","name","workspaceId","draft","currentVersion","proposal","approving","launched","sharing","origin","urls","createdAt","updatedAt"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"brands.create","returns":"BrandDto"},"x-credits":0}},"/brands/{slug}":{"get":{"operationId":"get_brand","tags":["Brands"],"summary":"Ver uma marca","description":"Uma marca com o rascunho: os mestres (brand.json) como foram salvos por último, a revisão do rascunho, a versão atual e qualquer mudança esperando aprovação. Mande a revisão de volta ao salvar ou aprovar. Não gasta créditos.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Ver uma marca","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"slug":{"type":"string"},"name":{"type":"string"},"workspaceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draft":{"type":"object","properties":{"masters":{"type":"object","properties":{"schemaVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["schemaVersion","name"],"additionalProperties":{}},"rev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedBy":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":["string","null"]}},"required":["id","name"],"additionalProperties":false},{"type":"null"}]}},"required":["masters","rev","updatedAt","updatedBy"],"additionalProperties":false},"currentVersion":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"proposal":{"anyOf":[{"type":"object","properties":{"rev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"proposedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"proposedBy":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":["string","null"]}},"required":["id","name"],"additionalProperties":false},{"type":"null"}]},"source":{"type":"string","enum":["studio","cli","api","mcp"]}},"required":["rev","proposedAt","proposedBy","source"],"additionalProperties":false},{"type":"null"}]},"approving":{"anyOf":[{"type":"object","properties":{"runId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["runId","version"],"additionalProperties":false},{"type":"null"}]},"launched":{"type":"boolean"},"sharing":{"type":"object","properties":{"voice":{"type":"boolean"},"artRefs":{"type":"boolean"},"contacts":{"type":"boolean"}},"required":["voice","artRefs","contacts"],"additionalProperties":false},"origin":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["idea","link","files","try"]},"idea":{"type":"string","maxLength":500},"url":{"type":"string","maxLength":2000,"format":"uri"},"seed":{"type":"string","maxLength":100},"picks":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","number"]}},"run":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["kind"],"additionalProperties":false},{"type":"null"}]},"urls":{"type":"object","properties":{"page":{"type":"string","format":"uri"},"latest":{"type":"string","format":"uri"}},"required":["page","latest"],"additionalProperties":false},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","slug","name","workspaceId","draft","currentVersion","proposal","approving","launched","sharing","origin","urls","createdAt","updatedAt"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"brands.get","returns":"BrandDto"},"x-credits":0},"patch":{"operationId":"update_brand","tags":["Brands"],"summary":"Mudar os ajustes de uma marca","description":"Diga que a marca foi lançada, para os buscadores poderem mostrar a página pública, e escolha o que o brand.json público compartilha: as notas de voz, as referências de arte e os contatos (telefone, WhatsApp e e-mail). O lançamento aparece em até um minuto; o que o brand.json compartilha muda na próxima aprovação. Só donos e admins. Não gasta créditos.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"launched":{"type":"boolean"},"sharing":{"type":"object","properties":{"voice":{"type":"boolean"},"artRefs":{"type":"boolean"},"contacts":{"type":"boolean"}},"additionalProperties":false}}}}}},"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Mudar os ajustes de uma marca","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"slug":{"type":"string"},"name":{"type":"string"},"workspaceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draft":{"type":"object","properties":{"masters":{"type":"object","properties":{"schemaVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["schemaVersion","name"],"additionalProperties":{}},"rev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedBy":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":["string","null"]}},"required":["id","name"],"additionalProperties":false},{"type":"null"}]}},"required":["masters","rev","updatedAt","updatedBy"],"additionalProperties":false},"currentVersion":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"proposal":{"anyOf":[{"type":"object","properties":{"rev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"proposedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"proposedBy":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":["string","null"]}},"required":["id","name"],"additionalProperties":false},{"type":"null"}]},"source":{"type":"string","enum":["studio","cli","api","mcp"]}},"required":["rev","proposedAt","proposedBy","source"],"additionalProperties":false},{"type":"null"}]},"approving":{"anyOf":[{"type":"object","properties":{"runId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["runId","version"],"additionalProperties":false},{"type":"null"}]},"launched":{"type":"boolean"},"sharing":{"type":"object","properties":{"voice":{"type":"boolean"},"artRefs":{"type":"boolean"},"contacts":{"type":"boolean"}},"required":["voice","artRefs","contacts"],"additionalProperties":false},"origin":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["idea","link","files","try"]},"idea":{"type":"string","maxLength":500},"url":{"type":"string","maxLength":2000,"format":"uri"},"seed":{"type":"string","maxLength":100},"picks":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","number"]}},"run":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["kind"],"additionalProperties":false},{"type":"null"}]},"urls":{"type":"object","properties":{"page":{"type":"string","format":"uri"},"latest":{"type":"string","format":"uri"}},"required":["page","latest"],"additionalProperties":false},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","slug","name","workspaceId","draft","currentVersion","proposal","approving","launched","sharing","origin","urls","createdAt","updatedAt"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"brands.update","returns":"BrandDto"},"x-credits":0},"delete":{"operationId":"delete_brand","tags":["Brands"],"summary":"Apagar uma marca","description":"Tire uma marca do seu espaço, com o rascunho e os designs. As versões já aprovadas continuam no CDN, porque sites e lockfiles podem usá-las, e o slug nunca vai para outra pessoa. Só o dono. Não gasta créditos.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Apagar uma marca","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean","const":true}},"required":["id","deleted"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"brands.delete","returns":"DeletedDto"},"x-credits":0}},"/brands/{slug}/draft":{"put":{"operationId":"update_draft","tags":["Brands"],"summary":"Salvar o rascunho","description":"Troque os mestres (brand.json) do rascunho. Mande o draftRev de onde você partiu: se alguém salvou no meio-tempo, a resposta é um 409 com o rascunho atual, e nenhuma mudança se perde. Salvar não publica nada. Não gasta créditos.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"draftRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"masters":{"type":"object","properties":{"schemaVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["schemaVersion","name"],"additionalProperties":{}}},"required":["draftRev","masters"]}}}},"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Salvar o rascunho","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"slug":{"type":"string"},"name":{"type":"string"},"workspaceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draft":{"type":"object","properties":{"masters":{"type":"object","properties":{"schemaVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["schemaVersion","name"],"additionalProperties":{}},"rev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedBy":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":["string","null"]}},"required":["id","name"],"additionalProperties":false},{"type":"null"}]}},"required":["masters","rev","updatedAt","updatedBy"],"additionalProperties":false},"currentVersion":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"proposal":{"anyOf":[{"type":"object","properties":{"rev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"proposedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"proposedBy":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":["string","null"]}},"required":["id","name"],"additionalProperties":false},{"type":"null"}]},"source":{"type":"string","enum":["studio","cli","api","mcp"]}},"required":["rev","proposedAt","proposedBy","source"],"additionalProperties":false},{"type":"null"}]},"approving":{"anyOf":[{"type":"object","properties":{"runId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["runId","version"],"additionalProperties":false},{"type":"null"}]},"launched":{"type":"boolean"},"sharing":{"type":"object","properties":{"voice":{"type":"boolean"},"artRefs":{"type":"boolean"},"contacts":{"type":"boolean"}},"required":["voice","artRefs","contacts"],"additionalProperties":false},"origin":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["idea","link","files","try"]},"idea":{"type":"string","maxLength":500},"url":{"type":"string","maxLength":2000,"format":"uri"},"seed":{"type":"string","maxLength":100},"picks":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","number"]}},"run":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["kind"],"additionalProperties":false},{"type":"null"}]},"urls":{"type":"object","properties":{"page":{"type":"string","format":"uri"},"latest":{"type":"string","format":"uri"}},"required":["page","latest"],"additionalProperties":false},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","slug","name","workspaceId","draft","currentVersion","proposal","approving","launched","sharing","origin","urls","createdAt","updatedAt"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"brands.updateDraft","returns":"BrandDto"},"x-credits":0}},"/brands/{slug}/approve":{"post":{"operationId":"approve_draft","tags":["Brands"],"summary":"Aprovar o rascunho","description":"Se vier de um dono ou admin: transforma o rascunho numa nova versão pública. Todos os arquivos são desenhados de novo e publicados em cdn.ideare.app/b/<slug>/v<n>/; acompanhe a execução para ver terminar. Se vier de outra pessoa: pede ao dono para aprovar este rascunho, com um toque. Mande o draftRev que você viu. Não gasta créditos.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},{"name":"idempotency-key","in":"header","required":false,"description":"Your own key for this request, such as a UUID. Send the same key again after a timeout and you get the first answer back, with nothing done or charged twice.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"draftRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["draftRev"]}}}},"security":[{"bearerAuth":[]}],"responses":{"202":{"description":"Aprovar o rascunho","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"oneOf":[{"type":"object","properties":{"outcome":{"type":"string","const":"approving"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"runId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["outcome","version","runId"],"additionalProperties":false},{"type":"object","properties":{"outcome":{"type":"string","const":"proposed"},"proposal":{"type":"object","properties":{"rev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"proposedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"proposedBy":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":["string","null"]}},"required":["id","name"],"additionalProperties":false},{"type":"null"}]},"source":{"type":"string","enum":["studio","cli","api","mcp"]}},"required":["rev","proposedAt","proposedBy","source"],"additionalProperties":false}},"required":["outcome","proposal"],"additionalProperties":false},{"type":"object","properties":{"outcome":{"type":"string","const":"current"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"draftRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["outcome","version","draftRev"],"additionalProperties":false}]}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"brands.approve","returns":"ApproveResultDto"},"x-credits":0}},"/brands/{slug}/check":{"post":{"operationId":"check_brand","tags":["Brands"],"summary":"Conferir uma marca","description":"Confira o rascunho como uma aprovação confere: contraste, leitura em tamanho pequeno, texto que cabe, áreas seguras em cada tamanho de rede social e as regras de texto. Cada resultado diz o que arrumar. Não muda nada. Não gasta créditos.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Conferir uma marca","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"passed":{"type":"boolean"},"checks":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"status":{"type":"string","enum":["pass","warn","fail"]},"file":{"type":["string","null"]},"message":{"type":"string"},"messageKey":{"type":"string"},"details":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["id","status","file","message"],"additionalProperties":{}}}},"required":["passed","checks"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"brands.check","returns":"CheckReportDto","repeatable":true},"x-credits":0}},"/brands/{slug}/versions":{"get":{"operationId":"list_versions","tags":["Versions"],"summary":"Listar as versões de uma marca","description":"Todas as versões aprovadas de uma marca, da mais nova para a mais antiga, com o que mudou em cada uma. Versões são públicas: não precisa de chave. Não gasta créditos.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},{"name":"limit","in":"query","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"offset","in":"query","required":false,"schema":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991}}],"security":[],"responses":{"200":{"description":"Listar as versões de uma marca","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"approvedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"source":{"type":"string","enum":["studio","cli","api","mcp"]},"restoredFrom":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"summary":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string"},"change":{"type":"string","enum":["added","changed","removed"]}},"required":["path","change"],"additionalProperties":false}}},"required":["version","approvedAt","source","restoredFrom","summary"],"additionalProperties":false}},"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"limit":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"offset":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["items","total","limit","offset"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"versions.list","returns":"VersionPageDto"},"x-credits":0}},"/brands/{slug}/versions/{version}":{"get":{"operationId":"get_version","tags":["Versions"],"summary":"Ver uma versão","description":"Uma versão aprovada e todos os arquivos dela, cada um com endereço e sha256. Peça `latest` para receber a versão para onde a marca aponta agora: a CLI resolve aqui e depois baixa os arquivos daquela versão exata. Versões são públicas: não precisa de chave. Não gasta créditos.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},{"name":"version","in":"path","required":true,"schema":{"anyOf":[{"type":"string","const":"latest"},{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}]}}],"security":[],"responses":{"200":{"description":"Ver uma versão","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"approvedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"source":{"type":"string","enum":["studio","cli","api","mcp"]},"restoredFrom":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"summary":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string"},"change":{"type":"string","enum":["added","changed","removed"]}},"required":["path","change"],"additionalProperties":false}},"slug":{"type":"string"},"rendererVersion":{"type":"string"},"baseUrl":{"type":"string","format":"uri"},"manifestUrl":{"type":"string","format":"uri"},"files":{"type":"array","items":{"type":"object","properties":{"sha256":{"type":"string","pattern":"^[0-9a-f]{64}$"},"mime":{"type":"string"},"size":{"type":"integer","minimum":0,"maximum":9007199254740991},"path":{"type":"string"},"url":{"type":"string","format":"uri"}},"required":["sha256","mime","size","path","url"],"additionalProperties":false}}},"required":["version","approvedAt","source","restoredFrom","summary","slug","rendererVersion","baseUrl","manifestUrl","files"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"versions.get","returns":"VersionDto"},"x-credits":0}},"/brands/{slug}/versions/{version}/restore":{"post":{"operationId":"restore_version","tags":["Versions"],"summary":"Voltar para uma versão antiga","description":"Coloca os mestres de uma versão antiga de volta no rascunho e aprova como uma nova versão, então o histórico só cresce. Se não vier de um dono ou admin, pede ao dono para aprovar. Mande o draftRev atual do rascunho: ele é substituído. Não gasta créditos.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},{"name":"version","in":"path","required":true,"schema":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},{"name":"idempotency-key","in":"header","required":false,"description":"Your own key for this request, such as a UUID. Send the same key again after a timeout and you get the first answer back, with nothing done or charged twice.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"draftRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["draftRev"]}}}},"security":[{"bearerAuth":[]}],"responses":{"202":{"description":"Voltar para uma versão antiga","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"oneOf":[{"type":"object","properties":{"outcome":{"type":"string","const":"approving"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"runId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["outcome","version","runId"],"additionalProperties":false},{"type":"object","properties":{"outcome":{"type":"string","const":"proposed"},"proposal":{"type":"object","properties":{"rev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"proposedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"proposedBy":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":["string","null"]}},"required":["id","name"],"additionalProperties":false},{"type":"null"}]},"source":{"type":"string","enum":["studio","cli","api","mcp"]}},"required":["rev","proposedAt","proposedBy","source"],"additionalProperties":false}},"required":["outcome","proposal"],"additionalProperties":false},{"type":"object","properties":{"outcome":{"type":"string","const":"current"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"draftRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["outcome","version","draftRev"],"additionalProperties":false}]}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"versions.restore","returns":"ApproveResultDto"},"x-credits":0}},"/brands/{slug}/files":{"get":{"operationId":"list_files","tags":["Files"],"summary":"Listar os arquivos de uma marca","description":"Todos os arquivos de uma versão (a atual, se você não disser qual): logos, ícones do site, imagens de compartilhamento, tamanhos de redes sociais, tokens, a assinatura de e-mail e o cartão de visita. Cada um com endereço, tipo, tamanho e sha256. Passe um grupo (web, logo, og, social, tokens, registry, docs, email, print) para receber uma pasta só. Não gasta créditos.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},{"name":"version","in":"query","required":false,"schema":{"default":"latest","anyOf":[{"type":"string","const":"latest"},{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}]}},{"name":"group","in":"query","required":false,"schema":{"type":"string","pattern":"^[a-z-]{2,20}$"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Listar os arquivos de uma marca","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"slug":{"type":"string"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"baseUrl":{"type":"string","format":"uri"},"files":{"type":"array","items":{"type":"object","properties":{"sha256":{"type":"string","pattern":"^[0-9a-f]{64}$"},"mime":{"type":"string"},"size":{"type":"integer","minimum":0,"maximum":9007199254740991},"path":{"type":"string"},"url":{"type":"string","format":"uri"}},"required":["sha256","mime","size","path","url"],"additionalProperties":false}}},"required":["slug","version","baseUrl","files"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"files.list","returns":"FilesDto"},"x-credits":0}},"/brands/{slug}/render":{"post":{"operationId":"render_template","tags":["Files"],"summary":"Desenhar um modelo","description":"Desenhe um dos modelos de post da marca com o seu texto, em PNG ou JPEG, e receba um link que vale por uma hora. Modelos: promotion, hours, menu, pix (mande a chave Pix), new-product, status-offer e carousel (5 páginas). Tamanhos: ig-post, ig-square, ig-story, wa-status e share-card. Um texto que não cabe é recusado, com o campo a encurtar. Usa o rascunho, a não ser que você diga a versão. Não gasta créditos, dentro do limite de desenhos por hora.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"template":{"type":"string","enum":["promotion","hours","menu","pix","new-product","status-offer","carousel"]},"size":{"type":"string","enum":["ig-post","ig-square","ig-story","wa-status","share-card"]},"text":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^[a-z0-9-]{1,40}$"},"additionalProperties":{"type":"string","maxLength":500}},"locale":{"type":"string","enum":["pt-BR","en","es"]},"page":{"default":0,"type":"integer","minimum":0,"maximum":19},"pix":{"type":"object","properties":{"key":{"type":"string","minLength":1,"maxLength":77},"city":{"type":"string","minLength":1,"maxLength":15},"amount":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["key"],"additionalProperties":false},"format":{"default":"png","type":"string","enum":["png","jpeg"]},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["template"]}}}},"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Desenhar um modelo","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"revision":{"type":"string"},"mime":{"type":"string","enum":["image/png","image/jpeg"]},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"expiresAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]}},"required":["url","revision","mime","width","height","expiresAt"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"files.render","returns":"RenderDto","repeatable":true},"x-credits":0}},"/brands/{slug}/live-images":{"get":{"operationId":"get_live_images","tags":["Brands"],"summary":"Ver o segredo das imagens ao vivo","description":"O segredo que o seu servidor usa para assinar links de imagens ao vivo (img.ideare.app/<slug>/<modelo>.png?t.title=...&sig=...), e um link de exemplo. Só para o dono. Guarde no seu servidor: quem tem o segredo pode pôr palavras nas imagens da sua marca. Não gasta créditos.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Ver o segredo das imagens ao vivo","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"slug":{"type":"string"},"secret":{"type":"string"},"origin":{"type":"string","format":"uri"},"example":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}]}},"required":["slug","secret","origin","example"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"brands.liveImages","returns":"LiveImagesDto"},"x-credits":0}},"/brands/{slug}/live-images/secret":{"post":{"operationId":"rotate_live_image_secret","tags":["Brands"],"summary":"Trocar o segredo das imagens ao vivo","description":"Crie um segredo novo para os links de imagens ao vivo. Os links assinados com o antigo param de funcionar agora (403): assine os links de novo com o segredo novo. Uma imagem que alguém já abriu ainda pode aparecer por até um ano se o link tiver uma versão (v=), ou por até 5 minutos se não tiver, porque o navegador e a Cloudflare guardam uma cópia. Só para o dono. Não gasta créditos.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Trocar o segredo das imagens ao vivo","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"slug":{"type":"string"},"secret":{"type":"string"},"origin":{"type":"string","format":"uri"},"example":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}]}},"required":["slug","secret","origin","example"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"brands.rotateLiveImageSecret","returns":"LiveImagesDto"},"x-credits":0}},"/runs/{id}":{"get":{"operationId":"get_run","tags":["Runs"],"summary":"Ver uma execução","description":"Em que pé está um trabalho longo (desenhar os arquivos de uma versão, imagens de IA, uma importação): na fila com a posição, rodando, ou terminado com o resultado ou o que deu errado. Para acompanhar ao vivo, abra o eventsUrl como Server-Sent Events. Não gasta créditos.","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Ver uma execução","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["cascade","symbols","art","import_link","import_files","import_folder"]},"brand":{"type":["string","null"]},"status":{"type":"string","enum":["queued","running","succeeded","failed","cancelled"]},"queuePosition":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"startedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"finishedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"result":{"anyOf":[{},{"type":"null"}]},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false},{"type":"null"}]},"eventsUrl":{"type":"string","format":"uri"}},"required":["id","kind","brand","status","queuePosition","createdAt","startedAt","finishedAt","result","error","eventsUrl"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"runs.get","returns":"RunDto"},"x-credits":0},"delete":{"operationId":"cancel_run","tags":["Runs"],"summary":"Parar uma execução","description":"Pare uma execução que está na fila ou rodando. Os créditos das imagens que ainda não saíram voltam. A cascata de uma versão não para: depois de aprovada, os arquivos terminam. Responde com a execução como está.","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Parar uma execução","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["cascade","symbols","art","import_link","import_files","import_folder"]},"brand":{"type":["string","null"]},"status":{"type":"string","enum":["queued","running","succeeded","failed","cancelled"]},"queuePosition":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"startedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"finishedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"result":{"anyOf":[{},{"type":"null"}]},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false},{"type":"null"}]},"eventsUrl":{"type":"string","format":"uri"}},"required":["id","kind","brand","status","queuePosition","createdAt","startedAt","finishedAt","result","error","eventsUrl"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"runs.cancel","returns":"RunDto"},"x-credits":0}},"/ai/text":{"post":{"operationId":"generate_text","tags":["AI"],"summary":"Sugerir nomes e palavras","description":"Sugestões a partir do que o negócio faz: nomes, slogans em cada idioma da marca, um jeito de falar, climas de paleta e estilos de fonte. Grátis, dentro de um limite por dia (veja get_usage).","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"idea":{"type":"string","minLength":3,"maxLength":500},"name":{"type":"string","minLength":1,"maxLength":80},"locales":{"default":["pt-BR"],"minItems":1,"maxItems":3,"type":"array","items":{"type":"string","enum":["pt-BR","en","es"]}},"brand":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},"required":["idea"]}}}},"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Sugerir nomes e palavras","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"names":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"note":{"type":"string"}},"required":["name","note"],"additionalProperties":false}},"copy":{"type":"array","items":{"type":"object","properties":{"locale":{"type":"string","enum":["pt-BR","en","es"]},"taglines":{"type":"array","items":{"type":"string"}},"description":{"type":["string","null"]}},"required":["locale","taglines","description"],"additionalProperties":false}},"voice":{"type":"object","properties":{"tone":{"type":"array","items":{"type":"string"}},"notes":{"type":"string"}},"required":["tone","notes"],"additionalProperties":false},"palettes":{"type":"array","items":{"type":"object","properties":{"mood":{"type":"string"},"hue":{"type":"number"},"note":{"type":"string"}},"required":["mood","hue","note"],"additionalProperties":false}},"fonts":{"type":"object","properties":{"tags":{"type":"array","items":{"type":"string"}},"display":{"type":"object","properties":{"id":{"type":"string"},"family":{"type":"string"}},"required":["id","family"],"additionalProperties":false},"text":{"type":"object","properties":{"id":{"type":"string"},"family":{"type":"string"}},"required":["id","family"],"additionalProperties":false}},"required":["tags","display","text"],"additionalProperties":false},"dropped":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["names","copy","voice","palettes","fonts","dropped"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"ai.text","returns":"TextBundleDto"},"x-credits":0}},"/brands/{slug}/symbols":{"post":{"operationId":"generate_symbols","tags":["AI"],"summary":"Criar ideias de símbolo com IA","description":"Desenhe até 4 ideias de símbolo para a marca com IA: vetor, sem letras, nas cores dela. Custa 1 crédito por ideia, cobrado quando a execução começa e devolvido para cada uma que falhar. Responde com a execução; cada ideia chega como um evento.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},{"name":"idempotency-key","in":"header","required":false,"description":"Your own key for this request, such as a UUID. Send the same key again after a timeout and you get the first answer back, with nothing done or charged twice.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"count":{"default":4,"type":"integer","minimum":1,"maximum":4},"hint":{"type":"string","maxLength":200}}}}}},"security":[{"bearerAuth":[]}],"responses":{"202":{"description":"Criar ideias de símbolo com IA","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["cascade","symbols","art","import_link","import_files","import_folder"]},"brand":{"type":["string","null"]},"status":{"type":"string","enum":["queued","running","succeeded","failed","cancelled"]},"queuePosition":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"startedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"finishedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"result":{"anyOf":[{},{"type":"null"}]},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false},{"type":"null"}]},"eventsUrl":{"type":"string","format":"uri"}},"required":["id","kind","brand","status","queuePosition","createdAt","startedAt","finishedAt","result","error","eventsUrl"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"ai.symbols","returns":"RunDto"},"x-credits":1}},"/brands/{slug}/art":{"post":{"operationId":"generate_art","tags":["AI"],"summary":"Criar arte com IA","description":"Desenhe uma imagem no estilo da marca com IA, a partir do seu pedido e das referências da marca. Um rascunho 1k custa 1 crédito e uma versão final 2k custa 2, cobrados quando a execução começa e devolvidos se falhar. Responde com a execução.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},{"name":"idempotency-key","in":"header","required":false,"description":"Your own key for this request, such as a UUID. Send the same key again after a timeout and you get the first answer back, with nothing done or charged twice.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"prompt":{"type":"string","minLength":3,"maxLength":1000},"size":{"default":"1k","type":"string","enum":["1k","2k"]},"references":{"default":[],"maxItems":4,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["prompt"]}}}},"security":[{"bearerAuth":[]}],"responses":{"202":{"description":"Criar arte com IA","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["cascade","symbols","art","import_link","import_files","import_folder"]},"brand":{"type":["string","null"]},"status":{"type":"string","enum":["queued","running","succeeded","failed","cancelled"]},"queuePosition":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"startedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"finishedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"result":{"anyOf":[{},{"type":"null"}]},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false},{"type":"null"}]},"eventsUrl":{"type":"string","format":"uri"}},"required":["id","kind","brand","status","queuePosition","createdAt","startedAt","finishedAt","result","error","eventsUrl"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"ai.art","returns":"RunDto"},"x-credits":1}},"/imports/link":{"post":{"operationId":"import_link","tags":["Imports"],"summary":"Ler uma marca a partir de um link","description":"Leia um site ou um perfil de rede social e tire dele o nome, o texto de apresentação, até 6 cores e o logo, em uns 20 segundos. O logo vem como estava e como vetor limpo. Grátis, dentro de um limite por dia. Responde com a execução; o resultado é o que foi encontrado, para começar uma marca.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"url":{"type":"string","minLength":3,"maxLength":2000},"brand":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},"required":["url"]}}}},"security":[{"bearerAuth":[]}],"responses":{"202":{"description":"Ler uma marca a partir de um link","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["cascade","symbols","art","import_link","import_files","import_folder"]},"brand":{"type":["string","null"]},"status":{"type":"string","enum":["queued","running","succeeded","failed","cancelled"]},"queuePosition":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"startedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"finishedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"result":{"anyOf":[{},{"type":"null"}]},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false},{"type":"null"}]},"eventsUrl":{"type":"string","format":"uri"}},"required":["id","kind","brand","status","queuePosition","createdAt","startedAt","finishedAt","result","error","eventsUrl"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"imports.link","returns":"RunDto"},"x-credits":0}},"/imports/files":{"post":{"operationId":"import_files","tags":["Imports"],"summary":"Ler uma marca a partir dos seus arquivos","description":"Leia logos e imagens enviados: ache as cores e redesenhe um logo como vetor limpo, sempre ao lado do seu original. Envie antes com create_upload. Grátis, dentro de um limite por dia. Responde com a execução.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"assetIds":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"brand":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},"required":["assetIds"]}}}},"security":[{"bearerAuth":[]}],"responses":{"202":{"description":"Ler uma marca a partir dos seus arquivos","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["cascade","symbols","art","import_link","import_files","import_folder"]},"brand":{"type":["string","null"]},"status":{"type":"string","enum":["queued","running","succeeded","failed","cancelled"]},"queuePosition":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"startedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"finishedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"result":{"anyOf":[{},{"type":"null"}]},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false},{"type":"null"}]},"eventsUrl":{"type":"string","format":"uri"}},"required":["id","kind","brand","status","queuePosition","createdAt","startedAt","finishedAt","result","error","eventsUrl"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"imports.files","returns":"RunDto"},"x-credits":0}},"/imports/folder":{"post":{"operationId":"import_folder","tags":["Imports"],"summary":"Ler uma pasta de marca inteira","description":"Organize uma pasta ou um zip de marca que você já enviou (até 200 arquivos): logos em todas as versões, fontes, um manual em PDF, posts e fotos. O código lê cada arquivo primeiro, depois a IA olha as imagens e lê o manual. Cada arquivo volta com o lugar onde se encaixa e o quanto temos certeza, e nada muda na marca até você chamar apply_import. Grátis, dentro do limite diário de importações. Responde com a execução; leia com get_folder_import.","parameters":[{"name":"idempotency-key","in":"header","required":false,"description":"Your own key for this request, such as a UUID. Send the same key again after a timeout and you get the first answer back, with nothing done or charged twice.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"files":{"minItems":1,"maxItems":200,"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"path":{"type":"string","minLength":1,"maxLength":300}},"required":["assetId"],"additionalProperties":false}},"brand":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"},"source":{"type":"string","minLength":1,"maxLength":120}},"required":["files"]}}}},"security":[{"bearerAuth":[]}],"responses":{"202":{"description":"Ler uma pasta de marca inteira","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["cascade","symbols","art","import_link","import_files","import_folder"]},"brand":{"type":["string","null"]},"status":{"type":"string","enum":["queued","running","succeeded","failed","cancelled"]},"queuePosition":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"startedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"finishedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"result":{"anyOf":[{},{"type":"null"}]},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false},{"type":"null"}]},"eventsUrl":{"type":"string","format":"uri"}},"required":["id","kind","brand","status","queuePosition","createdAt","startedAt","finishedAt","result","error","eventsUrl"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"imports.folder","returns":"RunDto"},"x-credits":0}},"/imports/folder/{runId}":{"get":{"operationId":"get_folder_import","tags":["Imports"],"summary":"Ver uma importação de pasta","description":"Em que pé está a importação de uma pasta e, depois de lida, para onde vai cada arquivo: o lugar, o quanto temos certeza, as perguntas a responder e o que o manual dizia. Cada imagem tem um link que vale por uma hora. Não gasta créditos.","parameters":[{"name":"runId","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Ver uma importação de pasta","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"runId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["queued","running","succeeded","failed","cancelled"]},"brand":{"anyOf":[{"type":"object","properties":{"slug":{"type":"string"},"name":{"type":"string"}},"required":["slug","name"],"additionalProperties":false},{"type":"null"}]},"result":{"anyOf":[{"type":"object","properties":{"files":{"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"path":{"type":"string"},"kind":{"type":"string","enum":["image","svg","font","pdf","other"]},"size":{"type":"integer","minimum":0,"maximum":9007199254740991},"width":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"height":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"role":{"type":"string","enum":["mainLogo","logoHorizontal","logoStacked","logoSymbol","logoName","logoDark","logoLight","icon","profile","cover","post","story","product","pattern","reference","font","guide","other"]},"layout":{"anyOf":[{"type":"string","enum":["symbol","horizontal","stacked","name","badge"]},{"type":"null"}]},"hasText":{"type":["boolean","null"]},"text":{"type":["string","null"]},"colors":{"type":"array","items":{"type":"string","pattern":"^#[0-9a-f]{6}$"}},"slot":{"type":"string","enum":["mark","markSmall","markDark","horizontal","stacked","wordmark","fontDisplay","fontText","fontPrivate","artRefs","guide","library"]},"confidence":{"type":"number","minimum":0,"maximum":1},"by":{"type":"string","enum":["code","ai"]},"vector":{"anyOf":[{"type":"object","properties":{"assetId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"svg":{"type":"string"},"traced":{"type":"boolean"}},"required":["assetId","svg","traced"],"additionalProperties":false},{"type":"null"}]},"ref":{"anyOf":[{"type":"object","properties":{"sha256":{"type":"string"},"mime":{"type":"string","enum":["image/png","image/jpeg","image/webp"]},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["sha256","mime","width","height"],"additionalProperties":false},{"type":"null"}]},"font":{"anyOf":[{"type":"object","properties":{"family":{"type":"string"},"style":{"type":"string"},"weight":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"italic":{"type":"boolean"},"open":{"type":"boolean"},"catalogId":{"type":["string","null"]},"standIn":{"type":["string","null"]},"use":{"type":"string","enum":["display","text"]}},"required":["family","style","weight","italic","open","catalogId","standIn","use"],"additionalProperties":false},{"type":"null"}]},"note":{"anyOf":[{"type":"object","properties":{"code":{"type":"string","enum":["unreadable","heic","noVector","privateFont","guideUnread","duplicate","tooManyRefs"]},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false},{"type":"null"}]}},"required":["assetId","path","kind","size","width","height","role","layout","hasText","text","colors","slot","confidence","by","vector","ref","font","note"],"additionalProperties":false}},"guide":{"anyOf":[{"type":"object","properties":{"assetId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":["string","null"]},"tagline":{"type":["string","null"]},"colors":{"type":"array","items":{"type":"object","properties":{"hex":{"type":"string","pattern":"^#[0-9a-f]{6}$"},"name":{"type":["string","null"]},"cmyk":{"type":["string","null"]},"pantone":{"type":["string","null"]},"role":{"type":"string","enum":["primary","secondary","accent","neutral","other"]}},"required":["hex","name","cmyk","pantone","role"],"additionalProperties":false}},"fonts":{"type":"array","items":{"type":"object","properties":{"family":{"type":"string"},"use":{"type":"string","enum":["display","text","other"]},"catalogId":{"type":["string","null"]}},"required":["family","use","catalogId"],"additionalProperties":false}},"logoRules":{"type":"array","items":{"type":"string"}},"voice":{"anyOf":[{"type":"object","properties":{"tone":{"type":"array","items":{"type":"string"}},"notes":{"type":["string","null"]}},"required":["tone","notes"],"additionalProperties":false},{"type":"null"}]}},"required":["assetId","name","tagline","colors","fonts","logoRules","voice"],"additionalProperties":false},{"type":"null"}]},"questions":{"type":"array","items":{"type":"object","properties":{"slot":{"type":"string","enum":["mark","markSmall","markDark","horizontal","stacked","wordmark"]},"assetIds":{"minItems":2,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["slot","assetIds"],"additionalProperties":false}},"name":{"type":["string","null"]},"ai":{"type":"boolean"}},"required":["files","guide","questions","name","ai"],"additionalProperties":false},{"type":"null"}]},"previews":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","format":"uri"}},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"additionalProperties":false},{"type":"null"}]}},"required":["runId","status","brand","result","previews","error"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"imports.getFolder","returns":"FolderImportDto"},"x-credits":0}},"/imports/folder/{runId}/apply":{"post":{"operationId":"apply_import","tags":["Imports"],"summary":"Usar uma importação de pasta","description":"Grave na marca uma pasta já lida: cada arquivo vai para o seu lugar, com as suas mudanças feitas (um arquivo movido para um lugar de logo manda o que estava lá de volta para os seus arquivos). Para uma marca, mande o draftRev dela; sem marca, uma nova é criada com `name`. Fontes que o catálogo do ideare não tem ficam privadas e nunca são publicadas: liste em `licensed` as que você tem licença para usar. Só o rascunho muda: aprove para publicar. Não gasta créditos.","parameters":[{"name":"runId","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"idempotency-key","in":"header","required":false,"description":"Your own key for this request, such as a UUID. Send the same key again after a timeout and you get the first answer back, with nothing done or charged twice.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"draftRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","minLength":1,"maxLength":40},"locale":{"type":"string","enum":["pt-BR","en","es"]},"moves":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"slot":{"type":"string","enum":["mark","markSmall","markDark","horizontal","stacked","wordmark","fontDisplay","fontText","fontPrivate","artRefs","guide","library"]}},"required":["assetId","slot"],"additionalProperties":false}},"licensed":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}}}}},"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Usar uma importação de pasta","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"slug":{"type":"string"},"name":{"type":"string"},"workspaceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draft":{"type":"object","properties":{"masters":{"type":"object","properties":{"schemaVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["schemaVersion","name"],"additionalProperties":{}},"rev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedBy":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":["string","null"]}},"required":["id","name"],"additionalProperties":false},{"type":"null"}]}},"required":["masters","rev","updatedAt","updatedBy"],"additionalProperties":false},"currentVersion":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"proposal":{"anyOf":[{"type":"object","properties":{"rev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"proposedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"proposedBy":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":["string","null"]}},"required":["id","name"],"additionalProperties":false},{"type":"null"}]},"source":{"type":"string","enum":["studio","cli","api","mcp"]}},"required":["rev","proposedAt","proposedBy","source"],"additionalProperties":false},{"type":"null"}]},"approving":{"anyOf":[{"type":"object","properties":{"runId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["runId","version"],"additionalProperties":false},{"type":"null"}]},"launched":{"type":"boolean"},"sharing":{"type":"object","properties":{"voice":{"type":"boolean"},"artRefs":{"type":"boolean"},"contacts":{"type":"boolean"}},"required":["voice","artRefs","contacts"],"additionalProperties":false},"origin":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["idea","link","files","try"]},"idea":{"type":"string","maxLength":500},"url":{"type":"string","maxLength":2000,"format":"uri"},"seed":{"type":"string","maxLength":100},"picks":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","number"]}},"run":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["kind"],"additionalProperties":false},{"type":"null"}]},"urls":{"type":"object","properties":{"page":{"type":"string","format":"uri"},"latest":{"type":"string","format":"uri"}},"required":["page","latest"],"additionalProperties":false},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","slug","name","workspaceId","draft","currentVersion","proposal","approving","launched","sharing","origin","urls","createdAt","updatedAt"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"imports.applyFolder","returns":"BrandDto"},"x-credits":0}},"/imports/repo":{"post":{"operationId":"read_repo","tags":["Imports"],"summary":"Ler uma marca a partir do código","description":"Mande os arquivos de estilo de um projeto (config do Tailwind, variáveis CSS, arquivos de tema, package.json, o layout raiz), até 55.000 caracteres, e receba as cores do tema claro e do escuro, as fontes, o raio dos cantos e qual dos caminhos de logo que você listou é o da marca. O `ideare init` manda esses arquivos quando você está conectado. Grátis, dentro do limite diário de importações.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"files":{"minItems":1,"maxItems":40,"type":"array","items":{"type":"object","properties":{"path":{"type":"string","minLength":1,"maxLength":300},"content":{"type":"string","maxLength":20000}},"required":["path","content"]}},"logos":{"default":[],"maxItems":40,"type":"array","items":{"type":"string","minLength":1,"maxLength":300}}},"required":["files"]}}}},"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Ler uma marca a partir do código","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"hasUi":{"type":"boolean"},"name":{"type":["string","null"]},"light":{"anyOf":[{"type":"object","properties":{"bg":{"type":"string"},"surface":{"type":"string"},"border":{"type":"string"},"fg":{"type":"string"},"fgMuted":{"type":"string"},"accent":{"type":"string"},"accentFg":{"type":"string"},"danger":{"type":["string","null"]},"success":{"type":["string","null"]},"warning":{"type":["string","null"]},"radius":{"type":"string"},"fontSans":{"type":"string"},"fontDisplay":{"type":["string","null"]}},"required":["bg","surface","border","fg","fgMuted","accent","accentFg","danger","success","warning","radius","fontSans","fontDisplay"],"additionalProperties":false},{"type":"null"}]},"dark":{"anyOf":[{"type":"object","properties":{"bg":{"type":"string"},"surface":{"type":"string"},"border":{"type":"string"},"fg":{"type":"string"},"fgMuted":{"type":"string"},"accent":{"type":"string"},"accentFg":{"type":"string"},"danger":{"type":["string","null"]},"success":{"type":["string","null"]},"warning":{"type":["string","null"]},"radius":{"type":"string"},"fontSans":{"type":"string"},"fontDisplay":{"type":["string","null"]}},"required":["bg","surface","border","fg","fgMuted","accent","accentFg","danger","success","warning","radius","fontSans","fontDisplay"],"additionalProperties":false},{"type":"null"}]},"logoPath":{"type":["string","null"]}},"required":["hasUi","name","light","dark","logoPath"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"imports.repo","returns":"RepoTokensDto"},"x-credits":0}},"/assets":{"post":{"operationId":"create_upload","tags":["Assets"],"summary":"Enviar um arquivo","description":"Receba um link para enviar (PUT) um arquivo de até 25 MB: uma imagem PNG, JPEG, WebP, SVG ou HEIC, uma fonte TTF, OTF, WOFF ou WOFF2, ou um PDF. Mande antes o sha256 dele; o armazenamento confere os bytes. Se o seu espaço já tem esse arquivo, não vem link e você usa o que já está lá. Depois chame complete_upload. Não gasta créditos.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"sha256":{"type":"string","pattern":"^[0-9a-f]{64}$"},"mime":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/svg+xml","image/heic","image/heif","font/ttf","font/otf","font/woff","font/woff2","application/pdf"]},"size":{"type":"integer","exclusiveMinimum":0,"maximum":26214400},"name":{"type":"string","minLength":1,"maxLength":200},"brand":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},"required":["sha256","mime","size"]}}}},"security":[{"bearerAuth":[]}],"responses":{"201":{"description":"Enviar um arquivo","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"asset":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"sha256":{"type":"string"},"kind":{"type":"string","enum":["upload","import","symbol","art","trace"]},"mime":{"type":"string"},"size":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"width":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"height":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"name":{"type":["string","null"]},"url":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}]},"urlExpiresAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"uploaded":{"type":"boolean"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","sha256","kind","mime","size","width","height","name","url","urlExpiresAt","uploaded","createdAt"],"additionalProperties":false},"upload":{"anyOf":[{"type":"object","properties":{"url":{"type":"string","format":"uri"},"method":{"type":"string","const":"PUT"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["url","method","headers","expiresAt"],"additionalProperties":false},{"type":"null"}]}},"required":["asset","upload"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"assets.createUpload","returns":"UploadDto"},"x-credits":0},"get":{"operationId":"list_assets","tags":["Assets"],"summary":"Listar seus arquivos","description":"Os arquivos da biblioteca do seu espaço, dos mais novos para os mais antigos: envios, imagens importadas, símbolos e artes de IA. Cada um tem um link que vale por uma hora. Não gasta créditos.","parameters":[{"name":"limit","in":"query","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"offset","in":"query","required":false,"schema":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Listar seus arquivos","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"sha256":{"type":"string"},"kind":{"type":"string","enum":["upload","import","symbol","art","trace"]},"mime":{"type":"string"},"size":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"width":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"height":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"name":{"type":["string","null"]},"url":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}]},"urlExpiresAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"uploaded":{"type":"boolean"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","sha256","kind","mime","size","width","height","name","url","urlExpiresAt","uploaded","createdAt"],"additionalProperties":false}},"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"limit":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"offset":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["items","total","limit","offset"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"assets.list","returns":"AssetPageDto"},"x-credits":0}},"/assets/{id}/complete":{"post":{"operationId":"complete_upload","tags":["Assets"],"summary":"Terminar um envio","description":"Avise que o PUT terminou. Conferimos se o arquivo está lá com o tamanho informado, e ele entra na sua biblioteca. Não gasta créditos.","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Terminar um envio","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"sha256":{"type":"string"},"kind":{"type":"string","enum":["upload","import","symbol","art","trace"]},"mime":{"type":"string"},"size":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"width":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"height":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"name":{"type":["string","null"]},"url":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}]},"urlExpiresAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"uploaded":{"type":"boolean"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","sha256","kind","mime","size","width","height","name","url","urlExpiresAt","uploaded","createdAt"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"assets.completeUpload","returns":"AssetDto"},"x-credits":0}},"/names/check":{"post":{"operationId":"check_names","tags":["Names"],"summary":"Ver se um nome está livre","description":"Para até 5 nomes, veja se os domínios (.com.br, .com e .app, se você não disser outros) e os @ nas redes parecem livres, com links para buscar marcas registradas no INPI, no USPTO e no EUIPO. `available` quer dizer que não achamos registro, não que o nome é seu; `unknown` quer dizer que ninguém respondeu. Cada nome com @ conferidos usa uma das consultas de @ do dia. Não gasta créditos.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"names":{"minItems":1,"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":63}},"tlds":{"default":["com.br","com","app"],"minItems":1,"maxItems":5,"type":"array","items":{"type":"string","pattern":"^[a-z0-9.-]{2,24}$"}},"networks":{"default":["instagram"],"maxItems":4,"type":"array","items":{"type":"string","enum":["instagram","tiktok","x","youtube"]}}},"required":["names"]}}}},"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Ver se um nome está livre","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"results":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"domains":{"type":"array","items":{"type":"object","properties":{"domain":{"type":"string"},"status":{"type":"string","enum":["available","taken","unknown"]},"reason":{"anyOf":[{"type":"string","enum":["noAnswer","dailyCap","notSetUp","invalid"]},{"type":"null"}]}},"required":["domain","status","reason"],"additionalProperties":false}},"handles":{"type":"array","items":{"type":"object","properties":{"network":{"type":"string"},"handle":{"type":"string"},"status":{"type":"string","enum":["available","taken","unknown"]},"reason":{"anyOf":[{"type":"string","enum":["noAnswer","dailyCap","notSetUp","invalid"]},{"type":"null"}]}},"required":["network","handle","status","reason"],"additionalProperties":false}},"trademarks":{"type":"array","items":{"type":"object","properties":{"office":{"type":"string"},"url":{"type":"string","format":"uri"}},"required":["office","url"],"additionalProperties":false}}},"required":["name","domains","handles","trademarks"],"additionalProperties":false}}},"required":["results"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"names.check","returns":"NamesDto","repeatable":true},"x-credits":0}},"/usage":{"get":{"operationId":"get_usage","tags":["Usage"],"summary":"Ver seus créditos","description":"Os créditos do mês: o que o seu plano inclui, quanto você usou, os créditos comprados, os créditos de boas-vindas de uma conta nova e quando eles vencem, e quanto sobra. Também as sugestões de texto e importações de hoje contra o limite do dia, e quando cada um zera. Não gasta créditos.","security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Ver seus créditos","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"plan":{"type":"string","enum":["free","pro","internal"]},"credits":{"type":"object","properties":{"monthly":{"type":"integer","minimum":0,"maximum":9007199254740991},"usedThisMonth":{"type":"integer","minimum":0,"maximum":9007199254740991},"balance":{"type":"integer","minimum":0,"maximum":9007199254740991},"welcome":{"anyOf":[{"type":"object","properties":{"credits":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["credits","expiresAt"],"additionalProperties":false},{"type":"null"}]},"remaining":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["monthly","usedThisMonth","balance","welcome","remaining"],"additionalProperties":false},"text":{"type":"object","properties":{"dailyCap":{"type":"integer","minimum":0,"maximum":9007199254740991},"usedToday":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["dailyCap","usedToday"],"additionalProperties":false},"imports":{"type":"object","properties":{"dailyCap":{"type":"integer","minimum":0,"maximum":9007199254740991},"usedToday":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["dailyCap","usedToday"],"additionalProperties":false},"resetsAt":{"type":"object","properties":{"day":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"month":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["day","month"],"additionalProperties":false}},"required":["plan","credits","text","imports","resetsAt"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"usage.get","returns":"UsageDto"},"x-credits":0}},"/designs":{"get":{"operationId":"list_designs","tags":["Designs"],"summary":"Listar seus designs","description":"Seus posts e outros designs, do alterado mais recentemente para o mais antigo. Passe uma marca para ver só os dela. Não gasta créditos.","parameters":[{"name":"limit","in":"query","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"offset","in":"query","required":false,"schema":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991}},{"name":"brand","in":"query","required":false,"schema":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Listar seus designs","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"brandSlug":{"type":"string"},"name":{"type":"string"},"template":{"type":["string","null"]},"sceneRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"revision":{"type":["string","null"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","brandSlug","name","template","sceneRev","revision","createdAt","updatedAt"],"additionalProperties":false}},"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"limit":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"offset":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["items","total","limit","offset"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"designs.list","returns":"DesignPageDto"},"x-credits":0},"post":{"operationId":"create_design","tags":["Designs"],"summary":"Começar um design","description":"Comece um post ou qualquer design para uma marca, a partir de um modelo dela ou de uma página em branco. Um workspace faz até 300 designs no plano grátis e 5.000 no Pro, e os apagados também contam. Não gasta créditos.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"brand":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"},"name":{"type":"string","minLength":1,"maxLength":120},"template":{"type":"string","enum":["promotion","hours","menu","pix","new-product","status-offer","carousel"]},"size":{"type":"string","enum":["ig-post","ig-square","ig-story","wa-status","share-card"]},"locale":{"type":"string","enum":["pt-BR","en","es"]},"scene":{"type":"object","properties":{"v":{"type":"number","const":1},"pages":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}}},"required":["v","pages"],"additionalProperties":{}}},"required":["brand","name"]}}}},"security":[{"bearerAuth":[]}],"responses":{"201":{"description":"Começar um design","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"brandSlug":{"type":"string"},"name":{"type":"string"},"template":{"type":["string","null"]},"sceneRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"revision":{"type":["string","null"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"scene":{"type":"object","properties":{"v":{"type":"number","const":1},"pages":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}}},"required":["v","pages"],"additionalProperties":{}}},"required":["id","brandSlug","name","template","sceneRev","revision","createdAt","updatedAt","scene"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"designs.create","returns":"DesignDto"},"x-credits":0}},"/designs/{id}":{"get":{"operationId":"get_design","tags":["Designs"],"summary":"Ver um design","description":"Um design com a cena inteira: todas as páginas e camadas. Mande o sceneRev de volta ao salvar. Não gasta créditos.","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Ver um design","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"brandSlug":{"type":"string"},"name":{"type":"string"},"template":{"type":["string","null"]},"sceneRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"revision":{"type":["string","null"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"scene":{"type":"object","properties":{"v":{"type":"number","const":1},"pages":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}}},"required":["v","pages"],"additionalProperties":{}}},"required":["id","brandSlug","name","template","sceneRev","revision","createdAt","updatedAt","scene"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"designs.get","returns":"DesignDto"},"x-credits":0},"put":{"operationId":"update_design","tags":["Designs"],"summary":"Salvar um design","description":"Salve a cena ou o nome de um design. Mande o sceneRev de onde você partiu: se mudou no meio-tempo, a resposta é um 409 com o design atual. Não gasta créditos.","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"sceneRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"scene":{"type":"object","properties":{"v":{"type":"number","const":1},"pages":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}}},"required":["v","pages"],"additionalProperties":{}},"name":{"type":"string","minLength":1,"maxLength":120}},"required":["sceneRev"]}}}},"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Salvar um design","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"brandSlug":{"type":"string"},"name":{"type":"string"},"template":{"type":["string","null"]},"sceneRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"revision":{"type":["string","null"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"scene":{"type":"object","properties":{"v":{"type":"number","const":1},"pages":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}}},"required":["v","pages"],"additionalProperties":{}}},"required":["id","brandSlug","name","template","sceneRev","revision","createdAt","updatedAt","scene"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"designs.update","returns":"DesignDto"},"x-credits":0},"delete":{"operationId":"delete_design","tags":["Designs"],"summary":"Apagar um design","description":"Apague um design. As imagens que você já compartilhou continuam onde estão. Não gasta créditos.","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Apagar um design","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean","const":true}},"required":["id","deleted"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"designs.delete","returns":"DeletedDto"},"x-credits":0}},"/designs/{id}/render":{"post":{"operationId":"render_design","tags":["Designs"],"summary":"Exportar um design","description":"Desenhe uma página de um design em PNG ou JPEG, com o rascunho da marca, e receba um link que vale por uma hora. Não gasta créditos, dentro do limite de desenhos por hora.","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"page":{"default":0,"type":"integer","minimum":0,"maximum":19},"format":{"default":"png","type":"string","enum":["png","jpeg"]}}}}}},"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Exportar um design","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"revision":{"type":"string"},"mime":{"type":"string","enum":["image/png","image/jpeg"]},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"expiresAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]}},"required":["url","revision","mime","width","height","expiresAt"],"additionalProperties":false}}}}}},"400":{"description":"The input is wrong. `details` names each field.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"The key is missing, wrong or revoked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"This key or this person may not do this.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not found, or not yours.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Something changed in between, such as the draft's rev.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too many requests, or a daily allowance is spent. Retry-After says when.","headers":{"Retry-After":{"description":"When present, how many seconds to wait before trying again.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"501":{"description":"Not built yet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"default":{"description":"Any other failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"x-sdk":{"method":"designs.render","returns":"RenderDto","repeatable":true},"x-credits":0}}},"components":{"schemas":{"ApiError":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["VALIDATION_ERROR","UNAUTHORIZED","INVALID_TOKEN","PAYMENT_REQUIRED","FORBIDDEN","NOT_FOUND","CONFLICT","PAYLOAD_TOO_LARGE","IDEMPOTENCY_KEY_REUSED","RATE_LIMIT_EXCEEDED","QUOTA_EXCEEDED","INTERNAL_ERROR","NOT_IMPLEMENTED","SERVICE_UNAVAILABLE"],"description":"What went wrong, as a word a program can check."},"message":{"type":"string","description":"What went wrong, as a sentence."},"messageKey":{"type":"string","description":"`message` as a key, to show it in your reader's language, with `params` filling its blanks."},"params":{"type":"object","additionalProperties":{"type":["string","number"]},"description":"The values that fill `messageKey`'s blanks, such as a limit."},"details":{"description":"More about this error, such as retryAfterSecs."}}}}}},"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}}},"x-mcp-tools":[{"name":"list_brands","title":"List your brands","description":"The brands in your workspace, the most recently changed first, with the total. Each one says its current version and whether a change waits for approval. Costs no credits.","inputSchema":{"type":"object","properties":{"limit":{"default":20,"type":"integer","minimum":1,"maximum":100},"offset":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991}},"additionalProperties":false}},{"name":"get_brand","title":"Read a brand","description":"A brand with its draft: the masters (brand.json) as last saved, the draft's rev, the current version and any change waiting for approval. Send the rev back when you save or approve. Costs no credits.","inputSchema":{"type":"object","properties":{"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},"required":["slug"],"additionalProperties":false}},{"name":"create_brand","title":"Create a brand","description":"Start a brand with a name, and the masters you drew so far if you have them. It starts as a private draft; nothing is public until an owner approves it. The slug comes from the name when you leave it out, and becomes the brand's address: ideare.app/b/<slug>. Costs no credits.","inputSchema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":80},"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"},"masters":{"type":"object","properties":{"schemaVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["schemaVersion","name"],"additionalProperties":{}},"origin":{"type":"object","properties":{"kind":{"type":"string","enum":["idea","link","files","try"]},"idea":{"type":"string","maxLength":500},"url":{"type":"string","maxLength":2000,"format":"uri"},"seed":{"type":"string","maxLength":100},"picks":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","number"]}},"run":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["kind"],"additionalProperties":false}},"required":["name"],"additionalProperties":false}},{"name":"update_draft","title":"Save the draft","description":"Replace the draft's masters (brand.json). Send the draftRev you started from: if someone saved in between, you get a 409 with the current draft, so no change is lost. Saving publishes nothing. Costs no credits.","inputSchema":{"type":"object","properties":{"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"},"draftRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"masters":{"type":"object","properties":{"schemaVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["schemaVersion","name"],"additionalProperties":{}}},"required":["slug","draftRev","masters"],"additionalProperties":false}},{"name":"approve_draft","title":"Approve the draft","description":"From an owner or an admin: make the draft a new public version. Every file is drawn again and published at cdn.ideare.app/b/<slug>/v<n>/; follow the run to see it finish. From anyone else: ask the owner to approve this draft, which they do in one tap. Send the draftRev you looked at. Costs no credits.","inputSchema":{"type":"object","properties":{"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"},"draftRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["slug","draftRev"],"additionalProperties":false}},{"name":"check_brand","title":"Check a brand","description":"Check the draft the way an approval does: contrast, legibility at small sizes, text that fits, safe areas on every social size, and the copy rules. Each result says what to fix. Changes nothing. Costs no credits.","inputSchema":{"type":"object","properties":{"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},"required":["slug"],"additionalProperties":false}},{"name":"list_versions","title":"List a brand's versions","description":"Every approved version of a brand, newest first, with what changed in each. Versions are public: no key needed. Costs no credits.","inputSchema":{"type":"object","properties":{"limit":{"default":20,"type":"integer","minimum":1,"maximum":100},"offset":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991},"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},"required":["slug"],"additionalProperties":false}},{"name":"get_version","title":"Read a version","description":"One approved version and every file in it, each with its address and sha256. Ask for `latest` to get the version the brand points at now: the CLI resolves it here, then fetches the files of that exact version. Versions are public: no key needed. Costs no credits.","inputSchema":{"type":"object","properties":{"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"},"version":{"anyOf":[{"type":"string","const":"latest"},{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}]}},"required":["slug","version"],"additionalProperties":false}},{"name":"restore_version","title":"Bring back an older version","description":"Put an older version's masters back in the draft and approve them as a new version, so the history only grows. From anyone but an owner or admin, this asks the owner to approve instead. Send the draft's current draftRev: the draft is replaced. Costs no credits.","inputSchema":{"type":"object","properties":{"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"draftRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["slug","version","draftRev"],"additionalProperties":false}},{"name":"list_files","title":"List a brand's files","description":"Every file of a version (the current one when you leave it out): logos, site icons, share cards, social sizes, tokens, the email signature, the business card. Each has its address, type, size and sha256. Pass a group (web, logo, og, social, tokens, registry, docs, email, print) to get one folder. Costs no credits.","inputSchema":{"type":"object","properties":{"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"},"version":{"default":"latest","anyOf":[{"type":"string","const":"latest"},{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}]},"group":{"type":"string","pattern":"^[a-z-]{2,20}$"}},"required":["slug"],"additionalProperties":false}},{"name":"render_template","title":"Draw a template","description":"Draw one of the brand's post templates with your words, as PNG or JPEG, and get a link to it that works for an hour. Templates: promotion, hours, menu, pix (send the Pix key), new-product, status-offer and carousel (5 pages). Sizes: ig-post, ig-square, ig-story, wa-status and share-card. Words that don't fit are refused, with which slot to shorten. Uses the draft unless you name a version. Costs no credits, within the hourly render allowance.","inputSchema":{"type":"object","properties":{"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"},"template":{"type":"string","enum":["promotion","hours","menu","pix","new-product","status-offer","carousel"]},"size":{"type":"string","enum":["ig-post","ig-square","ig-story","wa-status","share-card"]},"text":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^[a-z0-9-]{1,40}$"},"additionalProperties":{"type":"string","maxLength":500}},"locale":{"type":"string","enum":["pt-BR","en","es"]},"page":{"default":0,"type":"integer","minimum":0,"maximum":19},"pix":{"type":"object","properties":{"key":{"type":"string","minLength":1,"maxLength":77},"city":{"type":"string","minLength":1,"maxLength":15},"amount":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["key"],"additionalProperties":false},"format":{"default":"png","type":"string","enum":["png","jpeg"]},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["slug","template"],"additionalProperties":false}},{"name":"get_run","title":"Read a run","description":"Where a long job stands (drawing a version's files, AI pictures, an import): queued with its place in line, running, or finished with its result or what went wrong. For live updates, open its eventsUrl as Server-Sent Events. Costs no credits.","inputSchema":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id"],"additionalProperties":false}},{"name":"cancel_run","title":"Stop a run","description":"Stop a run that is queued or running. Credits for pictures not made yet come back. A version's cascade can't be stopped: once approved, its files finish. Answers the run as it stands.","inputSchema":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id"],"additionalProperties":false}},{"name":"generate_text","title":"Suggest names and words","description":"Suggestions from what the business does: names, taglines in each of the brand's languages, a voice, palette moods and font tags. Free, within a daily allowance (see get_usage).","inputSchema":{"type":"object","properties":{"idea":{"type":"string","minLength":3,"maxLength":500},"name":{"type":"string","minLength":1,"maxLength":80},"locales":{"default":["pt-BR"],"minItems":1,"maxItems":3,"type":"array","items":{"type":"string","enum":["pt-BR","en","es"]}},"brand":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},"required":["idea"],"additionalProperties":false}},{"name":"generate_symbols","title":"Make AI symbol ideas","description":"Draw up to 4 symbol ideas for the brand with AI: vector, no letters, in its colors. Costs 1 credit per idea, taken when the run starts and given back for each one that fails. Answers with the run; each idea arrives as an event.","inputSchema":{"type":"object","properties":{"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"},"count":{"default":4,"type":"integer","minimum":1,"maximum":4},"hint":{"type":"string","maxLength":200}},"required":["slug"],"additionalProperties":false}},{"name":"generate_art","title":"Make AI art","description":"Draw a picture in the brand's own style with AI, from your prompt and the brand's references. A 1k draft costs 1 credit and a 2k keeper costs 2, taken when the run starts and given back if it fails. Answers with the run.","inputSchema":{"type":"object","properties":{"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"},"prompt":{"type":"string","minLength":3,"maxLength":1000},"size":{"default":"1k","type":"string","enum":["1k","2k"]},"references":{"default":[],"maxItems":4,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["slug","prompt"],"additionalProperties":false}},{"name":"import_link","title":"Read a brand from a link","description":"Read a site or a social profile and pull out the name, the about text, up to 6 colors and the logo, in about 20 seconds. The logo comes as it was and as a clean vector. Free, within a daily allowance. Answers with the run; its result is what it found, to start a brand from.","inputSchema":{"type":"object","properties":{"url":{"type":"string","minLength":3,"maxLength":2000},"brand":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},"required":["url"],"additionalProperties":false}},{"name":"import_files","title":"Read a brand from your files","description":"Read uploaded logos and pictures: find their colors and trace a logo into a clean vector, always next to your original. Upload first with create_upload. Free, within a daily allowance. Answers with the run.","inputSchema":{"type":"object","properties":{"assetIds":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"brand":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},"required":["assetIds"],"additionalProperties":false}},{"name":"import_folder","title":"Read a whole brand folder","description":"Sort a brand folder or zip you already uploaded (up to 200 files): logos in every version, fonts, a guide PDF, posts and photos. Code reads each file first, then AI looks at the pictures and reads the guide. Each file comes back with the slot it fits and how sure we are, and nothing changes in a brand until you call apply_import. Free, within the daily import allowance. Answers with the run; read it with get_folder_import.","inputSchema":{"type":"object","properties":{"files":{"minItems":1,"maxItems":200,"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"path":{"type":"string","minLength":1,"maxLength":300}},"required":["assetId"],"additionalProperties":false}},"brand":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"},"source":{"type":"string","minLength":1,"maxLength":120}},"required":["files"],"additionalProperties":false}},{"name":"get_folder_import","title":"See a folder import","description":"Where a folder import stands and, once it is read, where each file goes: its slot, how sure we are, the questions to answer, and what the guide said. Each picture has a link that works for an hour. Costs no credits.","inputSchema":{"type":"object","properties":{"runId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["runId"],"additionalProperties":false}},{"name":"apply_import","title":"Use a folder import","description":"Write a read folder into the brand: every file goes to its slot, with your moves made (a file moved into a logo slot sends the one there back to your files). For a brand, send its draftRev; without one, a new brand is made with `name`. Fonts ideare's catalog doesn't have stay private and are never published: list the ones you hold a license for in `licensed`. Only the draft changes: approve it to publish. Costs no credits.","inputSchema":{"type":"object","properties":{"runId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"draftRev":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","minLength":1,"maxLength":40},"locale":{"type":"string","enum":["pt-BR","en","es"]},"moves":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"slot":{"type":"string","enum":["mark","markSmall","markDark","horizontal","stacked","wordmark","fontDisplay","fontText","fontPrivate","artRefs","guide","library"]}},"required":["assetId","slot"],"additionalProperties":false}},"licensed":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["runId"],"additionalProperties":false}},{"name":"list_assets","title":"List your files","description":"The files in your workspace's library, newest first: uploads, imported pictures, AI symbols and art. Each has a link that works for an hour. Costs no credits.","inputSchema":{"type":"object","properties":{"limit":{"default":20,"type":"integer","minimum":1,"maximum":100},"offset":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991}},"additionalProperties":false}},{"name":"check_names","title":"Check if a name is free","description":"For up to 5 names, see whether the domains (.com.br, .com and .app unless you say) and the social handles look free, with links to search trademarks at INPI, USPTO and EUIPO. `available` means no record was found, not that it is yours; `unknown` means nobody answered. Each name whose handles are checked uses one of the day's handle checks. Costs no credits.","inputSchema":{"type":"object","properties":{"names":{"minItems":1,"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":63}},"tlds":{"default":["com.br","com","app"],"minItems":1,"maxItems":5,"type":"array","items":{"type":"string","pattern":"^[a-z0-9.-]{2,24}$"}},"networks":{"default":["instagram"],"maxItems":4,"type":"array","items":{"type":"string","enum":["instagram","tiktok","x","youtube"]}}},"required":["names"],"additionalProperties":false}},{"name":"get_usage","title":"See your credits","description":"This month's credits: what your plan includes, what you used, the credits you bought, the welcome credits a new account starts with and when they expire, and what is left. Also today's text suggestions and imports against their daily allowance, and when each resets. Costs no credits.","inputSchema":{"type":"object","properties":{},"additionalProperties":false}},{"name":"list_designs","title":"List your designs","description":"Your posts and other designs, the most recently changed first. Pass a brand to see only its designs. Costs no credits.","inputSchema":{"type":"object","properties":{"limit":{"default":20,"type":"integer","minimum":1,"maximum":100},"offset":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991},"brand":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,46}[a-z0-9])?$"}},"additionalProperties":false}},{"name":"render_design","title":"Export a design","description":"Draw one page of a design as PNG or JPEG, with the brand's draft, and get a link to it that works for an hour. Costs no credits, within the hourly render allowance.","inputSchema":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"page":{"default":0,"type":"integer","minimum":0,"maximum":19},"format":{"default":"png","type":"string","enum":["png","jpeg"]}},"required":["id"],"additionalProperties":false}}]}