/W.BE_YemekTarifleriAPI

Yemek Tariflerini Ekleyen, Güncelleyen, Silen ve Sonuçları JSON Formatında Sunan API

GNU General Public License v3.0GPL-3.0

Yemek Tarifleri API

Logo

İçindekiler

-----------------------------------------------------

API Hakkında

Bu repo, PHP diliyle geliştirilmiş olan yemek tariflerini sunan API'nin dokümantasyonunu içerir.

Bu API, yemek tariflerini ekleme, güncelleme, silme ve listeleme işlemleri yapmaya olanak tanır.

Tarifler, tarifin eklenme tarihi ve ekleyen API anahtarı kaydedilir. Ayrıca tarif ekleme ve güncelleme isteklerinde karakter sayısı denetlenir.

title için maksimum 60 karakter

ingredients için maksimum 300 karakter

instructions için maksimum 1200 karakter

API anahtarları aylık maksimum 100 istek ile sınırlandırılmıştır. API anahtarı sahibi olabilmek veya ayrıcalıklı kullanıcı statüsüne geçip sınırsız istek hakkına sahip olabilmek için iletişime geçilmesi gerekilmektedir.

-----------------------------------------------------

Dokümantasyon

Base URL: https://toktasoft.com/api/recipes.php

API, dört ana işlevi yerine getiren GET, POST, PUT ve DELETE türündeki HTTP isteklerini destekler.

GET İsteği

Parametre

Zorunlu Mu?

Açıklama

api_key

evet

Geçerli bir API anahtarı.

id

hayır

Belirli bir tarifin ID'si. Belirtilmezse tüm tarifler listelenir.

POST İsteği

Yeni tarif eklemek için kullanılır.

Parametre

Zorunlu Mu?

Açıklama

api_key

evet

Geçerli bir API anahtarı.

Gönderilen JSON formatındaki veriler:

{
  "title": "Tarifin başlığı",
  "ingredients": "Tarifin malzemeleri",
  "instructions": "Tarifin yapılış talimatları"
}

PUT İsteği

Mevcut bir tarifi güncellemek için kullanılır.

Parametre

Zorunlu Mu?

Açıklama

api_key

evet

Geçerli bir API anahtarı.

Gönderilen JSON formatındaki veriler:

{
  "id": 1,
  "title": "Yeni başlık",
  "ingredients": "Yeni malzemeler",
  "instructions": "Yeni yapılış talimatları"
}

DELETE İsteği

Mevcut bir tarifi silmek için kullanılır.

Parametre

Zorunlu Mu?

Açıklama

api_key

evet

Geçerli bir API anahtarı.

id

evet

Silinecek tarifin ID'si.

-----------------------------------------------------

İstek Örnekleri

İstek örnekleri curl komut satırı aracı kullanılarak gösterilmiştir.

GET Örnekleri

Bütün yemek tarifleri

curl -X GET "http://toktasoft/api/recipes.php?api_key=myapikey"
{
    "success": true,
    "result": [
        {
            "id": "1",
            "title": "Spaghetti",
            "ingredients": "Makarna, Domates Sosu, Peynir",
            "instructions": "Makarnayı haşlayın, sosu ekleyin ve peynirle servis edin.",
            "created_at": "2024-07-11 08:04:14",
            "updated_at": "2024-07-11 08:04:14"
        },
        {
            "id": "2",
            "title": "Salata",
            "ingredients": "Marul, Domates, Salatalık, Zeytinyağı, Limon",
            "instructions": "Tüm malzemeleri doğrayın ve karıştırın.",
            "created_at": "2024-07-11 13:16:21",
            "updated_at": "2024-07-11 19:34:47"
        }
    ],
    "monthly_request_count": 52
}

Belirli bir yemek tarifi

curl -X GET "http://toktasoft/api/recipes.php?api_key=myapikey&id=1"
{
    "success": true,
    "result": {
        "id": 1,
        "title": "Spaghetti",
        "ingredients": "Makarna, Domates Sosu, Peynir",
        "instructions": "Makarnayı haşlayın, sosu ekleyin ve peynirle servis edin.",
        "created_at": "2024-07-11 08:04:14",
        "updated_at": "2024-07-11 08:04:14"
    },
    "monthly_request_count": 68
}

