REST API
REST API completa para integrações externas
REST API
O Schemafy fornece uma REST API completa para desenvolvedores que desejam integrar com ferramentas externas ou criar fluxos de trabalho personalizados.
URL Base
text
https://seusite.com/wp-json/schemafy/v1/Autenticação
Todos os endpoints requerem autenticação do WordPress com as capacidades adequadas:
- Gerenciamento de schemas: capacidade
manage_options - Análise de SEO: capacidade
edit_posts
Endpoints
| Endpoint | Método | Descrição | Auth Necessária |
|---|---|---|---|
| `/schemafy/v1/schemas` | GET | Listar todos os schemas com paginação e filtros | `edit_posts` |
| `/schemafy/v1/schemas` | POST | Criar um novo schema | `manage_options` |
| `/schemafy/v1/schemas/{id}` | GET | Obter um schema pelo ID | `edit_posts` |
| `/schemafy/v1/schemas/{id}` | PUT | Atualizar um schema existente | `manage_options` |
| `/schemafy/v1/schemas/{id}` | DELETE | Excluir um schema | `manage_options` |
| `/schemafy/v1/meta` | GET/POST | Gerenciamento de meta tags por URL | `manage_options` |
| `/schemafy/v1/social` | GET/POST | Gerenciamento de tags de redes sociais | `manage_options` |
| `/schemafy/v1/scan` | POST | Escanear o site para geração automática | `manage_options` |
| `/schemafy/v1/validate` | POST | Validar JSON-LD contra Schema.org | `edit_posts` |
| `/schemafy/v1/bulk` | POST | Operações em massa (corrigir, limpar, duplicatas) | `manage_options` |
| `/schemafy/v1/schemas-by-url` | GET | Schemas atribuídos a uma URL específica | Público |
> Observação: Os endpoints GET individuais de leitura de schemas são públicos; todos os endpoints de escrita (POST/PUT/DELETE) requerem no mínimo a capacidade edit_posts.
Exemplos de Código
Obter Schemas por URL
bash
# Obtener schemas de una URL específica
curl -X GET "https://tusitio.com/wp-json/schemafy/v1/schemas-by-url?url=https://tusitio.com/mi-pagina" \
-H "Authorization: Basic BASE64_CREDENTIALS"
# Crear un nuevo schema
curl -X POST "https://tusitio.com/wp-json/schemafy/v1/schemas" \
-H "Content-Type: application/json" \
-H "Authorization: Basic BASE64_CREDENTIALS" \
-d '{
"url": "https://tusitio.com/mi-pagina",
"schema_type": "Article",
"schema_name": "Mi Artículo",
"schema_data": "{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Mi Artículo\"}"
}'