{"id":13469165,"url":"https://github.com/ElliottLandsborough/dog-ceo-api","last_synced_at":"2025-03-26T06:31:58.729Z","repository":{"id":37546929,"uuid":"97956282","full_name":"ElliottLandsborough/dog-ceo-api","owner":"ElliottLandsborough","description":"The API hosted at dog.ceo","archived":false,"fork":false,"pushed_at":"2023-04-19T21:21:38.000Z","size":714,"stargazers_count":660,"open_issues_count":6,"forks_count":68,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-03-21T11:12:13.879Z","etag":null,"topics":["api","breed","composer","dog","dogs","json","php","symfony","xml"],"latest_commit_sha":null,"homepage":"https://dog.ceo/api","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ElliottLandsborough.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2017-07-21T14:26:07.000Z","updated_at":"2025-03-21T03:27:33.000Z","dependencies_parsed_at":"2024-07-31T15:10:22.270Z","dependency_job_id":null,"html_url":"https://github.com/ElliottLandsborough/dog-ceo-api","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ElliottLandsborough%2Fdog-ceo-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ElliottLandsborough%2Fdog-ceo-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ElliottLandsborough%2Fdog-ceo-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ElliottLandsborough%2Fdog-ceo-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ElliottLandsborough","download_url":"https://codeload.github.com/ElliottLandsborough/dog-ceo-api/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245603991,"owners_count":20642920,"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":["api","breed","composer","dog","dogs","json","php","symfony","xml"],"created_at":"2024-07-31T15:01:28.258Z","updated_at":"2025-03-26T06:31:57.868Z","avatar_url":"https://github.com/ElliottLandsborough.png","language":"PHP","funding_links":[],"categories":["PHP"],"sub_categories":[],"readme":"# Dog CEO API\n\n[![Code Coverage](https://codecov.io/gh/ElliottLandsborough/dog-ceo-api/branch/master/graph/badge.svg)](https://codecov.io/gh/ElliottLandsborough/dog-ceo-api)\n[![CircleCI](https://circleci.com/gh/ElliottLandsborough/dog-ceo-api.svg?style=svg)](https://circleci.com/gh/ElliottLandsborough/dog-ceo-api)\n[![Code Style](https://github.styleci.io/repos/97956282/shield?style=flat\u0026branch=master)](https://github.styleci.io/repos/97956282)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/28e7bd35f2fe4d42a19aec5f705c5024)](https://www.codacy.com/app/ElliottLandsborough/dog-ceo-api?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=ElliottLandsborough/dog-ceo-api\u0026utm_campaign=Badge_Grade)\n\n## Info\n\n- To add your own images submit a pull request to https://github.com/jigsawpieces/dog-api-images\n- API requests are cached from lambda https://github.com/ElliottLandsborough/dog-ceo-api-golang\n\n## Examples\n\n- Vanilla JS: https://codepen.io/elliottlan/pen/MNEWNx\n- Jquery: https://codepen.io/elliottlan/pen/KOXKLG\n- Flutter: https://github.com/LIVELUCKY/dogs\n- Node.js: https://github.com/mrbrunelli/dog-time-decorator\n\n## Stats\n\n![Screenshot of statistics page](https://github.com/ElliottLandsborough/dog-ceo-api/blob/master/stats.png?raw=true)\n\n## Dependencies\n\n- php 8.1+\n- Symfony 6\n- modules\n- composer\n- run './bin/phpunit' for unit tests (composer dump-env test)\n\n```bash\n$ composer check-platform-reqs\nChecking platform requirements for packages in the vendor dir\ncomposer-plugin-api  2.3.0     success                                       \ncomposer-runtime-api 2.2.2     success                                       \next-ctype            8.1.12    success                                       \next-dom              20031129  success                                       \next-filter           8.1.12    success                                       \next-iconv            8.1.12    success                                       \next-json             8.1.12    success                                       \next-libxml           8.1.12    success                                       \next-mbstring         *         success provided by symfony/polyfill-mbstring \next-phar             8.1.12    success                                       \next-tokenizer        8.1.12    success                                       \next-xml              8.1.12    success                                       \next-xmlwriter        8.1.12    success                                       \next-yaml             2.2.2     success                                       \nphp                  8.1.12    success\n```\n\n## Setup\n\n- Clone repo\n- composer install\n- cd public\n- php -S 127.0.0.1:6969\n\n## .env.local\n\n```\nDOG_CEO_CACHE_KEY=\"something-really-secure-lol\"\nDOG_CEO_LAMBDA_URI=https://example.execute-api.us-east-1.amazonaws.com/dev/\n```\n\n## Cache clear:\n\n```\n$ curl -X GET http://127.0.0.1:8000/cache-clear -H 'auth-key: something-really-secure-lol'\n```\n\n## Endpoints\n\n#### /breeds/list/all\n\nList all breed names including sub breeds.\n\n#### /breeds/list/all/random\n\nGet random breed including any sub breeds.\n\n#### /breeds/list/all/random/10\n\nGet 10 random breeds including any sub breeds.\n\n#### /breeds/list\n\nList all master breed names.\n\n#### /breeds/list/random\n\nGet single random master breed.\n\n#### /breeds/list/random/10\n\nGet 10 random master breeds.\n\n#### /breed/{breed}/list\n\nList sub breeds.\n\n#### /breed/{breed}/list/random\n\nList random sub breed.\n\n#### /breed/{breed}/list/random/10\n\nList 10 random sub breeds.\n\n#### /breed/{breed}\n\nGet master breed info (data is incomplete, see content folder).\n\n#### /breed/{breed}/{breed2}\n\nGet sub breed info (data is incomplete, see content folder).\n\n#### /breeds/image/random\n\nRandom image from any breed.\n\n#### /breeds/image/random/3\n\nGet 3 random images from any breed (max. 50)\n\n#### /breed/{breed}/images\n\nGet all breed images.\n\n#### /breed/{breed}/images/random\n\nGet random image from a breed (and all its sub-breeds).\n\n#### /breed/{breed}/images/random/4\n\nGet 4 random images from a breed (and all its sub-breeds).\n\n#### /breed/{breed}/{breed2}/images\n\nGet all images from a sub breed.\n\n#### /breed/{breed}/{breed2}/images/random\n\nGet random image from a sub breed.\n\n#### /breed/{breed}/{breed2}/images/random/5\n\nGet 5 random images from a sub breed.\n\n## Beta/Unfinished Endpoints\n\nThese endpoints might change in the future...\n\n### Alt tags (beta)\n\n```\nhttps://dog.ceo/api/breeds/image/random/alt\nhttps://dog.ceo/api/breeds/image/random/1/alt\nhttps://dog.ceo/api/breeds/image/random/9/alt\n```\n\n```\nhttps://dog.ceo/api/breed/hound/images/alt\nhttps://dog.ceo/api/breed/hound/images/random/1/alt\nhttps://dog.ceo/api/breed/hound/images/random/9/alt\n```\n\n```\nhttps://dog.ceo/api/breed/hound/afghan/images/alt\nhttps://dog.ceo/api/breed/hound/afghan/images/random/alt\n```\n\n### XML Responses (beta, unfinished)\n\nAdd 'Content-Type' request header containing 'application/xml' to any endpoint.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FElliottLandsborough%2Fdog-ceo-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FElliottLandsborough%2Fdog-ceo-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FElliottLandsborough%2Fdog-ceo-api/lists"}