Belirli bir yemek tarifi

Olmayan bir yemek tarifi için istek atıldığında hata döndürülür.

curl -X GET "http://toktasoft/api/recipes.php?api_key=myapikey&id=100"
{
    "success": false,
    "error": "Tarif bulunamadı.",
    "monthly_request_count": 102
}

Belirli bir yemek tarifi

Aylık istek sınırına ulaşılmışsa hata döndürülür.

curl -X GET "http://toktasoft/api/recipes.php?api_key=myapikey&id=1"
{
    "success": false,
    "error": "Aylık istek sınırına ulaşıldı.",
    "monthly_request_count": 100
}

POST Örnekleri

Yeni bir yemek tarifi ekleme

curl -X POST "https://toktasoft.com/api/recipes.php?api_key=myapikey" -H "Content-Type: application/json" -d '{
  "title": "Omlet",
  "ingredients": "Yumurta, Tuz, Karabiber",
  "instructions": "Yumurtaları çırpın, tuz ve karabiber ekleyin, tavada pişirin."
}'
{
  "success": true,
  "message": "Yemek tarifi başarıyla eklendi.",
  "monthly_request_count": 92
}

Yeni bir yemek tarifi ekleme

Alanlar boş bırakılırsa yada eksik gönderilirse hata döndürülür.

curl -X POST "https://toktasoft.com/api/recipes.php?api_key=myapikey" -H "Content-Type: application/json" -d '{
  "title": "",
  "ingredients": "Yumurta, Tuz, Karabiber",
  "instructions": "Yumurtaları çırpın, tuz ve karabiber ekleyin, tavada pişirin."
}'
{
    "success": false,
    "error": "Eksik veya boş parametreler.",
    "monthly_request_count": 304
}

PUT Örnekleri

Mevcut bir yemek tarifini güncelleme

curl -X PUT "https://toktasoft.com/api/recipes.php?api_key=myapikey" -H "Content-Type: application/json" -d '{
  "id": 1,
  "title": "Güncellenmiş Spaghetti",
  "ingredients": "Makarna, Domates Sosu, Peynir",
  "instructions": "Makarnayı haşlayın, sosu ekleyin ve peynirle servis edin."
}'
{
  "success": true,
  "message": "Yemek tarifi başarıyla güncellendi.",
  "monthly_request_count": 107
}

Mevcut bir yemek tarifini güncelleme

Olmayan yada bir yemek tarifi güncellenmeye çalışılırsa hata döndürülür.

curl -X PUT "https://toktasoft.com/api/recipes.php?api_key=myapikey" -H "Content-Type: application/json" -d '{
  "id": 999,
  "title": "Güncellenmiş Spaghetti",
  "ingredients": "Makarna, Domates Sosu, Peynir",
  "instructions": "Makarnayı haşlayın, sosu ekleyin ve peynirle servis edin."
}'
{
    "success": false,
    "error": "Böyle bir tarif bulunamadı.",
    "monthly_request_count": 60
}

Mevcut bir yemek tarifini güncelleme

Güncellenmek istenen yemek tarifinin ilgili alanları boş bırakılırsa yada eksik gönderilirse hata döndürülür.

curl -X PUT "https://toktasoft.com/api/recipes.php?api_key=myapikey" -H "Content-Type: application/json" -d '{
  "id": 1,
  "title": "Güncellenmiş Spaghetti",
  "ingredients": "Makarna, Domates Sosu, Peynir"
}'
{
    "success": false,
    "error": "Eksik veya boş parametreler.",
    "monthly_request_count": 341
}

DELETE Örnekleri

Mevcut bir yemek tarifini silme:

curl -X DELETE "https://toktasoft.com/recipes.php?api_key=myapikey&id=1"
{
  "success": true,
  "message": "Yemek tarifi başarıyla silindi.",
  "monthly_request_count": 207
}

-----------------------------------------------------

Repo Visitor Counter API

Buy Me a Coffee

-----------------------------------------------------

Lisans

Copyright 2024 Mustafa TOKTAŞ

Licensed under the GNU General Public License v3.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.gnu.org/licenses/gpl-3.0.html

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

-----------------------------------------------------

İletişim

Mail Telegram LinkedIn