{"id":21997925,"url":"https://github.com/benevanio/api-core","last_synced_at":"2025-10-07T06:01:47.147Z","repository":{"id":179154866,"uuid":"663027432","full_name":"Benevanio/api-core","owner":"Benevanio","description":"Criando o contrato da API em RAML.","archived":false,"fork":false,"pushed_at":"2023-07-06T14:38:03.000Z","size":8,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-28T11:37:47.552Z","etag":null,"topics":["anypoint-design-center","api","api-docs","api-documentation","api-gateway","challenge","exchange","mule","mule-api","mulesoft","mulesoft-connector","raml","rest","restful-api"],"latest_commit_sha":null,"homepage":"","language":"RAML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Benevanio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-07-06T11:53:46.000Z","updated_at":"2023-10-02T10:14:30.000Z","dependencies_parsed_at":null,"dependency_job_id":"d01dc2f7-883d-41c8-8c76-af06108e1843","html_url":"https://github.com/Benevanio/api-core","commit_stats":null,"previous_names":["benetesla/api-core","benevanio/api-core"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Benevanio%2Fapi-core","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Benevanio%2Fapi-core/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Benevanio%2Fapi-core/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Benevanio%2Fapi-core/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Benevanio","download_url":"https://codeload.github.com/Benevanio/api-core/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245056899,"owners_count":20553854,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["anypoint-design-center","api","api-docs","api-documentation","api-gateway","challenge","exchange","mule","mule-api","mulesoft","mulesoft-connector","raml","rest","restful-api"],"created_at":"2024-11-29T22:19:12.700Z","updated_at":"2025-10-07T06:01:47.030Z","avatar_url":"https://github.com/Benevanio.png","language":"RAML","readme":"# API-CORE\n\n**Este repositório tem fins exclusivamente educacionais.**\n\nO objetivo deste repositório é criar uma API no Design Center, importá-la no Anypoint Studio e testar os endpoints da API no Postman.\n\nPara a criação da API, utilizamos o RAML (RESTful API Modeling Language), uma linguagem baseada em YAML que permite descrever os fluxos da nossa API.\nRoot File: No Root File, temos a descrição dos métodos presentes na nossa API:\n````\n/search:\n  get:\n    queryParameters:\n       keyword:\n         type: string\n         minLength: 3\n         maxLength: 10\n    responses:\n      200:\n        body:\n          application/json:\n             example:  !include /examples/searchExample.raml\n````\n\nNesta parte do código, temos o endpoint search, que recebe o método HTTP GET, seguido dos parâmetros de pesquisa (queryParameters), que são usados para enviar dados para o servidor. No exemplo selecionado, o parâmetro de consulta keyword é definido como uma string com um comprimento mínimo de 3 e um comprimento máximo de 10 caracteres. Se este resultado obtiver um retorno positivo, teremos um status code 200 com uma mensagem de sucesso, em RAML a especificação desta mensagem é mais ou menos da seguinte maneira:\n```\n#%RAML 1.0 NamedExample\n  {\"message\": \"result returned sucessfull\"}\n```\n\nEm seguida, vamos para o nosso banco de dados (database), que define um tipo de dados com duas propriedades: username e password.\n\nA propriedade username é definida como obrigatória e deve ter um comprimento mínimo de 5 e um comprimento máximo de 10 caracteres.\n\nA propriedade password também é definida como obrigatória e deve ter um comprimento mínimo de 6 e um comprimento máximo de 10 caracteres.\n\n\n## Demonstração\n\nAPI NO DESIGN CENTER:\n![Captura de Tela (16)](https://github.com/benetesla/api-core/assets/78994881/858df8db-83c5-4ed9-9120-ea8ac84617b3)\n\nUTLIZAÇAO DO CONTRATO NO ANYPOINT STUDIO:\n![Captura de Tela (17)](https://github.com/benetesla/api-core/assets/78994881/3ac24f17-7123-4c93-a3d3-8a514f25fe13)\n\nREALIZAÇÂO DO TESTE NO POSTMAN:\n\n\n![Captura de Tela (18)](https://github.com/benetesla/api-core/assets/78994881/3b2f7c00-775b-42d1-88a9-58e8243eebe9)\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbenevanio%2Fapi-core","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbenevanio%2Fapi-core","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbenevanio%2Fapi-core/lists"}